blob: 989d80ef5286b2aa8a7e804efeb1f407e7e99c46 [file] [log] [blame]
Brian Swetland1637de02008-09-09 07:13:33 -07001if ARCH_MSM
Brian Swetland9e73c842007-11-26 04:12:13 -08002
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -07003menu "MSM SoC Type"
Daniel Walkerbf83de42010-03-16 16:29:44 -07004
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07005config ARCH_MSM7X01A
Daniel Walkerbf83de42010-03-16 16:29:44 -07006 bool "MSM7x00A / MSM7x01A"
7 select ARCH_MSM_ARM11
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07008 select MSM_VIC
Daniel Walkerbf83de42010-03-16 16:29:44 -07009 select CPU_V6
David Brown74d10d72011-05-16 13:57:39 -070010 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070011 select MSM_REMOTE_SPINLOCK_SWP
12
13config ARCH_MSM7X25
14 bool "MSM7x25"
15 select ARCH_MSM_ARM11
16 select MSM_VIC
17 select CPU_V6
Steve Mucklef132c6c2012-06-06 18:30:57 -070018 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070019 select MSM_REMOTE_SPINLOCK_SWP
Taniya Dasbe561a02011-10-12 09:53:11 +053020 select MULTI_IRQ_HANDLER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070021
22config ARCH_MSM7X27
23 bool "MSM7x27"
24 select ARCH_MSM_ARM11 if MSM_SOC_REV_NONE
Trilok Soni7ff06e02012-10-15 01:05:24 +053025 select ARCH_HAS_BARRIERS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070026 select ARCH_MSM_CORTEX_A5 if MSM_SOC_REV_A
27 select MSM_VIC
28 select CPU_V6 if MSM_SOC_REV_NONE
29 select CPU_V7 if MSM_SOC_REV_A
Steve Mucklef132c6c2012-06-06 18:30:57 -070030 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070031 select MSM_REMOTE_SPINLOCK_SWP if MSM_SOC_REV_NONE
32 select MSM_GPIOMUX
33 select REGULATOR
Taniya Dasbe561a02011-10-12 09:53:11 +053034 select MULTI_IRQ_HANDLER
Pankaj Kumar75c86fd2011-10-01 18:51:09 +053035 select MSM_PROC_COMM_REGULATOR
Laura Abbott1fbd2e62011-12-18 10:26:46 -080036 select CLEANCACHE
37 select QCACHE
Matt Wagantall88b86312012-01-31 16:53:03 -080038 select MSM_PM2 if PM
Krishna Vankae2922052012-03-02 09:59:12 +053039 select MSM_RUN_QUEUE_STATS if MSM_SOC_REV_A
Taniya Dasd4c39f92012-05-14 17:41:49 +053040 select DONT_MAP_HOLE_AFTER_MEMBANK0
Trilok Sonib856ab92012-06-26 14:33:28 +053041 select MIGHT_HAVE_CACHE_L2X0
Taniya Dascd1d0232012-07-03 17:50:47 +053042 select MSM_MODEM_RESTART
Daniel Walkerbf83de42010-03-16 16:29:44 -070043
Daniel Walker7b521612010-05-06 12:44:57 -070044config ARCH_MSM7X30
45 bool "MSM7x30"
46 select ARCH_MSM_SCORPION
Daniel Walker7b521612010-05-06 12:44:57 -070047 select MSM_VIC
48 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070049 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070050 select MSM_REMOTE_SPINLOCK_DEKKERS
51 select ARCH_SPARSEMEM_ENABLE
Laura Abbott78593b52011-09-26 18:48:14 -070052 select ARCH_HAS_HOLES_MEMORYMODEL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070053 select MEMORY_HOTPLUG
54 select MEMORY_HOTREMOVE
Bryan Huntsmanea439642011-11-23 12:34:05 -080055 select ARCH_ENABLE_MEMORY_HOTPLUG
56 select ARCH_ENABLE_MEMORY_HOTREMOVE
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070057 select MIGRATION
58 select ARCH_MEMORY_PROBE
59 select ARCH_MEMORY_REMOVE
Gregory Beanab78cde2010-09-01 16:26:12 -070060 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070061 select RESERVE_FIRST_PAGE
62 select MSM_DALRPC
63 select MSM_SPM_V1
64 select REGULATOR
Justin Paupore637a25d2011-07-14 17:11:04 -070065 select MSM_PROC_COMM_REGULATOR
Taniya Dasbae99fb2011-10-12 09:55:13 +053066 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -080067 select MSM_PM2 if PM
Chintan Pandyabb021762012-06-21 15:03:29 +053068 select HOLES_IN_ZONE if SPARSEMEM
Taniya Dascd1d0232012-07-03 17:50:47 +053069 select MSM_MODEM_RESTART
Chintan Pandya62a2f7c2012-10-30 12:00:40 +053070 select ARM_HAS_SG_CHAIN
Daniel Walker7b521612010-05-06 12:44:57 -070071
Daniel Walker4ad15e62010-05-06 13:54:17 -070072config ARCH_QSD8X50
73 bool "QSD8X50"
74 select ARCH_MSM_SCORPION
Daniel Walker4ad15e62010-05-06 13:54:17 -070075 select MSM_VIC
76 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070077 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070078 select MSM_REMOTE_SPINLOCK_LDREX
79 select CPU_USE_DOMAINS
80 select EMULATE_DOMAIN_MANAGER_V7
Gregory Beanab78cde2010-09-01 16:26:12 -070081 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070082 select MSM_DALRPC
Matt Wagantall88b86312012-01-31 16:53:03 -080083 select MSM_PM2 if PM
Taniya Dascd1d0232012-07-03 17:50:47 +053084 select MSM_MODEM_RESTART
Daniel Walker46fe5f22010-08-18 11:00:25 -070085
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070086config ARCH_MSM8X60
87 bool "MSM8X60"
Jeff Ohlsteine14411d2010-11-30 13:06:36 -080088 select ARCH_MSM_SCORPIONMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070089 select SMP_PARALLEL_START if SMP
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070090 select ARM_GIC
91 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070092 select MSM_REMOTE_SPINLOCK_LDREX
93 select ARCH_REQUIRE_GPIOLIB
94 select MSM_ADM3
95 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -080096 select MSM_RPM_REGULATOR
David Brown1a5ab4b2011-05-16 15:53:38 -070097 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070098 select MSM_PIL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070099 select ARCH_HAS_CPU_IDLE_WAIT
100 select MSM_DIRECT_SCLK_ACCESS
101 select MSM_RPM
102 select MSM_XO
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700103 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700104 select MSM_BUS_SCALING
105 select MSM_SECURE_IO
106 select MSM_DALRPC
107 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700108 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700109 select MSM_NATIVE_RESTART
110 select ARCH_INLINE_SPIN_TRYLOCK
111 select ARCH_INLINE_SPIN_TRYLOCK_BH
112 select ARCH_INLINE_SPIN_LOCK
113 select ARCH_INLINE_SPIN_LOCK_BH
114 select ARCH_INLINE_SPIN_LOCK_IRQ
115 select ARCH_INLINE_SPIN_LOCK_IRQSAVE
116 select ARCH_INLINE_SPIN_UNLOCK
117 select ARCH_INLINE_SPIN_UNLOCK_BH
118 select ARCH_INLINE_SPIN_UNLOCK_IRQ
119 select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
120 select ARCH_INLINE_READ_TRYLOCK
121 select ARCH_INLINE_READ_LOCK
122 select ARCH_INLINE_READ_LOCK_BH
123 select ARCH_INLINE_READ_LOCK_IRQ
124 select ARCH_INLINE_READ_LOCK_IRQSAVE
125 select ARCH_INLINE_READ_UNLOCK
126 select ARCH_INLINE_READ_UNLOCK_BH
127 select ARCH_INLINE_READ_UNLOCK_IRQ
128 select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
129 select ARCH_INLINE_WRITE_TRYLOCK
130 select ARCH_INLINE_WRITE_LOCK
131 select ARCH_INLINE_WRITE_LOCK_BH
132 select ARCH_INLINE_WRITE_LOCK_IRQ
133 select ARCH_INLINE_WRITE_LOCK_IRQSAVE
134 select ARCH_INLINE_WRITE_UNLOCK
135 select ARCH_INLINE_WRITE_UNLOCK_BH
136 select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
137 select CPU_HAS_L2_PMU
138 select MSM_SPM_V1
Stephen Boyd2a1eb582010-08-27 10:01:23 -0700139 select MSM_SCM if SMP
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530140 select MULTI_IRQ_HANDLER
Laura Abbott46505f62011-11-02 18:06:55 -0700141 select MSM_MULTIMEDIA_USE_ION
Matt Wagantall88b86312012-01-31 16:53:03 -0800142 select MSM_PM8X60 if PM
Krishna Vankae2922052012-03-02 09:59:12 +0530143 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800144 select ARM_HAS_SG_CHAIN
Sidipotu Ashokbf84d4d2012-11-06 17:13:28 +0530145 select USE_DEV_CTRL_VOLUME
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700146
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800147config ARCH_MSM8960
148 bool "MSM8960"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700149 select ARCH_MSM_KRAITMP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800150 select ARM_GIC
151 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700152 select GPIO_MSM_V2
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800153 select MSM_GPIOMUX
154 select MSM_SCM if SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700155 select MSM_DIRECT_SCLK_ACCESS
156 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -0800157 select MSM_RPM_REGULATOR
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700158 select MSM_RPM
159 select MSM_XO
160 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700161 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700162 select MSM_PIL
163 select MSM_AUDIO_QDSP6 if SND_SOC
164 select CPU_HAS_L2_PMU
165 select MSM_SPM_V2
166 select MSM_L2_SPM
167 select MSM_NATIVE_RESTART
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700168 select DONT_MAP_HOLE_AFTER_MEMBANK0
169 select MSM_REMOTE_SPINLOCK_SFPB
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700170 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basseld4d82c92011-12-07 09:52:49 -0800171 select CLEANCACHE
172 select QCACHE
Laura Abbott6d61a912011-10-27 16:44:14 -0700173 select MSM_MULTIMEDIA_USE_ION
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530174 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800175 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700176 select HOLES_IN_ZONE if SPARSEMEM
Krishna Vankae2922052012-03-02 09:59:12 +0530177 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800178 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700179 select MSM_KRAIT_WFE_FIXUP
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200180 select MSM_ULTRASOUND_A
Olav Haugan5e728722012-11-05 17:45:26 -0800181 select MSM_IOMMU_GPU_SYNC
Greg Reidb1d240a2012-10-12 12:20:31 -0400182 select GENERIC_TIME_VSYSCALL
183 select USE_USER_ACCESSIBLE_TIMERS
184 select ARM_USE_USER_ACCESSIBLE_TIMERS
185 select MSM_USE_USER_ACCESSIBLE_TIMERS
Jay Chokshi06e444f2012-12-06 20:48:23 -0800186 select MSM_CPU_PWRCTL
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800187
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700188config ARCH_MSM8930
189 bool "MSM8930"
190 select ARCH_MSM_KRAITMP
191 select ARM_GIC
192 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700193 select GPIO_MSM_V2
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700194 select MSM_GPIOMUX
195 select MSM_SCM if SMP
196 select MSM_DIRECT_SCLK_ACCESS
197 select REGULATOR
David Collins5779cea2012-01-05 15:09:21 -0800198 select MSM_RPM_REGULATOR
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700199 select MSM_RPM
200 select MSM_XO
201 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700202 select MSM_QDSP6_CODECS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700203 select MSM_PIL
204 select MSM_AUDIO_QDSP6 if SND_SOC
205 select CPU_HAS_L2_PMU
206 select MSM_SPM_V2
207 select MSM_L2_SPM
208 select MSM_NATIVE_RESTART
209 select DONT_MAP_HOLE_AFTER_MEMBANK0
Eric Holmbergeab10732011-09-23 19:44:43 -0600210 select MSM_REMOTE_SPINLOCK_SFPB
Larry Basself74479e2011-09-08 11:07:52 -0700211 select ARCH_HAS_HOLES_MEMORYMODEL
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200212 select MSM_ULTRASOUND_A
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530213 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800214 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700215 select HOLES_IN_ZONE if SPARSEMEM
Laura Abbottb14ed962012-01-30 14:18:08 -0800216 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700217 select MSM_KRAIT_WFE_FIXUP
Olav Haugan5e728722012-11-05 17:45:26 -0800218 select MSM_IOMMU_GPU_SYNC
Greg Reidb1d240a2012-10-12 12:20:31 -0400219 select GENERIC_TIME_VSYSCALL
220 select USE_USER_ACCESSIBLE_TIMERS
221 select ARM_USE_USER_ACCESSIBLE_TIMERS
222 select MSM_USE_USER_ACCESSIBLE_TIMERS
Jay Chokshi06e444f2012-12-06 20:48:23 -0800223 select MSM_CPU_PWRCTL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700224
225config ARCH_APQ8064
226 bool "APQ8064"
227 select ARCH_MSM_KRAITMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700228 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700229 select ARM_GIC
230 select CPU_V7
231 select MSM_SCM if SMP
Joel King4ebccc62011-07-22 09:43:22 -0700232 select MSM_GPIOMUX
Eric Holmberg40d21882011-09-27 09:42:03 -0600233 select MSM_REMOTE_SPINLOCK_SFPB
Swaminathan Sathappan47e5d932011-12-05 14:48:07 -0800234 select MSM_PIL
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800235 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700236 select MSM_QDSP6_CODECS
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800237 select MSM_AUDIO_QDSP6 if SND_SOC
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530238 select MULTI_IRQ_HANDLER
Praveen Chidambaram78499012011-11-01 17:15:17 -0600239 select MSM_RPM
240 select MSM_SPM_V2
241 select MSM_L2_SPM
Matt Wagantall88b86312012-01-31 16:53:03 -0800242 select MSM_PM8X60 if PM
Neil Leeder814d3d32012-01-19 17:21:43 -0500243 select CPU_HAS_L2_PMU
Laura Abbott085dd202012-03-30 14:02:34 -0700244 select HOLES_IN_ZONE if SPARSEMEM
Larry Bassel67b921d2012-04-06 10:23:27 -0700245 select CLEANCACHE
246 select QCACHE
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -0600247 select MIGHT_HAVE_PCI
248 select ARCH_SUPPORTS_MSI
Laura Abbottb14ed962012-01-30 14:18:08 -0800249 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700250 select MSM_KRAIT_WFE_FIXUP
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200251 select MSM_ULTRASOUND_A
Olav Haugan5e728722012-11-05 17:45:26 -0800252 select MSM_IOMMU_GPU_SYNC
Greg Reidb1d240a2012-10-12 12:20:31 -0400253 select GENERIC_TIME_VSYSCALL
254 select USE_USER_ACCESSIBLE_TIMERS
255 select ARM_USE_USER_ACCESSIBLE_TIMERS
256 select MSM_USE_USER_ACCESSIBLE_TIMERS
Jay Chokshi06e444f2012-12-06 20:48:23 -0800257 select MSM_CPU_PWRCTL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700258
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700259config ARCH_MSM8974
260 bool "MSM8974"
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700261 select ARCH_MSM_KRAITMP
Sathish Ambley4149e842012-03-23 11:53:55 -0700262 select GPIO_MSM_V3
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700263 select ARM_GIC
264 select CPU_V7
265 select MSM_SCM if SMP
266 select MSM_GPIOMUX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530267 select MULTI_IRQ_HANDLER
Olav Hauganb800c8c2012-01-30 08:50:45 -0800268 select MSM_MULTIMEDIA_USE_ION
Matt Wagantallc2bbdc32012-03-21 19:44:50 -0700269 select MSM_PIL
Praveen Chidambaramaa9d52b2012-04-02 11:09:47 -0600270 select MSM_SPM_V2
271 select MSM_L2_SPM
Stepan Moskovchenkoa000d132012-08-14 21:05:14 -0700272 select MSM_NATIVE_RESTART
273 select MSM_RESTART_V2
Praveen Chidambaram85b7b282012-04-16 13:45:15 -0600274 select MSM_PM8X60 if PM
Steve Mucklef132c6c2012-06-06 18:30:57 -0700275 select MAY_HAVE_SPARSE_IRQ
276 select SPARSE_IRQ
Mahesh Sivasubramaniancb668712012-04-04 13:03:25 -0600277 select MSM_RPM_SMD
David Collinsc7642322012-04-04 10:19:12 -0700278 select REGULATOR
Joonwoo Park91d95462012-08-02 10:55:54 -0700279 select MSM_QDSP6_APRV2
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -0700280 select MSM_QDSP6V2_CODECS
281 select MSM_AUDIO_QDSP6V2 if SND_SOC
David Collins1c91ea72012-05-03 16:17:35 -0700282 select MSM_RPM_REGULATOR_SMD
Laura Abbottb14ed962012-01-30 14:18:08 -0800283 select ARM_HAS_SG_CHAIN
Karthik Parsha404fb8f2012-07-30 19:14:05 -0700284 select MSM_RUN_QUEUE_STATS
Neeti Desai92eab922012-10-22 15:14:48 -0700285 select MEMORY_HOLE_CARVEOUT
Priyanka Mathur1af9d4b2012-10-30 14:55:44 -0700286 select MSM_RPM_STATS_LOG
Karthikeyan Ramasubramanian1edce9e2012-11-08 18:26:10 -0700287 select QMI_ENCDEC
Neeti Desai1b2cb552012-11-01 21:57:36 -0700288 select DONT_MAP_HOLE_AFTER_MEMBANK0
Naveen Ramarajf56e9af2012-12-10 17:07:38 -0800289 select SENSORS_ADSP
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700290
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +0530291config ARCH_MPQ8092
292 bool "MPQ8092"
293 select ARCH_MSM_KRAITMP
294 select GPIO_MSM_V3
295 select ARM_GIC
296 select MULTI_IRQ_HANDLER
297 select CPU_V7
298 select MSM_GPIOMUX
299 select MAY_HAVE_SPARSE_IRQ
300 select SPARSE_IRQ
301 select MSM_NOPM
302
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700303config ARCH_FSM9XXX
304 bool "FSM9XXX"
305 select ARCH_MSM_SCORPION
306 select MSM_VIC
307 select CPU_V7
308 select MSM_REMOTE_SPINLOCK_LDREX
Steve Mucklef132c6c2012-06-06 18:30:57 -0700309 select GPIO_FSM9XXX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530310 select MULTI_IRQ_HANDLER
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -0800311 select MSM_DALRPC
Daniel Walker4ad15e62010-05-06 13:54:17 -0700312
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700313config ARCH_MSM9615
314 bool "MSM9615"
315 select ARM_GIC
Taniya Dasb241bd82012-03-19 17:58:06 +0530316 select GIC_SECURE
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700317 select ARCH_MSM_CORTEX_A5
318 select CPU_V7
Rohit Vaswani4307c842012-10-11 15:50:05 -0700319 select MIGHT_HAVE_CACHE_L2X0
Steve Mucklef132c6c2012-06-06 18:30:57 -0700320 select GPIO_MSM_V2
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700321 select MSM_GPIOMUX
Praveen Chidambaramab3b1c42011-08-25 08:44:05 -0600322 select MSM_RPM
Maheshkumar Sivasubramanian738b4582011-09-06 17:26:24 -0600323 select MSM_SPM_V2
Rohit Vaswanif688fa62011-10-13 18:13:10 -0700324 select MSM_NATIVE_RESTART
Matt Wagantall9274df92011-12-15 11:11:05 -0800325 select REGULATOR
326 select MSM_RPM_REGULATOR
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530327 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800328 select MSM_PM8X60 if PM
Vikram Mulukutla2021c002011-12-16 12:32:59 -0800329 select MSM_XO
Olav Haugane6a0acd2012-04-05 09:29:12 -0700330 select MSM_MULTIMEDIA_USE_ION
Shiv Maliyappanahalli9ec55e92012-01-09 14:44:59 -0800331 select MSM_QDSP6_APR
332 select MSM_AUDIO_QDSP6 if SND_SOC
Rohit Vaswaniead426f2012-01-05 20:24:52 -0800333 select FIQ
Laura Abbottb14ed962012-01-30 14:18:08 -0800334 select ARM_HAS_SG_CHAIN
Matt Wagantall9274df92011-12-15 11:11:05 -0800335
Taniya Das43bcdd62011-12-02 17:33:27 +0530336config ARCH_MSM8625
337 bool "MSM8625"
338 select ARCH_MSM_CORTEX_A5
339 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700340 select GPIO_MSM_V1
Taniya Das43bcdd62011-12-02 17:33:27 +0530341 select MSM_GPIOMUX
342 select ARM_GIC
343 select ARCH_MSM_CORTEXMP
344 select MULTI_IRQ_HANDLER
Trilok Soni3a453992012-03-06 18:46:22 +0530345 select ARM_TICKET_LOCKS
Krishna Vankae2922052012-03-02 09:59:12 +0530346 select MSM_RUN_QUEUE_STATS
Trilok Sonib856ab92012-06-26 14:33:28 +0530347 select MIGHT_HAVE_CACHE_L2X0
Chintan Pandya3544e742012-08-30 19:39:59 +0530348 select ARM_HAS_SG_CHAIN
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700349
350config ARCH_MSM9625
351 bool "MSM9625"
352 select ARM_GIC
Abhimanyu Kapur490d20c2012-06-22 17:34:20 -0700353 select MIGHT_HAVE_CACHE_L2X0
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700354 select ARCH_MSM_CORTEX_A5
355 select SMP
356 select MSM_SMP
357 select CPU_V7
Abhimanyu Kapur4bb38622012-10-16 19:07:48 -0700358 select MSM_SCM if SMP
Jin Hong690e3352012-05-02 09:25:05 -0700359 select MSM_GPIOMUX
Girish Mahadevanf1c20a42012-09-19 11:44:36 -0600360 select MSM_RPM_SMD
Abhimanyu Kapur46e5e2b2012-10-02 20:45:37 -0700361 select MSM_NATIVE_RESTART
362 select MSM_RESTART_V2
Girish Mahadevan6e419562012-09-19 12:50:05 -0600363 select MSM_SPM_V2
364 select MSM_PM8X60 if PM
365 select MSM_SCM if SMP
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700366 select MULTI_IRQ_HANDLER
Rohit Vaswani61cf6ef2012-07-27 13:51:48 -0700367 select GPIO_MSM_V3
David Collins1cc6e402012-09-17 16:02:24 -0700368 select MAY_HAVE_SPARSE_IRQ
369 select SPARSE_IRQ
Mitchel Humpherys92e9b8a2012-10-08 18:12:47 -0700370 select MSM_MULTIMEDIA_USE_ION
Girish Mahadevane3be9302012-11-07 16:21:52 -0700371 select MSM_RPM_STATS_LOG
Venkat Sudhir0620e982012-11-15 16:04:36 -0800372 select MSM_QDSP6_APRV2
373 select MSM_QDSP6V2_CODECS
374 select MSM_AUDIO_QDSP6V2 if SND_SOC
Ashwin Chaugule8b459cc2012-11-26 15:20:54 -0500375 select CPU_HAS_L2_PMU
Syed Rameez Mustafa9232e5b2012-09-21 18:22:49 -0700376
377config ARCH_MSM8910
378 bool "MSM8910"
379 select ARM_GIC
380 select GIC_SECURE
Syed Rameez Mustafa9232e5b2012-09-21 18:22:49 -0700381 select ARCH_MSM_CORTEXMP
382 select CPU_V7
383 select MSM_SCM if SMP
384 select MAY_HAVE_SPARSE_IRQ
385 select SPARSE_IRQ
386 select MULTI_IRQ_HANDLER
387 select GPIO_MSM_V3
388 select MSM_GPIOMUX
Hanumant Singhe4271312012-10-24 13:27:57 -0700389 select MSM_NATIVE_RESTART
390 select MSM_RESTART_V2
Syed Rameez Mustafa9ee80102012-11-02 14:41:04 -0700391
392config ARCH_MSM8226
393 bool "MSM8226"
394 select ARM_GIC
395 select GIC_SECURE
Syed Rameez Mustafa9ee80102012-11-02 14:41:04 -0700396 select ARCH_MSM_CORTEXMP
397 select CPU_V7
398 select MSM_SCM if SMP
399 select MAY_HAVE_SPARSE_IRQ
400 select SPARSE_IRQ
401 select MULTI_IRQ_HANDLER
402 select GPIO_MSM_V3
403 select MSM_GPIOMUX
Syed Rameez Mustafaf1bdd712012-11-20 14:56:44 -0800404 select MSM_NATIVE_RESTART
405 select MSM_RESTART_V2
Bhalchandra Gajare4e08f632012-12-18 11:54:35 -0800406 select MSM_QDSP6_APRV2
407 select MSM_QDSP6V2_CODECS
408 select MSM_AUDIO_QDSP6V2 if SND_SOC
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -0700409endmenu
Daniel Walkerbf83de42010-03-16 16:29:44 -0700410
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700411choice
412 prompt "MSM SoC Revision"
413 default MSM_SOC_REV_NONE
414config MSM_SOC_REV_NONE
415 bool "N/A"
416 select EMULATE_DOMAIN_MANAGER_V7 if ARCH_QSD8X50
417 select VERIFY_PERMISSION_FAULT if ARCH_QSD8X50
Daniel Walkerbf83de42010-03-16 16:29:44 -0700418config MSM_SOC_REV_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700419 bool "Rev. A"
420 select ARCH_MSM7X27A if ARCH_MSM7X27
Daniel Walkerbf83de42010-03-16 16:29:44 -0700421endchoice
422
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700423config MSM_KRAIT_TBB_ABORT_HANDLER
424 bool "Krait TBB/TBH data abort handler"
425 depends on ARCH_MSM_KRAIT
426 depends on ARM_THUMB
427 help
428 Certain early samples of the Krait processor may generate data
429 aborts for TBB / TBH instructions that fail their condition code
430 checks. Enabling this option will ignore these erroneous data aborts,
431 at the expense of a very small performance penalty.
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800432
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700433 If unsure, say N.
Daniel Walkerbf83de42010-03-16 16:29:44 -0700434
435config ARCH_MSM_ARM11
436 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700437
Daniel Walkerbf83de42010-03-16 16:29:44 -0700438config ARCH_MSM_SCORPION
439 bool
440
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700441config ARCH_MSM_KRAIT
Daniel Walker46fe5f22010-08-18 11:00:25 -0700442 bool
Stephen Boyd51cabbe2011-12-02 13:28:56 -0800443 select ARM_L1_CACHE_SHIFT_6
Daniel Walker46fe5f22010-08-18 11:00:25 -0700444
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700445config MSM_SMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700446 select HAVE_SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700447 bool
448
449config ARCH_MSM_SCORPIONMP
450 select ARCH_MSM_SCORPION
451 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530452 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700453 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700454 bool
455
456config ARCH_MSM_KRAITMP
457 select ARCH_MSM_KRAIT
458 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530459 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700460 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700461 bool
462
Taniya Das43bcdd62011-12-02 17:33:27 +0530463config ARCH_MSM_CORTEXMP
464 select MSM_SMP
465 bool
466
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700467config MSM_KRAIT_WFE_FIXUP
468 bool
469
Stepan Moskovchenkoa000d132012-08-14 21:05:14 -0700470config MSM_RESTART_V2
471 bool
472
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700473config ARCH_MSM_CORTEX_A5
Bryan Huntsman239ef1e2011-11-23 15:09:13 -0800474 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700475
476config ARCH_MSM7X27A
477 bool
478 select MSM_DALRPC
Justin Pauporeb3a33b72011-08-23 15:30:32 -0700479 select MSM_PROC_COMM_REGULATOR
Taniya Das86e0e132011-10-19 11:32:00 +0530480 select MULTI_IRQ_HANDLER
Taniya Das43bcdd62011-12-02 17:33:27 +0530481 select ARM_GIC
482 select ARCH_MSM_CORTEXMP
Trilok Sonib856ab92012-06-26 14:33:28 +0530483 select MIGHT_HAVE_CACHE_L2X0
Chintan Pandya3544e742012-08-30 19:39:59 +0530484 select ARM_HAS_SG_CHAIN
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700485
Gregory Beanf9f3d312010-04-30 22:06:50 -0700486config MSM_VIC
487 bool
Daniel Walkerbf83de42010-03-16 16:29:44 -0700488
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700489config MSM_RPM
490 bool "Resource Power Manager"
491 select MSM_MPM
492
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600493config MSM_RPM_SMD
494 depends on MSM_SMD
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600495 select MSM_MPM_OF
496 bool "RPM driver using SMD protocol"
497 help
498 RPM is the dedicated hardware engine for managing shared SoC
499 resources. This config adds driver support for using SMD as a
500 transport layer communication with RPM hardware. It also selects
501 the MSM_MPM config that programs the MPM module to monitor interrupts
502 during sleep modes.
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600503
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700504config MSM_MPM
505 bool "Modem Power Manager"
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600506 help
507 MPM is a dedicated hardware resource responsible for entering and
508 waking up from a system wide low power mode. The MPM driver tracks
509 the wakeup interrupts and configures the MPM to monitor the wakeup
510 interrupts when going to a system wide sleep mode.
511
512config MSM_MPM_OF
513 bool "Modem Power Manager"
Subbaraman Narayanamurthy0b148fc2012-11-28 12:14:12 -0800514 depends on OF
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600515 help
516 MPM is a dedicated hardware resource responsible for entering and
517 waking up from a system wide low power mode. The MPM driver tracks
518 the wakeup interrupts and configures the MPM to monitor the wakeup
519 interrupts when going to a system wide sleep mode. This config option
520 enables the MPM driver that supports initialization from a device
521 tree
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700522
523config MSM_XO
524 bool
525
526config MSM_REMOTE_SPINLOCK_DEKKERS
527 bool
528config MSM_REMOTE_SPINLOCK_SWP
529 bool
530config MSM_REMOTE_SPINLOCK_LDREX
531 bool
Eric Holmbergeab10732011-09-23 19:44:43 -0600532config MSM_REMOTE_SPINLOCK_SFPB
533 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700534config MSM_ADM3
535 bool
536
537menu "MSM Board Selection"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700538
539config MACH_HALIBUT
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700540 depends on ARCH_MSM7X01A
541 depends on MSM_STACKED_MEMORY
542 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700543 bool "Halibut Board (QCT SURF7201A)"
544 help
545 Support for the Qualcomm SURF7201A eval board.
546
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700547config MACH_MSM7201A_SURF
548 depends on ARCH_MSM7X01A
549 depends on MSM_STACKED_MEMORY
550 default y
551 bool "MSM7201A SURF"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700552 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700553 Support for the Qualcomm MSM7201A SURF eval board.
554
555config MACH_MSM7201A_FFA
556 depends on ARCH_MSM7X01A
557 depends on MSM_STACKED_MEMORY
558 default y
559 bool "MSM7201A FFA"
560 help
561 Support for the Qualcomm MSM7201A FFA eval board.
562
563config MACH_TROUT
564 depends on ARCH_MSM7X01A
565 depends on MSM_STACKED_MEMORY
566 default y
567 bool "Trout"
568
569config MACH_MSM7X27_SURF
570 depends on ARCH_MSM7X27
571 depends on !MSM_STACKED_MEMORY
572 default y
573 bool "MSM7x27 SURF"
574 help
575 Support for the Qualcomm MSM7x27 SURF eval board.
576
577config MACH_MSM7X27_FFA
578 depends on ARCH_MSM7X27
579 depends on !MSM_STACKED_MEMORY
580 default y
581 bool "MSM7x27 FFA"
582 help
583 Support for the Qualcomm MSM7x27 FFA eval board.
584
585config MACH_MSM7X27A_RUMI3
586 depends on ARCH_MSM7X27A
587 depends on !MSM_STACKED_MEMORY
588 default y
589 bool "MSM7x27A RUMI3"
590 help
591 Support for the Qualcomm MSM7x27A RUMI3 Emulation Platform.
592
593config MACH_MSM7X27A_SURF
594 depends on ARCH_MSM7X27A
595 depends on !MSM_STACKED_MEMORY
596 default y
597 bool "MSM7x27A SURF"
598 help
599 Support for the Qualcomm MSM7x27A SURF.
600
601config MACH_MSM7X27A_FFA
602 depends on ARCH_MSM7X27A
603 depends on !MSM_STACKED_MEMORY
604 default y
605 bool "MSM7x27A FFA"
606 help
607 Support for the Qualcomm MSM7x27A FFA.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700608
Trilok Soni3d0f6c52011-07-26 16:06:58 +0530609config MACH_MSM7625A_SURF
610 depends on ARCH_MSM7X27A
611 depends on !MSM_STACKED_MEMORY
612 default y
613 bool "MSM7625A SURF"
614 help
615 Support for the Qualcomm MSM7625A SURF.
616
617config MACH_MSM7625A_FFA
618 depends on ARCH_MSM7X27A
619 depends on !MSM_STACKED_MEMORY
620 default y
621 bool "MSM7625A FFA"
622 help
623 Support for the Qualcomm MSM7625A FFA.
624
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530625config MACH_MSM7627A_QRD1
626 depends on ARCH_MSM7X27A
627 depends on !MSM_STACKED_MEMORY
628 default y
629 bool "MSM7627A QRD1"
630 help
Chintan Pandyab1bad0e2012-02-06 19:04:51 +0530631 Support for the Qualcomm MSM7627A Reference Design.
632
633config MACH_MSM7627A_QRD3
634 depends on ARCH_MSM7X27A
635 depends on !MSM_STACKED_MEMORY
636 default y
637 bool "MSM7627A QRD3"
638 help
639 Support for the Qualcomm MSM7627A Reference Design.
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530640
Taniya Dasc868a2e2012-01-03 10:18:47 +0530641config MACH_MSM7627A_EVB
642 depends on ARCH_MSM7X27A
643 depends on !MSM_STACKED_MEMORY
644 default y
645 bool "MSM7627A EVB"
646 help
647 Support for the Qualcomm MSM7627A Reference Design.
648
Taniya Das43bcdd62011-12-02 17:33:27 +0530649config MACH_MSM8625_RUMI3
650 depends on ARCH_MSM8625
651 depends on !MSM_STACKED_MEMORY
652 default y
653 bool "MSM8625 RUMI3"
654 help
655 Support for the Qualcomm MSM8625 RUMI3 Emulation Platform.
656
Taniya Dase3027e22012-02-27 16:32:27 +0530657config MACH_MSM8625_SURF
658 depends on ARCH_MSM8625
659 depends on !MSM_STACKED_MEMORY
660 default y
661 bool "MSM8625 SURF"
662 help
663 Support for the Qualcomm MSM8625 SURF.
664
Aparna Mallavarapu9f000a72012-04-20 15:37:57 +0530665config MACH_MSM8625_FFA
666 depends on ARCH_MSM8625
667 depends on !MSM_STACKED_MEMORY
668 default y
669 bool "MSM8625 FFA"
670 help
671 Support for the Qualcomm MSM8625 FFA.
672
Chintan Pandyaf4ad4002012-02-28 19:49:03 +0530673config MACH_MSM8625_EVB
674 depends on ARCH_MSM8625
675 depends on !MSM_STACKED_MEMORY
676 default y
677 bool "MSM8625 EVB"
678 help
679 Support for the Qualcomm MSM8625 Reference Design.
680
Taniya Dasbd096542012-03-15 17:43:45 +0530681config MACH_MSM8625_QRD7
682 depends on ARCH_MSM8625
683 depends on !MSM_STACKED_MEMORY
684 default y
685 bool "MSM8625 QRD7"
686 help
687 Support for the Qualcomm MSM8625 Reference Design.
688
Aparna Mallavarapu5a326242012-05-09 19:49:02 +0530689config MACH_MSM8625_EVT
690 depends on ARCH_MSM8625
691 depends on !MSM_STACKED_MEMORY
692 default y
693 bool "MSM8625 EVT"
694 help
695 Support for the Qualcomm MSM8625 Reference Design.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700696
Channagoud Kadabi2bd65c82012-10-12 15:14:23 +0530697config MACH_QRD_SKUD_PRIME
698 depends on ARCH_MSM8625
699 depends on !MSM_STACKED_MEMORY
700 default y
701 bool "MSM8625 SKUD PRIME"
702 help
703 Support for the Qualcomm MSM8625 SKUD prime Reference Design.
704 Add support for a SKUD prime reference design based on MSM8x25
705 chipset. This device is much closer to a phone than regular form
706 factor devices, with new touch, display panel and other hardware
707 configurations.
708
Daniel Walker7b521612010-05-06 12:44:57 -0700709config MACH_MSM7X30_SURF
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700710 depends on ARCH_MSM7X30
711 depends on !MSM_STACKED_MEMORY
712 default y
713 bool "MSM7x30 SURF"
714 help
715 Support for the Qualcomm MSM7x30 SURF eval board.
716
717config MACH_MSM7X30_FFA
718 depends on ARCH_MSM7X30
719 depends on !MSM_STACKED_MEMORY
720 default y
721 bool "MSM7x30 FFA"
722 help
723 Support for the Qualcomm MSM7x30 FFA eval board.
724
725config MACH_MSM7X30_FLUID
726 depends on ARCH_MSM7X30
727 depends on !MSM_STACKED_MEMORY
728 default y
729 bool "MSM7x30 FLUID"
730 help
731 Support for the Qualcomm MSM7x30 FLUID eval board.
732
733config MACH_SAPPHIRE
734 depends on ARCH_MSM7X01A
735 default n
736 bool "Sapphire"
Daniel Walker7b521612010-05-06 12:44:57 -0700737
Daniel Walker4ad15e62010-05-06 13:54:17 -0700738config MACH_QSD8X50_SURF
739 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700740 depends on MSM_SOC_REV_NONE
741 depends on MSM_STACKED_MEMORY
742 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700743 bool "QSD8x50 SURF"
744 help
745 Support for the Qualcomm QSD8x50 SURF eval board.
746
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700747config MACH_QSD8X50_FFA
Daniel Walker4ad15e62010-05-06 13:54:17 -0700748 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700749 depends on MSM_SOC_REV_NONE
750 depends on MSM_STACKED_MEMORY
751 default y
752 bool "QSD8x50 FFA"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700753 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700754 Support for the Qualcomm QSD8x50 FFA eval board.
755
756config MACH_MSM7X25_SURF
757 depends on ARCH_MSM7X25
758 depends on !MSM_STACKED_MEMORY
759 default y
760 bool "MSM7x25 SURF"
761 help
762 Support for the Qualcomm MSM7x25 SURF eval board.
763
764config MACH_MSM7X25_FFA
765 depends on ARCH_MSM7X25
766 depends on !MSM_STACKED_MEMORY
767 default y
768 bool "MSM7x25 FFA"
769 help
770 Support for the Qualcomm MSM7x25 FFA eval board.
771
772config MACH_MSM8X55_SURF
773 depends on ARCH_MSM7X30
774 depends on !MSM_STACKED_MEMORY
775 default y
776 bool "MSM8X55 SURF"
777 help
778 Support for the Qualcomm MSM8x55 SURF eval board.
779
780config MACH_MSM8X55_FFA
781 depends on ARCH_MSM7X30
782 depends on !MSM_STACKED_MEMORY
783 default y
784 bool "MSM8X55 FFA"
785 help
786 Support for the Qualcomm MSM8x55 FFA eval board.
787
788config MACH_MSM8X55_SVLTE_FFA
789 depends on ARCH_MSM7X30
790 depends on !MSM_STACKED_MEMORY
791 default y
792 bool "MSM8X55 SVLTE FFA"
793 help
794 Support for the Qualcomm MSM8x55 SVLTE FFA eval board.
795
796config MACH_MSM8X55_SVLTE_SURF
797 depends on ARCH_MSM7X30
798 depends on !MSM_STACKED_MEMORY
799 default y
800 bool "MSM8X55 SVLTE SURF"
801 help
802 Support for the Qualcomm MSM8x55 SVLTE SURF eval board.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700803
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700804config MACH_MSM8X60_SURF
805 depends on ARCH_MSM8X60
806 default n
807 bool "MSM8x60 SURF"
808 help
809 Support for the Qualcomm MSM8x60 SURF eval board.
810
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700811config MACH_MSM8X60_FFA
812 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700813 default n
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700814 bool "MSM8x60 FFA"
815 help
816 Support for the Qualcomm MSM8x60 FFA eval board.
817
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700818config MACH_MSM8X60_FLUID
819 depends on ARCH_MSM8X60
820 default n
821 bool "MSM8x60 FLUID"
822 help
823 Support for the Qualcomm MSM8x60 FLUID platform. The FLUID is an
824 8x60 target which has a form factor that is much closer to that
825 of a phone than other targets. It also has a new display and
826 touchscreen controller.
827
828config MACH_MSM8X60_FUSION
829 depends on ARCH_MSM8X60
830 default n
831 bool "MSM8x60 FUSION"
832 help
833 Support for the Qualcomm MSM8x60 Fusion SURF device.
834
835config MACH_MSM8X60_FUSN_FFA
836 depends on ARCH_MSM8X60
837 default n
838 bool "MSM8x60 FUSN FFA"
839 help
840 Support for the Qualcomm MSM8x60 Fusion FFA device.
841
Zhang Chang Kenef05b172011-07-27 15:28:13 -0400842config MACH_MSM8X60_DRAGON
843 depends on ARCH_MSM8X60
844 default n
845 bool "MSM8x60 DRAGON"
846 help
847 Support for the Qualcomm MSM8x60 Dragon board.
848
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700849config MACH_MSM8960_CDP
850 depends on ARCH_MSM8960
851 bool "MSM8960 CDP"
852 help
853 Support for the Qualcomm MSM8960 CDP device.
854
855config MACH_MSM8960_MTP
856 depends on ARCH_MSM8960
857 bool "MSM8960 MTP"
858 help
859 Support for the Qualcomm MSM8960 MTP device.
860
861config MACH_MSM8960_FLUID
862 depends on ARCH_MSM8960
863 bool "MSM8960 FLUID"
864 help
865 Support for the Qualcomm MSM8960 FLUID device.
866
Amir Samuelov0d1f8ae2011-07-28 11:13:58 +0300867config MACH_MSM8960_LIQUID
868 depends on ARCH_MSM8960
869 bool "MSM8960 LIQUID"
870 help
871 Support for the Qualcomm MSM8960 LIQUID device.
872
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700873config MACH_MSM8930_CDP
874 depends on ARCH_MSM8930
875 bool "MSM8930 CDP"
876 help
877 Support for the Qualcomm MSM8930 CDP device.
878
879config MACH_MSM8930_MTP
880 depends on ARCH_MSM8930
881 bool "MSM8930 MTP"
882 help
883 Support for the Qualcomm MSM8930 MTP device.
884
885config MACH_MSM8930_FLUID
886 depends on ARCH_MSM8930
887 bool "MSM8930 FLUID"
888 help
889 Support for the Qualcomm MSM8930 FLUID device.
890
Stepan Moskovchenko8768eff2011-12-01 18:55:07 -0800891config MACH_MSM8627_CDP
892 depends on ARCH_MSM8930
893 bool "MSM8627 CDP"
894 help
895 Support for the Qualcomm MSM8627 CDP device.
896
897config MACH_MSM8627_MTP
898 depends on ARCH_MSM8930
899 bool "MSM8627 MTP"
900 help
901 Support for the Qualcomm MSM8627 MTP device.
902
Rohit Vaswania8e7a832011-09-28 21:00:05 -0700903config MACH_MSM9615_CDP
904 depends on ARCH_MSM9615
905 bool "MSM9615 CDP"
906 help
907 Support for the Qualcomm MSM9615 CDP device.
908
909config MACH_MSM9615_MTP
910 depends on ARCH_MSM9615
911 bool "MSM9615 MTP"
912 help
913 Support for the Qualcomm MSM9615 MTP device.
914
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700915config MSM_USE_TSIF1
916 depends on ARCH_MSM8X60
917 bool "MSM8x60 use TSIF1"
918 help
919 Selects TSIF1 core to be used rather than TSIF0.
920 The two TSIF cores share the same DM configuration
921 so they cannot be used simultaneously.
922
Joel King82b7e3f2012-01-05 10:03:27 -0800923config MACH_APQ8064_CDP
924 depends on ARCH_APQ8064
925 bool "APQ8064 CDP"
926 help
927 Support for the Qualcomm APQ8064 CDP device.
928
929config MACH_APQ8064_MTP
930 depends on ARCH_APQ8064
931 bool "APQ8064 MTP"
932 help
933 Support for the Qualcomm APQ8064 MTP device.
934
935config MACH_APQ8064_LIQUID
936 depends on ARCH_APQ8064
937 bool "APQ8064 LIQUID"
938 help
939 Support for the Qualcomm APQ8064 LIQUID device.
940
Joel King064bbf82012-04-01 13:23:39 -0700941config MACH_MPQ8064_CDP
942 depends on ARCH_APQ8064
943 bool "MPQ8064 CDP"
944 help
945 Support for the Qualcomm MPQ8064 CDP device.
946
Joel King11ca8202012-02-13 16:19:03 -0800947config MACH_MPQ8064_HRD
948 depends on ARCH_APQ8064
949 bool "MPQ8064 HRD"
950 help
951 Support for the Qualcomm MPQ8064 HRD device.
952
953config MACH_MPQ8064_DTV
954 depends on ARCH_APQ8064
955 bool "MPQ8064 DTV"
956 help
957 Support for the Qualcomm MPQ8064 DTV device.
958
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700959config MACH_FSM9XXX_SURF
960 depends on ARCH_FSM9XXX
961 depends on !MSM_STACKED_MEMORY
962 default y
963 bool "FSM9XXX SURF"
964 help
965 Support for the Qualcomm FSM9xxx femtocell
966 chipset based SURF evaluation board and
967 FFA board.
968
Daniel Walker4ad15e62010-05-06 13:54:17 -0700969endmenu
Brian Swetland9e73c842007-11-26 04:12:13 -0800970
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700971config MSM_STACKED_MEMORY
972 bool "Stacked Memory"
973 default y
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800974 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700975 This option is used to indicate the presence of on-die stacked
976 memory. When present this memory bank is used for a high speed
977 shared memory interface. When not present regular RAM is used.
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800978
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700979config PHYS_OFFSET
980 hex
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700981 default "0x40800000" if ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700982 default "0x80200000" if ARCH_APQ8064
983 default "0x80200000" if ARCH_MSM8960
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700984 default "0x80200000" if ARCH_MSM8930
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700985 default "0x00000000" if ARCH_MSM8974
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +0530986 default "0x00000000" if ARCH_MPQ8092
Syed Rameez Mustafa90f80502012-08-23 17:27:24 -0700987 default "0x00000000" if ARCH_MSM8226
Syed Rameez Mustafa02dd1a32012-10-26 11:02:26 -0700988 default "0x00000000" if ARCH_MSM8910
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700989 default "0x10000000" if ARCH_FSM9XXX
Abhimanyu Kapur20ac2ad2012-09-25 04:23:59 -0700990 default "0x00200000" if ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700991 default "0x00200000" if !MSM_STACKED_MEMORY
992 default "0x00000000" if ARCH_QSD8X50 && MSM_SOC_REV_A
993 default "0x20000000" if ARCH_QSD8X50
994 default "0x40200000" if ARCH_MSM8X60
995 default "0x10000000"
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800996
Mitchel Humpherys05e58812012-08-13 14:24:13 -0700997config KERNEL_MSM_CONTIG_MEM_REGION
998 bool "Enable in-kernel contiguous memory region"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700999 default y if ARCH_MSM8X60
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001000 depends on ANDROID_PMEM && (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001001 help
Mitchel Humpherys05e58812012-08-13 14:24:13 -07001002 Enable the in-kernel contiguous memory allocator. Sets up a
1003 region of physically contiguous memory. This memory is
1004 reserved during initialization, and can be used
1005 generically.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001006
1007config KERNEL_PMEM_SMI_REGION
1008 bool "Enable in-kernel PMEM region for SMI"
1009 default y if ARCH_MSM8X60
1010 depends on ANDROID_PMEM && ((ARCH_QSD8X50 && !PMEM_GPU0) || (ARCH_MSM8X60 && !VCM))
1011 help
1012 Enable the in-kernel PMEM allocator to use SMI memory.
1013
1014config PMEM_GPU0
1015 bool "Enable PMEM GPU0 region"
1016 default y
1017 depends on ARCH_QSD8X50 && ANDROID_PMEM
1018 help
1019 Enable the PMEM GPU0 device on SMI Memory.
1020
1021config MSM_AMSS_VERSION
1022 int
1023 default 6210 if MSM_AMSS_VERSION_6210
1024 default 6220 if MSM_AMSS_VERSION_6220
1025 default 6225 if MSM_AMSS_VERSION_6225
1026
1027choice
1028 prompt "AMSS modem firmware version"
1029
1030 default MSM_AMSS_VERSION_6225
1031
1032 config MSM_AMSS_VERSION_6210
1033 bool "6.2.10"
1034
1035 config MSM_AMSS_VERSION_6220
1036 bool "6.2.20"
1037
1038 config MSM_AMSS_VERSION_6225
1039 bool "6.2.20 + New ADSP"
1040endchoice
Stepan Moskovchenko2607b0a2010-11-15 17:46:10 -08001041
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001042config MSM_HAS_DEBUG_UART_HS
Daniel Walkerbf83de42010-03-16 16:29:44 -07001043 bool
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001044 help
1045 Say Y here if high speed MSM UART is present.
1046
1047config MSM_HAS_DEBUG_UART_HS_V14
1048 bool
1049 select MSM_HAS_DEBUG_UART_HS
1050 help
1051 Say Y here if high speed MSM UART v1.4 is present.
1052
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301053config MSM_DEBUG_UART_PHYS
1054 hex
1055 default 0xA9A00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART1
1056 default 0xACA00000 if ARCH_MSM7X30 && DEBUG_MSM_UART1
1057 default 0x94000000 if ARCH_FSM9XXX && DEBUG_MSM_UART1
1058 default 0xA9B00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART2
1059 default 0xACB00000 if ARCH_MSM7X30 && DEBUG_MSM_UART2
1060 default 0x94100000 if ARCH_FSM9XXX && DEBUG_MSM_UART2
1061 default 0xA9C00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART3
1062 default 0xACC00000 if ARCH_MSM7X30 && DEBUG_MSM_UART3
1063
Brian Swetland9e73c842007-11-26 04:12:13 -08001064choice
1065 prompt "Debug UART"
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001066 depends on DEBUG_LL
Brian Swetland9e73c842007-11-26 04:12:13 -08001067
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001068 config DEBUG_MSM_UART1
1069 bool "Kernel low-level debugging messages via MSM UART1"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301070 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001071 help
1072 Say Y here if you want the debug print routines to direct
1073 their output to the first serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001074
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001075 config DEBUG_MSM_UART2
1076 bool "Kernel low-level debugging messages via MSM UART2"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301077 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001078 help
1079 Say Y here if you want the debug print routines to direct
1080 their output to the second serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001081
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001082 config DEBUG_MSM_UART3
1083 bool "Kernel low-level debugging messages via MSM UART3"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301084 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001085 help
1086 Say Y here if you want the debug print routines to direct
1087 their output to the third serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001088
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001089 config DEBUG_MSM8660_UART
1090 bool "Kernel low-level debugging messages via MSM 8660 UART"
1091 depends on ARCH_MSM8X60
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001092 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001093 help
1094 Say Y here if you want the debug print routines to direct
1095 their output to the serial port on MSM 8660 devices.
Steve Mucklec8aabae2010-04-21 16:20:27 -07001096
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001097 config DEBUG_MSM8960_UART
1098 bool "Kernel low-level debugging messages via MSM 8960 UART"
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001099 depends on ARCH_MSM8960 && DEBUG_LL
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001100 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001101 help
1102 Say Y here if you want the debug print routines to direct
1103 their output to the serial port on MSM 8960 devices.
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001104
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001105 config DEBUG_MSM8930_UART
1106 bool "Kernel low-level debugging messages via MSM 8930 UART"
1107 depends on ARCH_MSM8930 && DEBUG_LL
1108 select MSM_HAS_DEBUG_UART_HS
1109 help
1110 Say Y here if you want the debug print routines to direct
1111 their output to the serial port on MSM 8930 devices.
1112
1113 config DEBUG_APQ8064_UART
1114 bool "Kernel low-level debugging messages via APQ 8064 UART"
1115 depends on ARCH_APQ8064 && DEBUG_LL
1116 select MSM_HAS_DEBUG_UART_HS
1117 help
1118 Say Y here if you want the debug print routines to direct
1119 their output to the serial port on APQ 8064 devices.
1120
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001121 config DEBUG_MSM8974_UART
1122 bool "Kernel low-level debugging messages via MSM 8974 UART"
1123 depends on ARCH_MSM8974
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001124 select MSM_HAS_DEBUG_UART_HS_V14
1125 help
1126 Say Y here if you want the debug print routines to direct
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001127 their output to the serial port on MSM 8974 devices.
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +05301128
1129 config DEBUG_MPQ8092_UART
1130 bool "Kernel low-level debugging messages via MPQ8092 UART"
1131 depends on ARCH_MPQ8092
1132 select MSM_HAS_DEBUG_UART_HS_V14
1133 help
1134 Say Y here if you want the debug print routines to direct
1135 their output to the serial port on MPQ8092 devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001136endchoice
Brian Swetland9e73c842007-11-26 04:12:13 -08001137
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001138choice
1139 prompt "Default Timer"
1140 default MSM7X00A_USE_GP_TIMER
1141
1142 config MSM7X00A_USE_GP_TIMER
1143 bool "GP Timer"
1144 help
1145 Low resolution timer that allows power collapse from idle.
1146
1147 config MSM7X00A_USE_DG_TIMER
1148 bool "DG Timer"
1149 help
1150 High resolution timer.
1151endchoice
1152
1153choice
1154 prompt "Suspend sleep mode"
1155 default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1156 help
1157 Allows overriding the sleep mode used. Leave at power
1158 collapse suspend unless the arm9 image has problems.
1159
1160 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1161 bool "Power collapse suspend"
1162 help
1163 Lowest sleep state. Returns through reset vector.
1164
1165 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1166 bool "Power collapse"
1167 help
1168 Sleep state that returns through reset vector.
1169
1170 config MSM7X00A_SLEEP_MODE_APPS_SLEEP
1171 bool "Apps Sleep"
1172
1173 config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1174 bool "Ramp down cpu clock and wait for interrupt"
1175
1176 config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1177 bool "Wait for interrupt"
1178endchoice
1179
1180config MSM7X00A_SLEEP_MODE
1181 int
1182 default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1183 default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1184 default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
1185 default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1186 default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1187
1188choice
1189 prompt "Idle sleep mode"
1190 default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1191 help
1192 Allows overriding the sleep mode used from idle. Leave at power
1193 collapse suspend unless the arm9 image has problems.
1194
1195 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1196 bool "Power collapse suspend"
1197 help
1198 Lowest sleep state. Returns through reset vector.
1199
1200 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1201 bool "Power collapse"
1202 help
1203 Sleep state that returns through reset vector.
1204
1205 config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1206 bool "Apps Sleep"
1207
1208 config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1209 bool "Ramp down cpu clock and wait for interrupt"
1210
1211 config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1212 bool "Wait for interrupt"
1213endchoice
1214
1215config MSM7X00A_IDLE_SLEEP_MODE
1216 int
1217 default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1218 default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1219 default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1220 default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1221 default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1222
1223config MSM7X00A_IDLE_SLEEP_MIN_TIME
1224 int "Minimum idle time before sleep"
1225 default 20000000
1226 help
1227 Minimum idle time in nanoseconds before entering low power mode.
1228
1229config MSM7X00A_IDLE_SPIN_TIME
1230 int "Idle spin time before cpu ramp down"
1231 default 80000
1232 help
1233 Spin time in nanoseconds before ramping down cpu clock and entering
1234 any low power state.
1235
1236menuconfig MSM_IDLE_STATS
1237 bool "Collect idle statistics"
1238 default y
1239 help
1240 Collect idle statistics and export them in proc/msm_pm_stats.
1241
1242if MSM_IDLE_STATS
1243
1244config MSM_IDLE_STATS_FIRST_BUCKET
1245 int "First bucket time"
1246 default 62500
1247 help
1248 Upper time limit in nanoseconds of first bucket.
1249
1250config MSM_IDLE_STATS_BUCKET_SHIFT
1251 int "Bucket shift"
1252 default 2
1253
1254config MSM_IDLE_STATS_BUCKET_COUNT
1255 int "Bucket count"
1256 default 10
1257
1258config MSM_SUSPEND_STATS_FIRST_BUCKET
1259 int "First bucket time for suspend"
1260 default 1000000000
1261 help
1262 Upper time limit in nanoseconds of first bucket of the
1263 histogram. This is for collecting statistics on suspend.
1264
1265endif # MSM_IDLE_STATS
1266
1267config CPU_HAS_L2_PMU
1268 bool "L2CC PMU Support"
1269 help
1270 Select this if the L2 cache controller has a Performance Monitoring Unit.
1271
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001272config HTC_HEADSET
1273 tristate "HTC 2 Wire detection driver"
1274 default n
1275 help
1276 Provides support for detecting HTC 2 wire devices, such as wired
1277 headset, on the trout platform. Can be used with the msm serial
1278 debugger, but not with serial console.
1279
1280config TROUT_BATTCHG
1281 depends on MACH_TROUT && POWER_SUPPLY
1282 default y
1283 bool "Trout battery / charger driver"
1284
1285config HTC_PWRSINK
1286 depends on MSM_SMD
1287 default n
1288 bool "HTC Power Sink Driver"
1289
1290config QSD_SVS
1291 bool "QSD Static Voltage Scaling"
1292 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1293 default y
1294 select TPS65023
1295 help
1296 Enables static voltage scaling using the TPS65023 PMIC.
1297
1298config QSD_PMIC_DEFAULT_DCDC1
1299 int "PMIC default output voltage"
1300 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1301 default 1250
1302 help
1303 This is the PMIC voltage at Linux kernel boot.
1304
1305config MSM_FIQ_SUPPORT
1306 default y
1307 bool "Enable installation of an FIQ handler."
1308
1309config MSM_SERIAL_DEBUGGER
1310 select MSM_FIQ_SUPPORT
1311 select KERNEL_DEBUGGER_CORE
1312 default n
1313 bool "FIQ Mode Serial Debugger"
1314 help
1315 The FIQ serial debugger can accept commands even when the
1316 kernel is unresponsive due to being stuck with interrupts
1317 disabled. Depends on the kernel debugger core in drivers/misc.
1318
1319config MSM_SERIAL_DEBUGGER_CONSOLE
1320 depends on MSM_SERIAL_DEBUGGER
1321 default n
1322 bool "Console on FIQ Serial Debugger port"
1323 help
1324 Enables a console so that printk messages are displayed on
1325 the debugger serial port as the occur.
Brian Swetland9e73c842007-11-26 04:12:13 -08001326
Gregory Beanab78cde2010-09-01 16:26:12 -07001327config MSM_PROC_COMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001328 default y
1329 bool "Proc-Comm RPC Interface"
1330 help
1331 Enables a lightweight communications interface to the
1332 baseband processor.
Gregory Beanab78cde2010-09-01 16:26:12 -07001333
Gregory Bean1963a2a2010-08-28 10:05:44 -07001334config MSM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001335 bool "MSM Shared Memory Driver (SMD)"
1336 help
1337 Support for the shared memory interface between the apps
1338 processor and the baseband processor. Provides access to
1339 the "shared heap", as well as virtual serial channels
1340 used to communicate with various services on the baseband
1341 processor.
1342
1343choice
1344 prompt "MSM Shared memory interface version"
1345 depends on MSM_SMD
1346 default MSM_SMD_PKG3 if ARCH_MSM_ARM11
1347 default MSM_SMD_PKG4 if ARCH_MSM_SCORPION
1348
1349 config MSM_SMD_PKG3
1350 bool
1351 prompt "Package 3"
1352
1353 config MSM_SMD_PKG4
1354 bool
1355 prompt "Package 4"
1356endchoice
1357
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -06001358config MSM_PCIE
1359 bool "MSM PCIe Controller driver"
1360 depends on PCI && PCI_MSI
1361 help
1362 Enables the PCIe functionality by configures PCIe core on
1363 MSM chipset and by enabling the ARM PCI framework extension.
1364
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001365config MSM_RPC_SDIO_XPRT
1366 depends on MSM_SDIO_AL
1367 default y
1368 bool "MSM SDIO XPRT Layer"
1369 help
1370 SDIO Transport Layer for RPC Rouer
1371
1372config MSM_RPC_SDIO_DEBUG
1373 depends on MSM_RPC_SDIO_XPRT
1374 default y
1375 bool "MSM SDIO XPRT debug support"
1376 help
1377 Support for debugging SDIO XPRT
1378
1379config MSM_SMD_DEBUG
1380 depends on MSM_SMD
1381 default y
1382 bool "MSM SMD debug support"
1383 help
1384 Support for debugging the SMD for communication
1385 between the ARM9 and ARM11
1386
1387config MSM_SDIO_AL
1388 depends on ((ARCH_MSM7X30 || MACH_MSM8X60_FUSN_FFA || MACH_TYPE_MSM8X60_FUSION) && HAS_WAKELOCK)
1389 default y
1390 tristate "SDIO-Abstraction-Layer"
1391 help
1392 Support MSM<->MDM Communication over SDIO bus.
1393 MDM SDIO-Client should have pipes support.
1394
1395config MSM_SDIO_DMUX
1396 bool "SDIO Data Mux Driver"
1397 depends on MSM_SDIO_AL
1398 default n
1399 help
1400 Support Muxed Data Channels over SDIO interface.
1401
1402config MSM_BAM_DMUX
1403 bool "BAM Data Mux Driver"
1404 depends on SPS
1405 default n
1406 help
1407 Support Muxed Data Channels over BAM interface.
1408 BAM has a limited number of pipes. This driver
1409 provides a means to support more logical channels
1410 via muxing than BAM could without muxing.
1411
1412config MSM_N_WAY_SMD
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001413 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001414 default y
1415 bool "MSM N-WAY SMD support"
1416 help
1417 Supports APPS-QDSP SMD communication along with
1418 normal APPS-MODEM SMD communication.
1419
1420config MSM_N_WAY_SMSM
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001421 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001422 default y
1423 bool "MSM N-WAY SMSM support"
1424 help
1425 Supports APPS-QDSP SMSM communication along with
1426 normal APPS-MODEM SMSM communication.
1427
1428config MSM_RESET_MODEM
1429 tristate "Reset Modem Driver"
1430 depends on MSM_SMD
1431 default m
1432 help
1433 Allows the user to reset the modem through a device node.
1434
1435config MSM_SMD_LOGGING
1436 depends on MSM_SMD
1437 default y
1438 bool "MSM Shared Memory Logger"
1439 help
1440 This option exposes the shared memory logger at /dev/smem_log
1441 and a debugfs node named smem_log.
1442
1443 If in doubt, say yes.
1444
Karthikeyan Ramasubramaniane1f4f732011-08-08 13:34:47 -06001445config MSM_IPC_LOGGING
1446 bool "MSM Debug Logging for IPC Drivers"
1447 help
1448 This option allows the debug logging for IPC Drivers.
1449
1450 If in doubt, say no.
1451
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001452config MSM_SMD_NMEA
1453 bool "NMEA GPS Driver"
1454 depends on MSM_SMD
1455 default y
1456 help
1457 Enable this to support the NMEA GPS device.
1458
1459 If in doubt, say yes.
1460
1461config MSM_SDIO_TTY
1462 bool "SDIO TTY Driver"
1463 depends on MSM_SDIO_AL
1464 default n
1465 help
1466 Provides a TTY driver SDIO TTY
1467 This driver can be used by user space
1468 applications for passing data through the
1469 SDIO interface.
1470
1471config MSM_SMD_TTY
1472 bool "SMD TTY Driver"
1473 depends on MSM_SMD
1474 default y
1475 help
1476 Provides TTY interfaces to interact with the modem.
1477
1478 If in doubt, say yes.
1479
1480config MSM_SMD_QMI
1481 bool "SMD QMI Driver"
1482 depends on MSM_SMD
1483 default y
1484 help
1485 Manages network data connections.
1486
1487 If in doubt, say yes.
1488
1489config MSM_SMD_PKT
1490 bool "SMD Packet Driver"
1491 depends on MSM_SMD
1492 default y
1493 help
1494 Provides a binary SMD non-muxed packet port interface.
1495
1496 If in doubt, say yes.
1497
1498config MSM_SDIO_CMUX
1499 bool "SDIO CMUX Driver"
1500 depends on MSM_SDIO_AL
1501 default n
1502 help
1503 Provides a Muxed port interface over SDIO QMI
1504
1505config MSM_DSPS
1506 bool "Sensors DSPS driver"
1507 depends on (MSM_PIL && (ARCH_MSM8X60 || ARCH_MSM8960))
1508 default n
1509 help
1510 Provides user-space interface to the sensors manager
1511 to turn on/off the Sensors Processor system clocks.
1512 It is the DSPS responsibility to turn on/off the sensors
1513 themself.
1514 The number of clocks and their name may vary between targets.
1515 It also triggers the PIL to load the DSPS firmware.
1516
1517config MSM_SDIO_CTL
1518 bool "SDIO CTL Driver"
1519 depends on MSM_SDIO_CMUX
1520 default n
1521 help
1522 Provides a binary SDIO control port interface.
1523
1524config MSM_ONCRPCROUTER
1525 depends on MSM_SMD
1526 default n
1527 bool "MSM ONCRPC router support"
1528 help
1529 Support for the MSM ONCRPC router for communication between
1530 the ARM9 and ARM11
1531
1532config MSM_IPC_ROUTER
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001533 depends on NET
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001534 default n
1535 bool "MSM IPC Router support"
1536 help
1537 Support for the MSM IPC Router for communication between
1538 the APPs and the MODEM
1539
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001540config MSM_IPC_ROUTER_SMD_XPRT
1541 depends on MSM_SMD
1542 depends on MSM_IPC_ROUTER
1543 default n
1544 bool "MSM SMD XPRT Layer"
1545 help
1546 SMD Transport Layer for IPC Router
1547
Karthikeyan Ramasubramanian5b502d3642012-09-23 22:23:36 -06001548config MSM_IPC_ROUTER_SECURITY
1549 depends on MSM_IPC_ROUTER
1550 bool "MSM IPC Router Security support"
1551 help
1552 This feature of IPC Router will enforce security rules
1553 configured by a security script from the user-space. IPC Router
1554 once configured with the security rules will ensure that the
1555 sender of the message to a service belongs to the relevant
1556 Linux group as configured by the security script.
1557
Karthikeyan Ramasubramanianfec77ff2012-10-26 20:03:26 -06001558config MSM_QMI_INTERFACE
1559 depends on MSM_IPC_ROUTER
1560 depends on QMI_ENCDEC
1561 default n
1562 bool "MSM QMI Interface Library"
1563 help
1564 Library to send and receive QMI messages over IPC Router.
1565 This library provides interface functions to the kernel drivers
1566 to perform QMI message marshaling and transport them over IPC
1567 Router.
1568
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001569config MSM_ONCRPCROUTER_DEBUG
1570 depends on MSM_ONCRPCROUTER
1571 default y
1572 bool "MSM debug ONCRPC router support"
1573 help
1574 Support for debugging the ONCRPC router for communication
1575 between the ARM9 and ARM11
1576
1577config MSM_RPC_LOOPBACK_XPRT
1578 depends on MSM_ONCRPCROUTER
1579 default n
1580 bool "MSM RPC local routing support"
1581 help
1582 Support for routing RPC messages between APPS clients
1583 and APPS servers. Helps in testing APPS RPC framework.
1584
1585config MSM_RPCSERVER_TIME_REMOTE
1586 depends on MSM_ONCRPCROUTER && RTC_HCTOSYS
1587 default y
1588 bool "Time remote RPC server"
1589 help
1590 The time remote server receives notification of time bases and
1591 reports these events to registered callback functions.
1592
1593config MSM_RPCSERVER_WATCHDOG
1594 depends on MSM_ONCRPCROUTER
1595 default y
1596 bool "Watchdog RPC server"
1597 help
1598 The dog_keepalive server handles watchdog events.
1599
1600config MSM_RPC_WATCHDOG
1601 depends on MSM_ONCRPCROUTER
1602 default n
1603 bool "Watchdog RPC client"
1604 help
1605 The dog_keepalive client module.
1606
1607config MSM_RPC_PING
1608 depends on MSM_ONCRPCROUTER && DEBUG_FS
1609 default m
1610 bool "MSM rpc ping"
1611 help
1612 Implements MSM rpc ping test module.
1613
1614config MSM_RPC_PROC_COMM_TEST
1615 depends on DEBUG_FS && MSM_PROC_COMM
1616 default m
1617 bool "MSM rpc proc comm test"
1618 help
1619 Implements MSM rpc proc comm test module.
1620
1621config MSM_RPC_OEM_RAPI
1622 depends on MSM_ONCRPCROUTER
1623 default m
1624 bool "MSM oem rapi"
1625 help
1626 Implements MSM oem rapi client module.
1627
1628config MSM_RPCSERVER_HANDSET
1629 depends on MSM_ONCRPCROUTER
1630 default y
1631 bool "Handset events RPC server"
1632 help
1633 Support for receiving handset events like headset detect,
1634 headset switch and clamshell state.
1635
1636config MSM_RMT_STORAGE_CLIENT
1637 depends on (ARCH_MSM && MSM_ONCRPCROUTER)
1638 default n
1639 bool "Remote Storage RPC client"
1640 help
1641 Provide RPC mechanism for remote processors to access storage
1642 device on apps processor.
1643
1644config MSM_RMT_STORAGE_CLIENT_STATS
1645 depends on (MSM_RMT_STORAGE_CLIENT && DEBUG_FS)
1646 default n
1647 bool "Remote storage RPC client performance statistics"
1648 help
1649 Collects performance statistics and shows this information
1650 through a debugfs file rmt_storage_stats.
1651
1652config MSM_SDIO_SMEM
1653 depends on MSM_SDIO_AL
1654 default n
1655 bool "SDIO SMEM for remote storage"
1656 help
1657 Copies data from remote MDM9K memory to local MSM8x60
1658 memory. Used by remote storage client to shadow
1659 MDM9K filesystem.
1660
1661config MSM_DALRPC
1662 bool "DAL RPC support"
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -08001663 default n
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001664 help
1665 Supports RPC calls to DAL devices on remote processor cores.
1666
1667config MSM_DALRPC_TEST
1668 tristate "DAL RPC test module"
1669 depends on (MSM_DALRPC && DEBUG_FS)
1670 default m
1671 help
1672 Exercises DAL RPC calls to QDSP6.
1673
1674if CPU_FREQ_MSM
1675
1676config MSM_CPU_FREQ_SET_MIN_MAX
1677 bool "Set Min/Max CPU frequencies."
1678 default n
1679 help
1680 Allow setting min and max CPU frequencies. Sysfs can be used
1681 to override these values.
1682
1683config MSM_CPU_FREQ_MAX
1684 int "Max CPU Frequency"
1685 depends on MSM_CPU_FREQ_SET_MIN_MAX
1686 default 384000
1687
1688config MSM_CPU_FREQ_MIN
1689 int "Min CPU Frequency"
1690 depends on MSM_CPU_FREQ_SET_MIN_MAX
1691 default 245760
1692
1693endif # CPU_FREQ_MSM
1694
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001695config MSM_AVS_HW
1696 bool "Enable Adaptive Voltage Scaling (AVS)"
1697 default n
1698 help
1699 Enable AVS hardware to fine tune voltage at each frequency. The
1700 AVS hardware blocks associated with each Qualcomm ARMv7 cores can
1701 fine tune the voltages based on the feedback from the ring
1702 oscillators.
1703
1704config MSM_HW3D
1705 tristate "MSM Hardware 3D Register Driver"
1706 depends on ANDROID_PMEM
1707 default y
1708 help
1709 Provides access to registers needed by the userspace OpenGL|ES
1710 library.
1711
1712config MSM_ADSP
1713 depends on (ARCH_MSM7X01A || ARCH_MSM7X25 || ARCH_MSM7X27)
1714 tristate "MSM ADSP driver"
1715 depends on ANDROID_PMEM
1716 default y
1717 help
1718 Provides access to registers needed by the userspace aDSP library.
1719
1720config ADSP_RPC_VER
1721 hex
1722 default 0x30002 if (ARCH_MSM7X27 || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2009))
1723 default 0x30001 if (ARCH_MSM7X01A || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2008))
1724 depends on MSM_ADSP
1725 help
1726 Select proper ADSP RPC version
1727choice
1728 prompt "ADSP RPC version"
1729
1730 default AMSS_7X25_VERSION_2009
1731
1732 config AMSS_7X25_VERSION_2009
1733 bool "2.0.09"
1734
1735 config AMSS_7X25_VERSION_2008
1736 bool "2.0.08"
1737endchoice
1738
1739config MSM7KV2_AUDIO
1740 bool "MSM7K v2 audio"
1741 depends on (ARCH_MSM7X30 && ANDROID_PMEM)
1742 default y
1743 help
1744 Enables QDSP5V2-based audio drivers for audio playbacks and
1745 voice call.
1746
1747config MSM_ADSP_REPORT_EVENTS
1748 bool "Report modem events from the DSP"
1749 default y
1750 depends on (MSM_ADSP || MSM7KV2_AUDIO)
1751 help
1752 Normally, only messages from the aDSP are reported to userspace.
1753 With this option, we report events from the aDSP as well.
1754
1755config MSM_QDSP6
1756 tristate "QDSP6 support"
1757 depends on ARCH_QSD8X50 && ANDROID_PMEM
1758 default y
1759 help
1760 Enable support for qdsp6. This provides audio and video functionality.
1761
1762config MSM8X60_AUDIO
1763 tristate "MSM8X60 audio support"
1764 depends on ARCH_MSM8X60 && ANDROID_PMEM
1765 default y
1766 help
1767 Enable support for qdsp6v2. This provides audio functionality.
1768
1769config MSM8X60_FTM_AUDIO_DEVICES
1770 bool "MSM8X60 audio factory test mode support"
1771 depends on MSM8X60_AUDIO
1772 help
1773 Enable support audio factory test mode devices. This is used
1774 in a production line environment.
1775
Ben Romberger45b351c2011-07-20 22:37:27 -07001776config RTAC
1777 bool "MSM8K real-time audio calibration support"
1778 default y
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001779 help
Ben Romberger45b351c2011-07-20 22:37:27 -07001780 Enable support for rtac. This enables calibration during
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001781 audio operation
1782
1783config MSM7X27A_AUDIO
1784 bool "MSM7X27A audio support"
1785 depends on ARCH_MSM7X27A && MSM_ADSP
1786 default n
1787 help
1788 Enable support for 7x27a. This provides audio functionality.
1789
Justin Pauporea6cd2092011-06-22 16:19:45 -07001790config MSM_PROC_COMM_REGULATOR
Gregory Bean1963a2a2010-08-28 10:05:44 -07001791 bool
Justin Pauporea6cd2092011-06-22 16:19:45 -07001792 depends on MSM_PROC_COMM && REGULATOR
1793 help
1794 Enable regulator framework support for regulators managed by PMLIB
1795 on the modem, and controlled through proccomm calls.
1796
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001797config MSM_VREG_SWITCH_INVERTED
1798 bool "Reverse vreg switch polarity"
1799 default n
1800 help
1801 Reverses the enable and disable for vreg switch.
1802
1803config MSM_DMA_TEST
1804 tristate "MSM DMA test module"
1805 default m
1806 help
1807 Intended to be compiled as a module. Provides a device node
1808 and ioctls for testing the MSM dma system.
1809
1810config WIFI_CONTROL_FUNC
1811 bool "Enable WiFi control function abstraction"
1812 help
1813 Enables Power/Reset/Carddetect function abstraction
1814
1815config WIFI_MEM_PREALLOC
1816 depends on WIFI_CONTROL_FUNC
1817 bool "Preallocate memory for WiFi buffers"
1818 help
1819 Preallocates memory buffers for WiFi driver
1820
1821config QSD_AUDIO
1822 bool "QSD audio"
1823 depends on ARCH_MSM_SCORPION && MSM_DALRPC && ANDROID_PMEM && !MSM_SMP
1824 default y
1825 help
1826 Provides PCM, MP3, and AAC audio playback.
1827
1828config AUDIO_AAC_PLUS
1829 depends on (MSM_ADSP || QSD_AUDIO || MSM7KV2_AUDIO)
1830 bool "AAC+ Audio"
1831 default y
1832 help
1833 Provides AAC+ decoding
1834
1835config AUDIO_ENHANCED_AAC_PLUS
1836 depends on AUDIO_AAC_PLUS
1837 bool "Enhanced AAC+ Audio"
1838 default y
1839 help
1840 Provides Enhanced AAC+ decoding
1841
1842config SURF_FFA_GPIO_KEYPAD
1843 bool "MSM SURF/FFA GPIO keypad"
1844 depends on INPUT_GPIO = "y"
1845 default y
1846 help
1847 Select if the GPIO keypad is attached.
1848
1849config MSM_SLEEP_TIME_OVERRIDE
1850 bool "Allow overriding suspend/sleep time with PM module parameter"
1851 default y
1852 help
1853 Enable the module parameter sleep_time_override. Specified
1854 in units of seconds, it overwrites the normal sleep time of
1855 suspend. The feature is required for automated power management
1856 testing.
1857
1858config MSM_MEMORY_LOW_POWER_MODE
1859 bool "Control the low power modes of memory"
1860 default n
1861 help
1862 The application processor controls whether memory should enter
1863 which low power mode.
1864
1865choice
1866 prompt "Default Memory Low Power Mode during Idle"
1867 depends on MSM_MEMORY_LOW_POWER_MODE
1868 default MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1869 help
1870 Selects the default low power mode of the memory during idle
1871 sleep.
1872
1873 config MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1874 bool "Memory active"
1875
1876 config MSM_MEMORY_LOW_POWER_MODE_IDLE_RETENTION
1877 bool "Memory in retention"
1878
1879 config MSM_MEMORY_LOW_POWER_MODE_IDLE_DEEP_POWER_DOWN
1880 bool "Memory in deep power down"
1881endchoice
1882
1883choice
1884 prompt "Default Memory Low Power Mode during Suspend"
1885 depends on MSM_MEMORY_LOW_POWER_MODE
1886 default MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1887 help
1888 Selects the default low power mode of the memory during suspend
1889 sleep.
1890
1891 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1892 bool "Memory active"
1893
1894 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_RETENTION
1895 bool "Memory in retention"
1896
1897 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_DEEP_POWER_DOWN
1898 bool "Memory in deep power down"
1899endchoice
1900
1901choice
1902 prompt "Power management timeout action"
1903 default MSM_PM_TIMEOUT_HALT
1904 help
1905 Selects the Application Processor's action when Power Management
1906 times out waiting for Modem's handshake.
1907
1908 config MSM_PM_TIMEOUT_HALT
1909 bool "Halt the Application Processor"
1910
1911 config MSM_PM_TIMEOUT_RESET_MODEM
1912 bool "Reset the Modem Processor"
1913
1914 config MSM_PM_TIMEOUT_RESET_CHIP
1915 bool "Reset the entire chip"
1916endchoice
1917
1918config MSM_IDLE_WAIT_ON_MODEM
1919 int "Wait for Modem to become ready for idle power collapse"
1920 default 0
1921 help
1922 If Modem is not ready to handle Application Processor's request
1923 for idle power collapse, wait the number of microseconds in case
1924 Modem becomes ready soon.
1925
Matt Wagantall9274df92011-12-15 11:11:05 -08001926config MSM_RPM_REGULATOR
1927 bool "RPM regulator driver"
Matt Wagantall32dc71e2012-01-04 11:13:11 -08001928 depends on MSM_RPM && REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -08001929 help
1930 Compile in support for the RPM regulator driver, used for setting
1931 voltages and other parameters of the various power rails supplied
1932 by some Qualcomm PMICs.
1933
David Collinsc7642322012-04-04 10:19:12 -07001934config MSM_RPM_REGULATOR_SMD
1935 bool "SMD RPM regulator driver"
1936 depends on REGULATOR
1937 depends on OF
1938 depends on MSM_RPM_SMD
1939 help
1940 Compile in support for the SMD RPM regulator driver which is used for
1941 setting voltages and other parameters of the various power rails
1942 supplied by some Qualcomm PMICs. The SMD RPM regulator driver should
1943 be used on systems which contain an RPM which communicates with the
1944 application processor over SMD.
1945
Rohit Vaswani5fd759e2012-11-07 07:05:08 -08001946config MSM_SMCMOD
1947 tristate "Secure Monitor Call (SMC) Module"
1948 default n
1949 depends on (ARCH_FSM9XXX && ION && ION_MSM && MSM_SCM)
1950 help
1951 Enable support for smcmod driver. This driver provides a mechanism
1952 to execute the Secure Monitor Call (SMC) to switch from non-secure
1953 to secure execution in the fsm9xxx targets. This module utilizes Ion
1954 for buffer management.
1955
Stephen Boyd01710582012-07-09 13:40:05 -07001956config MSM_SUBSYSTEM_RESTART
1957 bool "MSM Subsystem Restart"
1958 help
1959 This option enables the MSM subsystem restart framework.
1960
1961 The MSM subsystem restart framework provides support to boot,
1962 shutdown, and restart subsystems with a reference counted API.
1963 It also notifies userspace of transitions between these states via
1964 sysfs.
1965
1966config MSM_SYSMON_COMM
1967 bool "MSM System Monitor communication support"
1968 depends on MSM_SMD && MSM_SUBSYSTEM_RESTART
1969 help
1970 This option adds support for MSM System Monitor library, which
1971 provides an API that may be used for notifying subsystems within
1972 the SoC about other subsystems' power-up/down state-changes.
1973
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001974config MSM_PIL
1975 bool "Peripheral image loading"
1976 select FW_LOADER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001977 default n
1978 help
1979 Some peripherals need to be loaded into memory before they can be
1980 brought out of reset.
1981
1982 Say yes to support these devices.
1983
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001984config MSM_PIL_MODEM
1985 tristate "Modem (ARM11) Boot Support"
Stephen Boyd3ac20732012-05-03 18:46:08 -07001986 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001987 help
1988 Support for booting and shutting down ARM11 Modem processors.
1989
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001990config MSM_PIL_QDSP6V3
1991 tristate "QDSP6v3 (Hexagon) Boot Support"
Stephen Boyd2e19d932012-05-09 17:36:04 -07001992 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001993 help
1994 Support for booting and shutting down QDSP6v3 processors (hexagon).
1995 The QDSP6 is a low power DSP used in audio software applications.
1996
Stephen Boydbdb53f32012-06-05 18:39:47 -07001997config MSM_PIL_LPASS_QDSP6V4
1998 tristate "LPASS QDSP6v4 (Hexagon) Boot Support"
Stephen Boyda1cf76b2012-06-13 12:05:35 -07001999 depends on MSM_SUBSYSTEM_RESTART
Stephen Boydeb819882011-08-29 14:46:30 -07002000 help
Stephen Boydbdb53f32012-06-05 18:39:47 -07002001 Support for booting and shutting down QDSP6v4 processors (hexagon)
2002 in low power audio subsystems. If you would like to record or
2003 play audio then say Y here.
2004
2005 If unsure, say N.
2006
2007config MSM_PIL_MODEM_QDSP6V4
2008 tristate "Modem QDSP6v4 (Hexagon) Boot Support"
Stephen Boyd2efa9962012-06-12 14:20:12 -07002009 depends on MSM_SUBSYSTEM_RESTART
Stephen Boydbdb53f32012-06-05 18:39:47 -07002010 help
2011 Support for booting and shutting down QDSP6v4 processors (hexagon)
2012 in modem subsystems. If you would like to make or receive phone
2013 calls then say Y here.
2014
2015 If unsure, say N.
Stephen Boydeb819882011-08-29 14:46:30 -07002016
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07002017config MSM_PIL_LPASS_QDSP6V5
Stephen Boyd633eb622012-06-13 12:05:35 -07002018 tristate "LPASS QDSP6v5 (Hexagon) Boot Support"
2019 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
2020 help
2021 Support for booting and shutting down QDSP6v5 (Hexagon) processors
2022 in low power audio subsystems. This driver also monitors the ADSP
2023 SMSM status bits and the ADSP's watchdog interrupt and restarts the
2024 ADSP if the processor encounters a fatal error.
Matt Wagantall4e2599e2012-03-21 22:31:35 -07002025
2026config MSM_PIL_MSS_QDSP6V5
Stephen Boyd3da4fd02012-07-06 10:00:12 -07002027 tristate "MSS QDSP6v5 (Hexagon) Boot Support"
2028 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Matt Wagantalle6e00d52012-03-08 17:39:07 -08002029 help
Stephen Boyd3da4fd02012-07-06 10:00:12 -07002030 Support for booting and shutting down QDSP6v5 (Hexagon) processors
2031 in modem subsystems. If you would like to make or receive phone
2032 calls then say Y here.
2033
2034 If unsure, say N.
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07002035
Stephen Boyd322a9922011-09-20 01:05:54 -07002036config MSM_PIL_RIVA
2037 tristate "RIVA (WCNSS) Boot Support"
Stephen Boydfdec00d2012-05-10 17:04:49 -07002038 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd322a9922011-09-20 01:05:54 -07002039 help
2040 Support for booting and shutting down the RIVA processor (WCNSS).
2041 Riva is the wireless subsystem processor used in bluetooth, wireless
2042 LAN, and FM software applications.
2043
Stephen Boydd89eebe2011-09-28 23:28:11 -07002044config MSM_PIL_TZAPPS
2045 tristate "TZApps Boot Support"
Stephen Boyd046013f2012-06-28 20:24:17 -07002046 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boydd89eebe2011-09-28 23:28:11 -07002047 help
2048 Support for booting and shutting down TZApps.
2049
2050 TZApps is an image that runs in the secure processor state. It is
2051 used to decrypt data and perform secure operations on the behalf of
2052 the kernel.
2053
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07002054config MSM_PIL_DSPS
2055 tristate "DSPS Boot Support"
Stephen Boydf169b4b2012-05-10 17:55:55 -07002056 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07002057 help
2058 Support for booting and shutting down ARM7 DSPS processors.
2059
2060 DSPS is a sensors offloading processor used for applications such
2061 as rotation detection, temperature, etc.
2062
Stephen Boyd7b973de2012-03-09 12:26:16 -08002063config MSM_PIL_VIDC
2064 tristate "Video Core Secure Boot Support"
Stephen Boyd046013f2012-06-28 20:24:17 -07002065 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd7b973de2012-03-09 12:26:16 -08002066 help
2067 Support for authenticating the video core image.
2068
Tianyi Gou828798d2012-05-02 21:12:38 -07002069config MSM_PIL_VENUS
2070 tristate "VENUS (Video) Boot Support"
Stephen Boyd046013f2012-06-28 20:24:17 -07002071 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Tianyi Gou828798d2012-05-02 21:12:38 -07002072 help
2073 Support for booting and shutting down the VENUS processor (Video).
2074 Venus is the Video subsystem processor used for video codecs.
2075
Matt Wagantall292aace2012-01-26 19:12:34 -08002076config MSM_PIL_GSS
Stephen Boydd86214b2012-05-10 15:26:35 -07002077 tristate "GSS (Cortex A5) Boot Support"
2078 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Matt Wagantall292aace2012-01-26 19:12:34 -08002079 help
2080 Support for booting and shutting down Cortex A5 processors which run
2081 GPS subsystem firmware.
2082
Tianyi Gouc1e049f82011-11-23 14:20:16 -08002083config MSM_PIL_PRONTO
2084 tristate "PRONTO (WCNSS) Boot Support"
Stephen Boyd581fe852012-06-13 12:05:35 -07002085 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Tianyi Gouc1e049f82011-11-23 14:20:16 -08002086 help
2087 Support for booting and shutting down the PRONTO processor (WCNSS).
2088 PRONTO is the wireless subsystem processor used in bluetooth, wireless
2089 LAN, and FM software applications.
2090
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002091config MSM_SCM
2092 bool "Secure Channel Manager (SCM) support"
2093 default n
2094
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002095config SCORPION_Uni_45nm_BUG
2096 bool "Scorpion Uni 45nm(SC45U): Workaround for ICIMVAU and BPIMVA"
2097 depends on ARCH_MSM7X30 || (ARCH_QSD8X50 && MSM_SOC_REV_A)
2098 default y
2099 help
2100 Invalidating the Instruction Cache by Modified Virtual Address to PoU and
2101 invalidating the Branch Predictor Array by Modified Virtual Address can
2102 create invalid entries in the TLB with the wrong ASID values on Scorpion
2103 Uniprocessor 45nm (SC45U) cores. This option enables the recommended software
2104 workaround for Scorpion Uniprocessor 45nm cores.
2105
2106 This bug is not applicable to any ScorpionMP or Scorpion Uni 65nm(SC65U) cores.
2107
Harini Jayaramanef7805f2011-09-28 12:45:31 -06002108config MSM_BUSPM_DEV
2109 tristate "MSM Bus Performance Monitor Kernel Module"
Gagan Mac0d5d49e2012-08-28 19:41:37 -06002110 depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
Harini Jayaramanef7805f2011-09-28 12:45:31 -06002111 default m
2112 help
2113 This kernel module is used to mmap() hardware registers for the
2114 performance monitors, counters, etc. The module can also be used to
2115 allocate physical memory which is used by bus performance hardware to
2116 dump performance data.
2117
Mona Hossain11c03ac2011-10-26 12:42:10 -07002118config MSM_TZ_LOG
2119 tristate "MSM Trust Zone (TZ) Log Driver"
2120 depends on DEBUG_FS
2121 help
2122 This option enables a driver with a debugfs interface for messages
2123 produced by the Secure code (Trust zone). These messages provide
2124 diagnostic information about TZ operation.
2125
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002126config MSM_RPM_LOG
2127 tristate "MSM Resource Power Manager Log Driver"
2128 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002129 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002130 default n
2131 help
2132 This option enables a driver which can read from a circular buffer
2133 of messages produced by the RPM. These messages provide diagnostic
2134 information about RPM operation. The driver outputs the messages
2135 via a debugfs node.
2136
2137config MSM_RPM_STATS_LOG
2138 tristate "MSM Resource Power Manager Stat Driver"
2139 depends on DEBUG_FS
Priyanka Mathur1af9d4b2012-10-30 14:55:44 -07002140 depends on MSM_RPM || MSM_RPM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002141 default n
2142 help
2143 This option enables a driver which reads RPM messages from a shared
2144 memory location. These messages provide statistical information about
2145 the low power modes that RPM enters. The drivers outputs the message
2146 via a debugfs node.
2147
Girish Mahadevan898c56d2012-06-05 16:09:19 -06002148config MSM_RPM_RBCPR_STATS_LOG
2149 tristate "MSM Resource Power Manager RPBCPR Stat Driver"
2150 depends on DEBUG_FS
2151 depends on MSM_RPM
2152 help
2153 This option enables a driver which reads RPM messages from a shared
2154 memory location. These messages provide statistical information about
2155 RBCPR (Rapid Bridge Core Power Reduction) information . The drivers
2156 outputs the message via a debugfs node.
2157
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002158config MSM_DIRECT_SCLK_ACCESS
2159 bool "Direct access to the SCLK timer"
2160 default n
2161
2162config IOMMU_API
2163 bool
Gregory Bean1963a2a2010-08-28 10:05:44 -07002164
Brian Swetland9e73c842007-11-26 04:12:13 -08002165config MSM_GPIOMUX
2166 bool
2167
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002168config MSM_SECURE_IO
Brian Swetland9e73c842007-11-26 04:12:13 -08002169 bool
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002170
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002171config MSM_NATIVE_RESTART
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002172 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002173
Taniya Dascd1d0232012-07-03 17:50:47 +05302174config MSM_MODEM_RESTART
2175 bool
2176
Matt Wagantall88b86312012-01-31 16:53:03 -08002177config MSM_PM2
2178 depends on PM
2179 bool
2180
2181config MSM_PM8X60
2182 depends on PM
2183 bool
2184
Girish Mahadevan388c3082012-09-10 15:30:36 -06002185config MSM_EVENT_TIMER
2186 bool "Event timer"
2187 help
2188 This option enables a modules that manages a list of event timers that
2189 need to be monitored by the PM. The enables the PM code to monitor
2190 events that require the core to be awake and ready to handle the
2191 event.
2192
Matt Wagantall88b86312012-01-31 16:53:03 -08002193config MSM_NOPM
2194 default y if !PM
2195 bool
2196
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002197config MSM_BUS_SCALING
2198 bool "Bus scaling driver"
2199 default n
2200
Gagan Mac85c70492011-06-10 16:07:47 -06002201config MSM_BUS_RPM_MULTI_TIER_ENABLED
2202 bool "RPM Multi-tiering Configuration"
2203 depends on MSM_BUS_SCALING
2204
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002205config MSM_WATCHDOG
2206 bool "MSM Watchdog Support"
Rohit Vaswanie897f842012-03-19 14:19:34 -07002207 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_FSM9XXX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002208 help
2209 This enables the watchdog as is present on 8x60. Currently we use
2210 core 0's watchdog, and reset the entire SoC if it times out. It does
2211 not run during the bootup process, so it will not catch any early
2212 lockups.
2213
Hanumant Singhd1f01022012-07-05 14:21:53 -07002214config MSM_WATCHDOG_V2
2215 bool "MSM Watchdog Support"
2216 help
2217 This enables the watchdog module. It causes kernel panic if the
2218 watchdog times out. It allows for detection of cpu hangs and
2219 deadlocks. It does not run during the bootup process, so it will
2220 not catch any early lockups.
2221
Hanumant Singh5e2541c2012-07-31 14:41:14 -07002222config MSM_MEMORY_DUMP
2223 bool "MSM Memory Dump Support"
2224 help
2225 This enables memory dump feature. It allows various client
2226 subsystems to register respective dump regions. At the time
2227 of deadlocks or cpu hangs these dump regions are captured to
2228 give a snapshot of the system at the time of the crash.
2229
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002230config MSM_DLOAD_MODE
2231 bool "Enable download mode on crashes"
Abhimanyu Kapurdd7f2692012-10-22 13:43:52 -07002232 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_MSM8974 || ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002233 default n
2234 help
2235 This makes the SoC enter download mode when it resets
2236 due to a kernel panic. Note that this doesn't by itself
2237 make the kernel reboot on a kernel panic - that must be
2238 enabled via another mechanism.
2239
Pratik Patel17f3b822011-11-21 12:41:47 -08002240config MSM_JTAG
Pratik Patel2963de42012-05-17 12:43:40 -07002241 bool "JTAG and kernel debug and trace support across power collapse"
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002242 help
Pratik Patel2963de42012-05-17 12:43:40 -07002243 Enables support for kernel debugging (specifically breakpoints) and
2244 processor tracing across power collapse both for JTag and OS hosted
2245 software running on the target. Enabling this will ensure debug
2246 and ETM registers are saved and restored across power collapse.
2247
2248 For production builds, you should probably say 'N' here to avoid
2249 potential power, performance and memory penalty.
Pratik Patel7831c082011-06-08 21:44:37 -07002250
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002251config MSM_ETM
2252 tristate "Enable MSM ETM and ETB"
Pratik Patel17f3b822011-11-21 12:41:47 -08002253 depends on ARCH_MSM8X60
2254 select MSM_JTAG
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002255 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002256 Enables embedded trace collection on MSM8660
Pratik Patel7831c082011-06-08 21:44:37 -07002257
Lynus Vazdde09ee2012-01-05 13:28:22 +05302258config MSM_SLEEP_STATS_DEVICE
2259 bool "Enable exporting of MSM sleep device stats to userspace"
2260
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302261config MSM_RUN_QUEUE_STATS
2262 bool "Enable collection and exporting of MSM Run Queue stats to userspace"
Subbaraman Narayanamurthy0b148fc2012-11-28 12:14:12 -08002263 default n
Krishna Vankae2922052012-03-02 09:59:12 +05302264 help
2265 This option enalbes statistics collection on Run Queue. A daemon
2266 in user mode, called MPDecision will be using this data to decide
2267 on when to switch off/on the other cores.
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302268
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002269config MSM_STANDALONE_POWER_COLLAPSE
2270 bool "Enable standalone power collapse"
2271 default n
2272
2273config MSM_GSBI9_UART
2274 bool "Enable GSBI9 UART device"
2275 default n
2276 help
2277 This enables GSBI9 configured into UART.
2278
2279config MSM_SHARED_GPIO_FOR_UART2DM
2280 bool "Use shared GPIOs into UART mode"
2281 depends on (ARCH_MSM7X27A && !MMC_MSM_SDC3_8_BIT_SUPPORT && !MMC_MSM_SDC4_SUPPORT)
2282 help
2283 This option configures GPIO muxed with SDC4/MMC3
2284 8-bit mode into UART mode. It is used for serial
2285 console on UART2DM. Say Y if you want to have
2286 serial console on UART2DM.
2287
2288config MSM_SHOW_RESUME_IRQ
2289 bool "Enable logging of interrupts that could have caused resume"
Bryan Huntsmancc147032011-11-23 13:03:56 -08002290 depends on (ARM_GIC || PMIC8058)
2291 default y if PMIC8058
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002292 default n
2293 help
2294 This option logs wake up interrupts that have triggered just before
2295 the resume loop unrolls. Say Y if you want to debug why the system
2296 resumed.
2297
2298config BT_MSM_PINTEST
2299 tristate "MSM Bluetooth Pin Connectivity Test"
2300 depends on ((ARCH_MSM8X60 || ARCH_MSM7X27A) && DEBUG_FS)
2301 default n
2302 help
2303 Bluetooth MSM Pin Connectivity test module.
2304 This driver provides support for verifying the MSM to BT pin
2305 connectivity.
2306
2307config MSM_FAKE_BATTERY
2308 depends on POWER_SUPPLY
2309 default n
2310 bool "MSM Fake Battery"
2311 help
2312 Enables MSM fake battery driver.
2313
2314config MSM_QDSP6_APR
2315 bool "Audio QDSP6 APR support"
2316 depends on MSM_SMD
2317 default n
2318 help
2319 Enable APR IPC protocol support between
2320 application processor and QDSP6. APR is
2321 used by audio driver to configure QDSP6's
2322 ASM, ADM and AFE.
2323
Joonwoo Park91d95462012-08-02 10:55:54 -07002324config MSM_QDSP6_APRV2
2325 bool "Audio QDSP6 APRv2 support"
2326 depends on MSM_SMD
2327 default n
2328 help
2329 Enable APRv2 IPC protocol support between
2330 application processor and QDSP6. APR is
2331 used by audio driver to configure QDSP6's
2332 ASM, ADM and AFE.
2333
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -07002334config MSM_QDSP6_CODECS
2335 bool "Audio Codecs on QDSP6 APR "
2336 depends on MSM_SMD
2337 default n
2338 help
2339 Enable Audio codecs with APR IPC protocol support between
2340 application processor and QDSP6. APR is
2341 used by audio driver to configure QDSP6's
2342 ASM, ADM and AFE.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002343
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002344config MSM_QDSP6V2_CODECS
2345 bool "Audio QDSP6V2 APR support"
2346 depends on MSM_SMD
2347 help
2348 Enable Audio codecs with APR IPC protocol support between
2349 application processor and QDSP6 for B-family. APR is
2350 used by audio driver to configure QDSP6's
2351 ASM, ADM and AFE.
2352
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002353config MSM_AUDIO_QDSP6
2354 bool "QDSP6 HW Audio support"
2355 select SND_SOC_MSM_QDSP6_INTF
2356 default n
2357 help
2358 Enable HW audio support in QDSP6.
2359 QDSP6 can support HW encoder & decoder and audio processing
2360
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002361config MSM_AUDIO_QDSP6V2
2362 bool "QDSP6V2 HW Audio support"
2363 select SND_SOC_MSM_QDSP6V2_INTF
2364 help
2365 Enable HW audio support in QDSP6V2.
2366 QDSP6V2 can support HW encoder & decoder and
2367 audio processing. It will enable support for
2368 AAC, AMRNB, AMRWB, EVRC, MP3, QCELP among
2369 others.
2370
Joonwoo Park4a14a552012-08-02 11:03:21 -07002371config MSM_ADSP_LOADER
2372 tristate "ADSP loader support"
2373 select SND_SOC_MSM_APRV2_INTF
2374 depends on MSM_AUDIO_QDSP6V2 && m
2375 help
2376 Enable ADSP image loader.
2377 The ADSP loader brings ADSP out of reset
2378 for the platforms that use APRv2.
2379 Say M if you want to enable this module.
2380
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +02002381config MSM_ULTRASOUND_A
2382 bool "QDSP6 HW Ultrasound support"
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002383 help
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +02002384 Enable HW ultrasound support in QDSP6.
2385 QDSP6 can support HW encoder & decoder and
2386 ultrasound processing. It will enable
2387 ultrasound data paths between
2388 HW and services, calculating input events
2389 upon the ultrasound data.
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002390
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002391config MSM_RPC_VIBRATOR
2392 bool "RPC based MSM Vibrator Support"
2393 depends on MSM_ONCRPCROUTER
2394 help
2395 Enable the vibrator support on MSM over RPC. The vibrator
2396 is connected on the PMIC. Say Y if you want to enable this
2397 feature.
2398
2399config PM8XXX_RPC_VIBRATOR
2400 bool "RPC based Vibrator on PM8xxx PMICs"
2401 depends on MSM_RPC_VIBRATOR
2402 help
2403 Enable the vibrator support on MSM over RPC. The vibrator
2404 is connected on the PM8XXX PMIC. Say Y if you want to enable
2405 this feature.
2406
2407config MSM_SPM_V1
2408 bool "Driver support for SPM Version 1"
2409 help
2410 Enables the support for Version 1 of the SPM driver. SPM hardware is
2411 used to manage the processor power during sleep. The driver allows
2412 configuring SPM to allow different power modes.
2413
2414config MSM_SPM_V2
2415 bool "Driver support for SPM Version 2"
2416 help
2417 Enables the support for Version 2 of the SPM driver. SPM hardware is
2418 used to manage the processor power during sleep. The driver allows
2419 configuring SPM to allow different power modes.
2420
2421config MSM_L2_SPM
2422 bool "SPM support for L2 cache"
2423 depends on MSM_SPM_V2
2424 help
2425 Enable SPM driver support for L2 cache. Some MSM chipsets allow
2426 control of L2 cache low power mode with a Subsystem Power manager.
2427 Enabling this driver allows configuring L2 SPM for low power modes
2428 on supported chipsets.
2429
Laura Abbott2d1760b2011-09-29 21:31:24 -07002430config MSM_MULTIMEDIA_USE_ION
2431 bool "Multimedia suport using Ion"
2432 depends on ION_MSM
2433 help
2434 Enable support for multimedia drivers using Ion for buffer management
2435 instead of pmem. Selecting this may also involve userspace
2436 dependencies as well.
2437
Naveen Ramaraj51f5e8b2012-04-09 15:58:40 -07002438config MSM_OCMEM
2439 bool "MSM On-Chip memory driver (OCMEM)"
2440 help
2441 Enable support for On-Chip Memory available on certain MSM chipsets.
2442 OCMEM is a low latency, high performance pool shared by subsystems.
2443
Naveen Ramaraj99b07562012-05-28 20:57:09 -07002444config MSM_OCMEM_LOCAL_POWER_CTRL
2445 bool "OCMEM Local Power Control"
2446 depends on MSM_OCMEM
2447 help
2448 Enable direct power management of the OCMEM core by the
2449 OCMEM driver. By default power management is delegated to
2450 the RPM. Selecting this option causes the OCMEM driver to
2451 directly handle the various macro power transitions.
2452
2453config MSM_OCMEM_DEBUG
2454 bool "OCMEM Debug Support"
2455 depends on MSM_OCMEM
2456 help
2457 Enable debug options for On-chip Memory (OCMEM) driver.
2458 Various debug options include memory, power and latency.
2459 Choosing one of these options allows debugging of each
2460 individual subsystem separately.
2461
Naveen Ramarajc71b2de2012-08-20 12:35:52 -07002462config MSM_OCMEM_NONSECURE
2463 bool "OCMEM Non Secure Mode"
2464 depends on MSM_OCMEM_DEBUG
2465 help
2466 Disable OCMEM interaction with secure processor.
2467 By default OCMEM is secured and accesses for each master
2468 is requested by the OCMEM driver. Selecting this option
2469 causes the OCMEM memory to be in non-secure state unless
2470 its locked down by the secure processor.
2471
Naveen Ramaraj99b07562012-05-28 20:57:09 -07002472config MSM_OCMEM_POWER_DEBUG
2473 bool "OCMEM Power Debug Support"
2474 depends on MSM_OCMEM_DEBUG
2475 help
2476 Enable debug support for OCMEM power management.
2477 This adds support for verifying all power management
2478 related operations of OCMEM. Both local power management
2479 and RPM assisted power management operations are supported.
2480
Naveen Ramaraj4b1d9392012-08-06 21:05:14 -07002481config MSM_OCMEM_POWER_DISABLE
2482 bool "OCMEM Disable Power Control"
2483 depends on MSM_OCMEM_DEBUG
2484 help
2485 Disable all OCMEM power management.
2486 This keeps all OCMEM macros turned ON at all times thus
2487 never allowing them to be turned OFF. Both local power
2488 management and RPM assisted power modes are supported.
2489
Naveen Ramaraj88f23632012-10-10 12:23:29 -07002490config SENSORS_ADSP
2491 bool "Enable Sensors Driver Support for ADSP"
2492 help
2493 Add support for sensors ADSP driver.
2494 This driver is used for exercising different sensors use cases,
2495 such as for lower-power OCMEM use cases, and for time syncing
2496 with ADSP clock.
2497
Laura Abbottad340ff2012-01-04 14:23:48 -08002498config MSM_RTB
2499 bool "Register tracing"
2500 help
2501 Add support for logging different events to a small uncached
2502 region. This is designed to aid in debugging reset cases where the
2503 caches may not be flushed before the target resets.
2504
2505config MSM_RTB_SEPARATE_CPUS
2506 bool "Separate entries for each cpu"
2507 depends on MSM_RTB
Laura Abbott9959f982012-02-28 11:30:50 -08002508 depends on SMP
Laura Abbottad340ff2012-01-04 14:23:48 -08002509 help
2510 Under some circumstances, it may be beneficial to give dedicated space
2511 for each cpu to log accesses. Selecting this option will log each cpu
2512 separately. This will guarantee that the last acesses for each cpu
2513 will be logged but there will be fewer entries per cpu
2514
Stepan Moskovchenko57884842012-06-07 17:35:49 -07002515config MSM_EBI_ERP
2516 bool "External Bus Interface (EBI) error reporting"
2517 help
2518 Say 'Y' here to enable reporting of external bus interface errors to
2519 the kernel log. Information such as the offending address and
2520 transaction type will be logged. This may be useful for debugging
2521 seemingly broken memory accesses.
2522
2523 For production builds, you should probably say 'N' here.
2524
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002525config MSM_CACHE_ERP
2526 bool "Cache / CPU error reporting"
2527 depends on ARCH_MSM_KRAIT
2528 help
2529 Say 'Y' here to enable reporting of cache and TLB errors to the kernel
2530 log. Enabling this feature can be used as a system debugging technique
2531 if cache corruption is suspected. Cache error statistics will also be
2532 reported in /proc/cpu/msm_cache_erp.
2533
2534 For production builds, you should probably say 'N' here.
2535
2536config MSM_L1_ERR_PANIC
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002537 bool "Panic on L1 cache errors"
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002538 depends on MSM_CACHE_ERP
2539 help
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002540 To cause the kernel to panic whenever an L1 cache error is detected, say
2541 'Y' here. This may be useful as a debugging technique if general system
2542 instability is suspected.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002543
2544 For production builds, you should probably say 'N' here.
2545
Stepan Moskovchenkoe1aba3d2012-12-06 18:40:25 -08002546config MSM_L1_RECOV_ERR_PANIC
2547 bool "Panic on recoverable L1 cache errors"
2548 depends on MSM_CACHE_ERP && MSM_L1_ERR_PANIC
2549 help
2550 Certain CPU designs may be able to automatically recover from certain
2551 kinds of L1 cache errors, even though the L1 cache itself may not
2552 support error correction. These errors should not result in any kind
2553 of corruption, but their presence is nevertheless an indication of
2554 poor system health. To cause the kernel to panic whenever a
2555 recoverable L1 cache error is detected, say 'Y' here. This may be
2556 useful as a debugging technique if general system instability is
2557 suspected.
2558
2559 For production builds, you should definitely say 'N' here.
2560
Stepan Moskovchenko7035f652012-05-31 17:48:01 -07002561config MSM_L1_ERR_LOG
2562 bool "Log CPU ERP events to system memory"
2563 depends on MSM_CACHE_ERP
2564 help
2565 Enable logging CPU ERP events to an area of memory that will be
2566 preserved across a system reset. This may be useful for detecting and
2567 troubleshooting ERP-related system crashes in the field.
2568
2569 For production builds, you may want to say 'Y' here.
2570
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002571config MSM_L2_ERP_PRINT_ACCESS_ERRORS
2572 bool "Report L2 master port slave/decode errors in kernel log"
2573 depends on MSM_CACHE_ERP
2574 help
2575 Master port errors can occur when a memory request is not properly
2576 handled by the destination slave. This can occur if the destination
2577 register does not exist or is inaccessible due to security
2578 restrictions or (in some cases) clock configuration. Enabling this
2579 option will cause a backtrace to be printed to the kernel log whenever
2580 such an error is encountered. Note that the error is reported as an
2581 interrupt rather than as an exception, meaning that the backtrace may
2582 have some skid. This option may help with debugging, though production
2583 builds should probably say 'N' here.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002584
2585config MSM_L2_ERP_PORT_PANIC
2586 bool "Panic on L2 master port errors"
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002587 depends on MSM_CACHE_ERP && MSM_L2_ERP_PRINT_ACCESS_ERRORS
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002588 help
2589 Master port errors can occur when a memory request is not properly
2590 handled by the destination slave. Enable this option to catch drivers
2591 which attempt to access bad areas of the address space, or access
2592 hardware registers in an improper state (such as certain clocks not
2593 being on). This option may help with debugging, though production
2594 builds should probably say 'N' here.
2595
2596config MSM_L2_ERP_1BIT_PANIC
2597 bool "Panic on recoverable L2 soft errors"
2598 depends on MSM_CACHE_ERP
2599 help
2600 Enable this option to cause a kernel panic whenever the L2 cache
2601 encounters a single-bit (correctable) soft error. This option should
2602 only be enabled when doing low-level debugging where cache corruption
2603 is suspected.
2604
2605 For production builds, you should definitely say 'N' here.
2606
2607config MSM_L2_ERP_2BIT_PANIC
2608 bool "Panic on unrecoverable L2 soft errors"
2609 depends on MSM_CACHE_ERP
2610 help
2611 Enable this option to cause a kernel panic whenever the L2 cache
2612 encounters a double-bit (non-correctable) soft error. Debug builds
2613 will likely benefit from having this option enabled to catch cache
2614 problems as soon as possible.
2615
2616 For production builds, it may be acceptable to say 'N' here, since
2617 an uncorrectable error might not necessarily cause further problems.
Laura Abbottad340ff2012-01-04 14:23:48 -08002618
Praveen Chidambaramf53ef1b2011-12-06 08:27:49 -07002619config MSM_DCVS
2620 bool "Use MSM DCVS for CPU/GPU Frequency control"
2621 depends on MSM_SCM
2622 help
2623 Enable support for MSM DCVS to control all CPU and GPU core frequencies.
2624 The DCVS manager allows idle driver to feed the idle information to the
2625 algorithm and the algorithm returns a frequency for the core which is
2626 passed to the frequency change driver.
2627
Pankaj Kumar32ce1ea2012-04-04 20:29:29 +05302628config MSM_CPR
2629 tristate "Use MSM CPR in S/W mode"
2630 help
2631 Enable CPR (core power reduction) in S/W mode, where the processor
2632 get's the notification from CPR block and programs the PMIC.
2633
2634config MSM_VP_REGULATOR
2635 tristate "Use MSM PMIC8029 C2 regulator"
2636 depends on ARCH_MSM8625
2637 help
2638 Enable MSM PMIC8029 C2 regulator support using APC_PLEVEL access
2639 for MSMs like 8625.
2640
Taniya Dasc43e6872012-03-21 16:41:14 +05302641config HAVE_ARCH_HAS_CURRENT_TIMER
2642 bool
Laura Abbott306bcc22012-03-08 11:24:53 -08002643
2644config MSM_CACHE_DUMP
2645 bool "Cache dumping support"
2646 help
2647 Add infrastructure to dump the L1 and L2 caches to an allocated buffer.
2648 This allows for analysis of the caches in case cache corruption is
2649 suspected.
2650
Laura Abbott7b637362012-03-29 16:43:49 -07002651config MSM_CACHE_DUMP_ON_PANIC
2652 bool "Dump caches on panic"
2653 depends on MSM_CACHE_DUMP
2654 help
2655 By default, the caches are flushed on panic. This means that trying to
2656 look at them in a RAM dump will give useless data. Select this if you
2657 want to dump the L1 and L2 caches on panic before any flush occurs.
2658 If unsure, say N
2659
Jack Phamccbbfab2012-04-09 19:50:20 -07002660config MSM_HSIC_SYSMON
2661 tristate "MSM HSIC system monitor driver"
2662 depends on USB
2663 help
2664 Add support for bridging with the system monitor interface of MDM
2665 over HSIC. This driver allows the local system monitor to
2666 communicate with the remote system monitor interface.
2667
2668config MSM_HSIC_SYSMON_TEST
2669 tristate "MSM HSIC system monitor bridge test"
2670 depends on USB && MSM_HSIC_SYSMON && DEBUG_FS
2671 help
2672 Enable the test hook for the Qualcomm system monitor HSIC driver.
2673 This will create a debugfs file entry named "hsic_sysmon_test" which
2674 can be read and written to send character data to the sysmon port of
2675 the modem over USB.
2676
Anirudh Ghayal0d2291a2012-09-20 21:31:41 +05302677config MSM_RPC_PMIC
2678 tristate "MSM RPC PMIC driver"
2679 depends on MSM_ONCRPCROUTER
2680 help
2681 This driver supports the PMIC functionality over RPC for those MSM's
2682 which do not have a direct access to PMIC. It supports ability to
2683 configure MPP, GPIO and all the other supported peripherals of the
2684 PMIC.
2685
Anirudh Ghayald3a63732012-09-20 22:13:13 +05302686config MSM_RPC_USB
2687 tristate "MSM RPC USB driver"
2688 depends on MSM_ONCRPCROUTER
2689 help
2690 This driver supports the USB configuration support over the RPC
2691 interface. It support the HS USB module connected to the MSM
2692 and FS USB which is connected over the PMIC. This support is
2693 required for MSMs on which the APPS does not have a direct access
2694 to the PMIC.
2695
2696config MSM_RPC_PMAPP
2697 tristate "MSM RPC PMIC APP driver"
2698 depends on MSM_ONCRPCROUTER
2699 help
2700 This driver supports the configuration of various PMIC APP modules
2701 such as display backlight, vreg pin-ctrl, smps clock over the RPC
2702 interface. This support is required for MSMs on which the APPS
2703 does not have a direct access to the PMIC.
Pushkar Joshi0fc73462012-09-26 17:59:31 -07002704
2705config MSM_ENABLE_WDOG_DEBUG_CONTROL
2706 bool "MSM Watchdog driver to disable debug Image"
2707 help
2708 This driver supports the configuration of the GCC_WDOG_DEBUG register
2709 used to control debug image.
2710 This support is currently required for MSM8974 to disable debug image
2711 on PS HOLD reset
Taniya Dasea4263f92012-08-22 18:52:51 +05302712
2713config MSM_FIQ
2714 bool "Enable FIQ for debugging"
2715 depends on ARCH_MSM8625
2716 select FIQ
Taniya Das36e4aa12012-07-04 18:27:16 +05302717 select GIC_SECURE
Taniya Dasea4263f92012-08-22 18:52:51 +05302718 help
2719 Enable any line to be used as an FIQ. This will help debugging
2720 if apps is not responding and holding lock with irqs disabled.
2721 Modem will then generate an raise a FIQ on this line before sending
2722 SMSM reset.
Greg Reidb1d240a2012-10-12 12:20:31 -04002723
2724config MSM_USE_USER_ACCESSIBLE_TIMERS
2725 bool "Enables mapping an MSM timer counter page to user space."
2726 depends on ARM_USE_USER_ACCESSIBLE_TIMERS
2727 help
2728 Enables MSM-specific user accessible timers via a shared
2729 memory page containing the cycle counter.
2730
Sidipotu Ashokbf84d4d2012-11-06 17:13:28 +05302731config USE_DEV_CTRL_VOLUME
2732 bool "Use Device Control Volume"
2733 help
2734 Use Device Control Volume as opposed to ALSA volume control.
2735
Jay Chokshi06e444f2012-12-06 20:48:23 -08002736config MSM_CPU_PWRCTL
2737 bool "Ensures that krait droop detectors are always off"
2738 help
2739 Droop detector mechanism can adversely affect krait plls during
2740 stand alone power collapse operation. Selecting this option
2741 ensures that they are always off.
2742
Brian Swetland9e73c842007-11-26 04:12:13 -08002743endif