Merge commit 'v2.6.39' into 20110526
[linux-2.6.git] / arch / arm / mach-msm / Kconfig
index b9fd5c5..1516896 100644 (file)
@@ -1,7 +1,168 @@
 if ARCH_MSM
 
-comment "MSM Board Type"
+choice
+       prompt "Qualcomm MSM SoC Type"
+       default ARCH_MSM7X00A
+
+config ARCH_MSM7X00A
+       bool "MSM7x00A / MSM7x01A"
+       select MACH_TROUT if !MACH_HALIBUT
+       select ARCH_MSM_ARM11
+       select MSM_SMD
+       select MSM_SMD_PKG3
+       select CPU_V6
+       select MSM_PROC_COMM
+       select HAS_MSM_DEBUG_UART_PHYS
+
+config ARCH_MSM7X30
+       bool "MSM7x30"
+       select MACH_MSM7X30_SURF # if !
+       select ARCH_MSM_SCORPION
+       select MSM_SMD
+       select MSM_VIC
+       select CPU_V7
+       select MSM_GPIOMUX
+       select MSM_PROC_COMM
+       select HAS_MSM_DEBUG_UART_PHYS
+
+config ARCH_QSD8X50
+       bool "QSD8X50"
+       select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5
+       select ARCH_MSM_SCORPION
+       select MSM_SMD
+       select MSM_VIC
+       select CPU_V7
+       select MSM_GPIOMUX
+       select MSM_PROC_COMM
+       select HAS_MSM_DEBUG_UART_PHYS
+
+config ARCH_MSM8X60
+       bool "MSM8X60"
+       select MACH_MSM8X60_SURF if (!MACH_MSM8X60_RUMI3 && !MACH_MSM8X60_SIM \
+                                 && !MACH_MSM8X60_FFA)
+       select ARCH_MSM_SCORPIONMP
+       select ARM_GIC
+       select CPU_V7
+       select MSM_V2_TLMM
+       select MSM_GPIOMUX
+       select MSM_SCM if SMP
+
+config ARCH_MSM8960
+       bool "MSM8960"
+       select ARCH_MSM_SCORPIONMP
+       select MACH_MSM8960_SIM if (!MACH_MSM8960_RUMI3)
+       select ARM_GIC
+       select CPU_V7
+       select MSM_V2_TLMM
+       select MSM_GPIOMUX
+       select MSM_SCM if SMP
+
+endchoice
+
+config MSM_SOC_REV_A
+       bool
+config  ARCH_MSM_SCORPIONMP
+       bool
+
+config  ARCH_MSM_ARM11
+       bool
+config  ARCH_MSM_SCORPION
+       bool
+
+config HAS_MSM_DEBUG_UART_PHYS
+       bool
+
+config  MSM_VIC
+       bool
+
+menu "Qualcomm MSM Board Type"
+
+config MACH_HALIBUT
        depends on ARCH_MSM
+       depends on ARCH_MSM7X00A
+       bool "Halibut Board (QCT SURF7201A)"
+       help
+         Support for the Qualcomm SURF7201A eval board.
+
+config MACH_TROUT
+       depends on ARCH_MSM
+       depends on ARCH_MSM7X00A
+       bool "HTC Dream (aka trout)"
+       help
+         Support for the HTC Dream, T-Mobile G1, Android ADP1 devices.
+
+config MACH_MSM7X30_SURF
+       depends on ARCH_MSM7X30
+       bool "MSM7x30 SURF"
+       help
+         Support for the Qualcomm MSM7x30 SURF eval board.
+
+config MACH_QSD8X50_SURF
+       depends on ARCH_QSD8X50
+       bool "QSD8x50 SURF"
+       help
+         Support for the Qualcomm QSD8x50 SURF eval board.
+
+config MACH_QSD8X50A_ST1_5
+       depends on ARCH_QSD8X50
+       select MSM_SOC_REV_A
+       bool "QSD8x50A ST1.5"
+       help
+         Support for the Qualcomm ST1.5.
+
+config MACH_MSM8X60_RUMI3
+       depends on ARCH_MSM8X60
+       bool "MSM8x60 RUMI3"
+       help
+         Support for the Qualcomm MSM8x60 RUMI3 emulator.
+
+config MACH_MSM8X60_SURF
+       depends on ARCH_MSM8X60
+       bool "MSM8x60 SURF"
+       help
+         Support for the Qualcomm MSM8x60 SURF eval board.
+
+config MACH_MSM8X60_SIM
+       depends on ARCH_MSM8X60
+       bool "MSM8x60 Simulator"
+       help
+         Support for the Qualcomm MSM8x60 simulator.
+
+config MACH_MSM8X60_FFA
+       depends on ARCH_MSM8X60
+       bool "MSM8x60 FFA"
+       help
+         Support for the Qualcomm MSM8x60 FFA eval board.
+
+config MACH_MSM8960_SIM
+       depends on ARCH_MSM8960
+       bool "MSM8960 Simulator"
+       help
+         Support for the Qualcomm MSM8960 simulator.
+
+config MACH_MSM8960_RUMI3
+       depends on ARCH_MSM8960
+       bool "MSM8960 RUMI3"
+       help
+         Support for the Qualcomm MSM8960 RUMI3 emulator.
+
+endmenu
+
+config MSM_IOMMU
+       bool "MSM IOMMU Support"
+       depends on ARCH_MSM8X60 || ARCH_MSM8960
+       select IOMMU_API
+       default n
+       help
+         Support for the IOMMUs found on certain Qualcomm SOCs.
+         These IOMMUs allow virtualization of the address space used by most
+         cores within the multimedia subsystem.
+
+         If unsure, say N here.
+
+config IOMMU_PGTABLES_L2
+       def_bool y
+       depends on MSM_IOMMU && MMU && SMP && CPU_DCACHE_DISABLE=n
 
 config MSM_DEBUG_UART
        int
@@ -9,6 +170,7 @@ config MSM_DEBUG_UART
        default 2 if MSM_DEBUG_UART2
        default 3 if MSM_DEBUG_UART3
 
+if HAS_MSM_DEBUG_UART_PHYS
 choice
        prompt "Debug UART"
 
@@ -26,20 +188,26 @@ choice
        config MSM_DEBUG_UART3
                bool "UART3"
 endchoice
+endif
 
-config MACH_HALIBUT
-       depends on ARCH_MSM
-       select CPU_V6
-       default y
-       bool "Halibut Board (QCT SURF7201A)"
-       help
-         Support for the Qualcomm SURF7201A eval board.
+config MSM_SMD_PKG3
+       bool
 
-config MACH_TROUT
-       select CPU_V6
-       default y
-       bool "HTC Dream (aka trout)"
-       help
-         Support for the HTC Dream, T-Mobile G1, Android ADP1 devices.
+config MSM_PROC_COMM
+       bool
+
+config MSM_SMD
+       bool
+
+config MSM_GPIOMUX
+       bool
+
+config MSM_V2_TLMM
+       bool
+
+config IOMMU_API
+       bool
 
+config MSM_SCM
+       bool
 endif