blob: eb2837958681ad47f410736c1fdc4cc26472ecf6 [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
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070010 select MSM_REMOTE_SPINLOCK_SWP
11
12config ARCH_MSM7X25
13 bool "MSM7x25"
14 select ARCH_MSM_ARM11
15 select MSM_VIC
16 select CPU_V6
17 select MSM_REMOTE_SPINLOCK_SWP
Taniya Dasbe561a02011-10-12 09:53:11 +053018 select MULTI_IRQ_HANDLER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070019
20config ARCH_MSM7X27
21 bool "MSM7x27"
22 select ARCH_MSM_ARM11 if MSM_SOC_REV_NONE
23 select ARCH_HAS_BARRIERS if MSM_SOC_REV_NONE
24 select ARCH_MSM_CORTEX_A5 if MSM_SOC_REV_A
25 select MSM_VIC
26 select CPU_V6 if MSM_SOC_REV_NONE
27 select CPU_V7 if MSM_SOC_REV_A
28 select MSM_REMOTE_SPINLOCK_SWP if MSM_SOC_REV_NONE
29 select MSM_GPIOMUX
30 select REGULATOR
Taniya Dasbe561a02011-10-12 09:53:11 +053031 select MULTI_IRQ_HANDLER
Pankaj Kumar75c86fd2011-10-01 18:51:09 +053032 select MSM_PROC_COMM_REGULATOR
Laura Abbott1fbd2e62011-12-18 10:26:46 -080033 select CLEANCACHE
34 select QCACHE
Matt Wagantall88b86312012-01-31 16:53:03 -080035 select MSM_PM2 if PM
Krishna Vankae2922052012-03-02 09:59:12 +053036 select MSM_RUN_QUEUE_STATS if MSM_SOC_REV_A
Taniya Dasd4c39f92012-05-14 17:41:49 +053037 select DONT_MAP_HOLE_AFTER_MEMBANK0
Daniel Walkerbf83de42010-03-16 16:29:44 -070038
Daniel Walker7b521612010-05-06 12:44:57 -070039config ARCH_MSM7X30
40 bool "MSM7x30"
41 select ARCH_MSM_SCORPION
Daniel Walker7b521612010-05-06 12:44:57 -070042 select MSM_VIC
43 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070044 select MSM_REMOTE_SPINLOCK_DEKKERS
45 select ARCH_SPARSEMEM_ENABLE
Laura Abbott78593b52011-09-26 18:48:14 -070046 select ARCH_HAS_HOLES_MEMORYMODEL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070047 select MEMORY_HOTPLUG
48 select MEMORY_HOTREMOVE
Bryan Huntsmanea439642011-11-23 12:34:05 -080049 select ARCH_ENABLE_MEMORY_HOTPLUG
50 select ARCH_ENABLE_MEMORY_HOTREMOVE
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070051 select MIGRATION
52 select ARCH_MEMORY_PROBE
53 select ARCH_MEMORY_REMOVE
Gregory Beanab78cde2010-09-01 16:26:12 -070054 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070055 select RESERVE_FIRST_PAGE
56 select MSM_DALRPC
57 select MSM_SPM_V1
58 select REGULATOR
Justin Paupore637a25d2011-07-14 17:11:04 -070059 select MSM_PROC_COMM_REGULATOR
Taniya Dasbae99fb2011-10-12 09:55:13 +053060 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -080061 select MSM_PM2 if PM
Daniel Walker7b521612010-05-06 12:44:57 -070062
Daniel Walker4ad15e62010-05-06 13:54:17 -070063config ARCH_QSD8X50
64 bool "QSD8X50"
65 select ARCH_MSM_SCORPION
Daniel Walker4ad15e62010-05-06 13:54:17 -070066 select MSM_VIC
67 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070068 select MSM_REMOTE_SPINLOCK_LDREX
69 select CPU_USE_DOMAINS
70 select EMULATE_DOMAIN_MANAGER_V7
Gregory Beanab78cde2010-09-01 16:26:12 -070071 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070072 select MSM_DALRPC
Matt Wagantall88b86312012-01-31 16:53:03 -080073 select MSM_PM2 if PM
Daniel Walker46fe5f22010-08-18 11:00:25 -070074
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070075config ARCH_MSM8X60
76 bool "MSM8X60"
Jeff Ohlsteine14411d2010-11-30 13:06:36 -080077 select ARCH_MSM_SCORPIONMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070078 select SMP_PARALLEL_START if SMP
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070079 select ARM_GIC
80 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070081 select MSM_REMOTE_SPINLOCK_LDREX
82 select ARCH_REQUIRE_GPIOLIB
83 select MSM_ADM3
84 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -080085 select MSM_RPM_REGULATOR
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070086 select MSM_V2_TLMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070087 select MSM_PIL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070088 select ARCH_HAS_CPU_IDLE_WAIT
89 select MSM_DIRECT_SCLK_ACCESS
90 select MSM_RPM
91 select MSM_XO
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070092 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070093 select MSM_BUS_SCALING
94 select MSM_SECURE_IO
95 select MSM_DALRPC
96 select MSM_QDSP6_APR
97 select MSM_NATIVE_RESTART
98 select ARCH_INLINE_SPIN_TRYLOCK
99 select ARCH_INLINE_SPIN_TRYLOCK_BH
100 select ARCH_INLINE_SPIN_LOCK
101 select ARCH_INLINE_SPIN_LOCK_BH
102 select ARCH_INLINE_SPIN_LOCK_IRQ
103 select ARCH_INLINE_SPIN_LOCK_IRQSAVE
104 select ARCH_INLINE_SPIN_UNLOCK
105 select ARCH_INLINE_SPIN_UNLOCK_BH
106 select ARCH_INLINE_SPIN_UNLOCK_IRQ
107 select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
108 select ARCH_INLINE_READ_TRYLOCK
109 select ARCH_INLINE_READ_LOCK
110 select ARCH_INLINE_READ_LOCK_BH
111 select ARCH_INLINE_READ_LOCK_IRQ
112 select ARCH_INLINE_READ_LOCK_IRQSAVE
113 select ARCH_INLINE_READ_UNLOCK
114 select ARCH_INLINE_READ_UNLOCK_BH
115 select ARCH_INLINE_READ_UNLOCK_IRQ
116 select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
117 select ARCH_INLINE_WRITE_TRYLOCK
118 select ARCH_INLINE_WRITE_LOCK
119 select ARCH_INLINE_WRITE_LOCK_BH
120 select ARCH_INLINE_WRITE_LOCK_IRQ
121 select ARCH_INLINE_WRITE_LOCK_IRQSAVE
122 select ARCH_INLINE_WRITE_UNLOCK
123 select ARCH_INLINE_WRITE_UNLOCK_BH
124 select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
125 select CPU_HAS_L2_PMU
126 select MSM_SPM_V1
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530127 select MSM_SCM if SMP
128 select MULTI_IRQ_HANDLER
Laura Abbott46505f62011-11-02 18:06:55 -0700129 select MSM_MULTIMEDIA_USE_ION
Matt Wagantall88b86312012-01-31 16:53:03 -0800130 select MSM_PM8X60 if PM
Krishna Vankae2922052012-03-02 09:59:12 +0530131 select MSM_RUN_QUEUE_STATS
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700132
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800133config ARCH_MSM8960
134 bool "MSM8960"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700135 select ARCH_MSM_KRAITMP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800136 select ARM_GIC
137 select CPU_V7
138 select MSM_V2_TLMM
139 select MSM_GPIOMUX
140 select MSM_SCM if SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700141 select MSM_DIRECT_SCLK_ACCESS
142 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -0800143 select MSM_RPM_REGULATOR
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700144 select MSM_RPM
145 select MSM_XO
146 select MSM_QDSP6_APR
147 select MSM_PIL
148 select MSM_AUDIO_QDSP6 if SND_SOC
149 select CPU_HAS_L2_PMU
150 select MSM_SPM_V2
151 select MSM_L2_SPM
152 select MSM_NATIVE_RESTART
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700153 select DONT_MAP_HOLE_AFTER_MEMBANK0
154 select MSM_REMOTE_SPINLOCK_SFPB
155 select ARCH_POPULATES_NODE_MAP
156 select ARCH_SPARSEMEM_ENABLE
157 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basselb8d61022012-02-24 10:49:45 -0800158 select ENABLE_DMM
159 select MEMORY_HOTPLUG if ENABLE_DMM
160 select MEMORY_HOTREMOVE if ENABLE_DMM
161 select ARCH_ENABLE_MEMORY_HOTPLUG if ENABLE_DMM
162 select ARCH_ENABLE_MEMORY_HOTREMOVE if ENABLE_DMM
163 select MIGRATION if ENABLE_DMM
164 select ARCH_MEMORY_PROBE if ENABLE_DMM
165 select ARCH_MEMORY_REMOVE if ENABLE_DMM
166 select FIX_MOVABLE_ZONE if ENABLE_DMM
Larry Basseld4d82c92011-12-07 09:52:49 -0800167 select CLEANCACHE
168 select QCACHE
Laura Abbott6d61a912011-10-27 16:44:14 -0700169 select MSM_MULTIMEDIA_USE_ION
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530170 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800171 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700172 select HOLES_IN_ZONE if SPARSEMEM
Krishna Vankae2922052012-03-02 09:59:12 +0530173 select MSM_RUN_QUEUE_STATS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700174
175config ARCH_MSM8930
176 bool "MSM8930"
177 select ARCH_MSM_KRAITMP
178 select ARM_GIC
179 select CPU_V7
180 select MSM_V2_TLMM
181 select MSM_GPIOMUX
182 select MSM_SCM if SMP
183 select MSM_DIRECT_SCLK_ACCESS
184 select REGULATOR
David Collins5779cea2012-01-05 15:09:21 -0800185 select MSM_RPM_REGULATOR
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700186 select MSM_RPM
187 select MSM_XO
188 select MSM_QDSP6_APR
189 select MSM_PIL
190 select MSM_AUDIO_QDSP6 if SND_SOC
191 select CPU_HAS_L2_PMU
192 select MSM_SPM_V2
193 select MSM_L2_SPM
194 select MSM_NATIVE_RESTART
195 select DONT_MAP_HOLE_AFTER_MEMBANK0
Eric Holmbergeab10732011-09-23 19:44:43 -0600196 select MSM_REMOTE_SPINLOCK_SFPB
Larry Basself74479e2011-09-08 11:07:52 -0700197 select ARCH_POPULATES_NODE_MAP
198 select ARCH_SPARSEMEM_ENABLE
199 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basselb8d61022012-02-24 10:49:45 -0800200 select ENABLE_DMM
201 select MEMORY_HOTPLUG if ENABLE_DMM
202 select MEMORY_HOTREMOVE if ENABLE_DMM
203 select ARCH_ENABLE_MEMORY_HOTPLUG if ENABLE_DMM
204 select ARCH_ENABLE_MEMORY_HOTREMOVE if ENABLE_DMM
205 select MIGRATION if ENABLE_DMM
206 select ARCH_MEMORY_PROBE if ENABLE_DMM
207 select ARCH_MEMORY_REMOVE if ENABLE_DMM
208 select FIX_MOVABLE_ZONE if ENABLE_DMM
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +0200209 select MSM_ULTRASOUND
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530210 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800211 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700212 select HOLES_IN_ZONE if SPARSEMEM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700213
214config ARCH_APQ8064
215 bool "APQ8064"
216 select ARCH_MSM_KRAITMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700217 select MSM_V2_TLMM
218 select ARM_GIC
219 select CPU_V7
220 select MSM_SCM if SMP
Joel King4ebccc62011-07-22 09:43:22 -0700221 select MSM_GPIOMUX
Eric Holmberg40d21882011-09-27 09:42:03 -0600222 select MSM_REMOTE_SPINLOCK_SFPB
Swaminathan Sathappan47e5d932011-12-05 14:48:07 -0800223 select MSM_PIL
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800224 select MSM_QDSP6_APR
225 select MSM_AUDIO_QDSP6 if SND_SOC
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530226 select MULTI_IRQ_HANDLER
Praveen Chidambaram78499012011-11-01 17:15:17 -0600227 select MSM_RPM
228 select MSM_SPM_V2
229 select MSM_L2_SPM
Matt Wagantall88b86312012-01-31 16:53:03 -0800230 select MSM_PM8X60 if PM
Neil Leeder814d3d32012-01-19 17:21:43 -0500231 select CPU_HAS_L2_PMU
Laura Abbott085dd202012-03-30 14:02:34 -0700232 select HOLES_IN_ZONE if SPARSEMEM
Larry Bassel67b921d2012-04-06 10:23:27 -0700233 select ENABLE_DMM
234 select MEMORY_HOTPLUG if ENABLE_DMM
235 select MEMORY_HOTREMOVE if ENABLE_DMM
236 select ARCH_ENABLE_MEMORY_HOTPLUG if ENABLE_DMM
237 select ARCH_ENABLE_MEMORY_HOTREMOVE if ENABLE_DMM
238 select MIGRATION if ENABLE_DMM
239 select ARCH_MEMORY_PROBE if ENABLE_DMM
240 select ARCH_MEMORY_REMOVE if ENABLE_DMM
241 select FIX_MOVABLE_ZONE if ENABLE_DMM
242 select CLEANCACHE
243 select QCACHE
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -0600244 select MIGHT_HAVE_PCI
245 select ARCH_SUPPORTS_MSI
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700246
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700247config ARCH_MSMCOPPER
248 bool "MSM Copper"
249 select ARCH_MSM_KRAITMP
250 select MSM_V2_TLMM
251 select ARM_GIC
252 select CPU_V7
253 select MSM_SCM if SMP
254 select MSM_GPIOMUX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530255 select MULTI_IRQ_HANDLER
Olav Hauganb800c8c2012-01-30 08:50:45 -0800256 select MSM_MULTIMEDIA_USE_ION
Matt Wagantallc2bbdc32012-03-21 19:44:50 -0700257 select MSM_PIL
Praveen Chidambaramaa9d52b2012-04-02 11:09:47 -0600258 select MSM_SPM_V2
259 select MSM_L2_SPM
Praveen Chidambaram85b7b282012-04-16 13:45:15 -0600260 select MSM_PM8X60 if PM
Mahesh Sivasubramaniancb668712012-04-04 13:03:25 -0600261 select MSM_RPM_SMD
David Collinsc7642322012-04-04 10:19:12 -0700262 select REGULATOR
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700263
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700264config ARCH_FSM9XXX
265 bool "FSM9XXX"
266 select ARCH_MSM_SCORPION
267 select MSM_VIC
268 select CPU_V7
269 select MSM_REMOTE_SPINLOCK_LDREX
270 select FSM9XXX_TLMM
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530271 select MULTI_IRQ_HANDLER
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -0800272 select MSM_DALRPC
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800273
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700274config ARCH_MSM9615
275 bool "MSM9615"
276 select ARM_GIC
Taniya Dasb241bd82012-03-19 17:58:06 +0530277 select GIC_SECURE
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700278 select ARCH_MSM_CORTEX_A5
279 select CPU_V7
280 select MSM_V2_TLMM
281 select MSM_GPIOMUX
Praveen Chidambaramab3b1c42011-08-25 08:44:05 -0600282 select MSM_RPM
Maheshkumar Sivasubramanian738b4582011-09-06 17:26:24 -0600283 select MSM_SPM_V2
Rohit Vaswanif688fa62011-10-13 18:13:10 -0700284 select MSM_NATIVE_RESTART
Matt Wagantall9274df92011-12-15 11:11:05 -0800285 select REGULATOR
286 select MSM_RPM_REGULATOR
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530287 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800288 select MSM_PM8X60 if PM
Vikram Mulukutla2021c002011-12-16 12:32:59 -0800289 select MSM_XO
Olav Haugane6a0acd2012-04-05 09:29:12 -0700290 select MSM_MULTIMEDIA_USE_ION
Shiv Maliyappanahalli9ec55e92012-01-09 14:44:59 -0800291 select MSM_QDSP6_APR
292 select MSM_AUDIO_QDSP6 if SND_SOC
Rohit Vaswaniead426f2012-01-05 20:24:52 -0800293 select FIQ
Matt Wagantall9274df92011-12-15 11:11:05 -0800294
Taniya Das43bcdd62011-12-02 17:33:27 +0530295config ARCH_MSM8625
296 bool "MSM8625"
297 select ARCH_MSM_CORTEX_A5
298 select CPU_V7
299 select MSM_GPIOMUX
300 select ARM_GIC
301 select ARCH_MSM_CORTEXMP
302 select MULTI_IRQ_HANDLER
Trilok Soni3a453992012-03-06 18:46:22 +0530303 select ARM_TICKET_LOCKS
Krishna Vankae2922052012-03-02 09:59:12 +0530304 select MSM_RUN_QUEUE_STATS
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700305
306config ARCH_MSM9625
307 bool "MSM9625"
308 select ARM_GIC
309 select GIC_SECURE
310 select ARCH_MSM_CORTEX_A5
311 select SMP
312 select MSM_SMP
313 select CPU_V7
314 select MULTI_IRQ_HANDLER
315 select MSM_V2_TLMM
316
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -0700317endmenu
Daniel Walkerbf83de42010-03-16 16:29:44 -0700318
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700319choice
320 prompt "MSM SoC Revision"
321 default MSM_SOC_REV_NONE
322config MSM_SOC_REV_NONE
323 bool "N/A"
324 select EMULATE_DOMAIN_MANAGER_V7 if ARCH_QSD8X50
325 select VERIFY_PERMISSION_FAULT if ARCH_QSD8X50
Daniel Walker4ad15e62010-05-06 13:54:17 -0700326config MSM_SOC_REV_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700327 bool "Rev. A"
328 select ARCH_MSM7X27A if ARCH_MSM7X27
329endchoice
Daniel Walker4ad15e62010-05-06 13:54:17 -0700330
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700331config MSM_KRAIT_TBB_ABORT_HANDLER
332 bool "Krait TBB/TBH data abort handler"
333 depends on ARCH_MSM_KRAIT
334 depends on ARM_THUMB
335 help
336 Certain early samples of the Krait processor may generate data
337 aborts for TBB / TBH instructions that fail their condition code
338 checks. Enabling this option will ignore these erroneous data aborts,
339 at the expense of a very small performance penalty.
340
341 If unsure, say N.
342
Daniel Walker4ad15e62010-05-06 13:54:17 -0700343config ARCH_MSM_ARM11
344 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700345
Daniel Walker4ad15e62010-05-06 13:54:17 -0700346config ARCH_MSM_SCORPION
Daniel Walkerbf83de42010-03-16 16:29:44 -0700347 bool
348
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700349config ARCH_MSM_KRAIT
Daniel Walker46fe5f22010-08-18 11:00:25 -0700350 bool
Stephen Boyd51cabbe2011-12-02 13:28:56 -0800351 select ARM_L1_CACHE_SHIFT_6
Daniel Walker46fe5f22010-08-18 11:00:25 -0700352
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700353config MSM_SMP
354 bool
355
356config ARCH_MSM_SCORPIONMP
357 select ARCH_MSM_SCORPION
358 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530359 select HAVE_ARCH_HAS_CURRENT_TIMER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700360 bool
361
362config ARCH_MSM_KRAITMP
363 select ARCH_MSM_KRAIT
364 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530365 select HAVE_ARCH_HAS_CURRENT_TIMER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700366 bool
367
Taniya Das43bcdd62011-12-02 17:33:27 +0530368config ARCH_MSM_CORTEXMP
369 select MSM_SMP
370 bool
371
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700372config ARCH_MSM_CORTEX_A5
Bryan Huntsman239ef1e2011-11-23 15:09:13 -0800373 bool
Rohit Vaswaniaf7ae272012-01-09 10:28:57 -0800374 select HAVE_HW_BRKPT_RESERVED_RW_ACCESS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700375
376config ARCH_MSM7X27A
377 bool
378 select MSM_DALRPC
Justin Pauporeb3a33b72011-08-23 15:30:32 -0700379 select MSM_PROC_COMM_REGULATOR
Taniya Das86e0e132011-10-19 11:32:00 +0530380 select MULTI_IRQ_HANDLER
Taniya Das43bcdd62011-12-02 17:33:27 +0530381 select ARM_GIC
382 select ARCH_MSM_CORTEXMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700383
Gregory Beanf9f3d312010-04-30 22:06:50 -0700384config MSM_VIC
385 bool
Daniel Walkerbf83de42010-03-16 16:29:44 -0700386
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700387config MSM_RPM
388 bool "Resource Power Manager"
389 select MSM_MPM
390
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600391config MSM_RPM_SMD
392 depends on MSM_SMD
393 bool "Support for using SMD as the transport layer for communicatons with RPM"
394
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700395config MSM_MPM
396 bool "Modem Power Manager"
397
398config MSM_XO
399 bool
400
401config MSM_REMOTE_SPINLOCK_DEKKERS
402 bool
403config MSM_REMOTE_SPINLOCK_SWP
404 bool
405config MSM_REMOTE_SPINLOCK_LDREX
406 bool
Eric Holmbergeab10732011-09-23 19:44:43 -0600407config MSM_REMOTE_SPINLOCK_SFPB
408 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700409config MSM_ADM3
410 bool
411
412menu "MSM Board Selection"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700413
414config MACH_HALIBUT
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700415 depends on ARCH_MSM7X01A
416 depends on MSM_STACKED_MEMORY
417 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700418 bool "Halibut Board (QCT SURF7201A)"
419 help
420 Support for the Qualcomm SURF7201A eval board.
421
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700422config MACH_MSM7201A_SURF
423 depends on ARCH_MSM7X01A
424 depends on MSM_STACKED_MEMORY
425 default y
426 bool "MSM7201A SURF"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700427 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700428 Support for the Qualcomm MSM7201A SURF eval board.
429
430config MACH_MSM7201A_FFA
431 depends on ARCH_MSM7X01A
432 depends on MSM_STACKED_MEMORY
433 default y
434 bool "MSM7201A FFA"
435 help
436 Support for the Qualcomm MSM7201A FFA eval board.
437
438config MACH_TROUT
439 depends on ARCH_MSM7X01A
440 depends on MSM_STACKED_MEMORY
441 default y
442 bool "Trout"
443
444config MACH_MSM7X27_SURF
445 depends on ARCH_MSM7X27
446 depends on !MSM_STACKED_MEMORY
447 default y
448 bool "MSM7x27 SURF"
449 help
450 Support for the Qualcomm MSM7x27 SURF eval board.
451
452config MACH_MSM7X27_FFA
453 depends on ARCH_MSM7X27
454 depends on !MSM_STACKED_MEMORY
455 default y
456 bool "MSM7x27 FFA"
457 help
458 Support for the Qualcomm MSM7x27 FFA eval board.
459
460config MACH_MSM7X27A_RUMI3
461 depends on ARCH_MSM7X27A
462 depends on !MSM_STACKED_MEMORY
463 default y
464 bool "MSM7x27A RUMI3"
465 help
466 Support for the Qualcomm MSM7x27A RUMI3 Emulation Platform.
467
468config MACH_MSM7X27A_SURF
469 depends on ARCH_MSM7X27A
470 depends on !MSM_STACKED_MEMORY
471 default y
472 bool "MSM7x27A SURF"
473 help
474 Support for the Qualcomm MSM7x27A SURF.
475
476config MACH_MSM7X27A_FFA
477 depends on ARCH_MSM7X27A
478 depends on !MSM_STACKED_MEMORY
479 default y
480 bool "MSM7x27A FFA"
481 help
482 Support for the Qualcomm MSM7x27A FFA.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700483
Trilok Soni3d0f6c52011-07-26 16:06:58 +0530484config MACH_MSM7625A_SURF
485 depends on ARCH_MSM7X27A
486 depends on !MSM_STACKED_MEMORY
487 default y
488 bool "MSM7625A SURF"
489 help
490 Support for the Qualcomm MSM7625A SURF.
491
492config MACH_MSM7625A_FFA
493 depends on ARCH_MSM7X27A
494 depends on !MSM_STACKED_MEMORY
495 default y
496 bool "MSM7625A FFA"
497 help
498 Support for the Qualcomm MSM7625A FFA.
499
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530500config MACH_MSM7627A_QRD1
501 depends on ARCH_MSM7X27A
502 depends on !MSM_STACKED_MEMORY
503 default y
504 bool "MSM7627A QRD1"
505 help
Chintan Pandyab1bad0e2012-02-06 19:04:51 +0530506 Support for the Qualcomm MSM7627A Reference Design.
507
508config MACH_MSM7627A_QRD3
509 depends on ARCH_MSM7X27A
510 depends on !MSM_STACKED_MEMORY
511 default y
512 bool "MSM7627A QRD3"
513 help
514 Support for the Qualcomm MSM7627A Reference Design.
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530515
Taniya Dasc868a2e2012-01-03 10:18:47 +0530516config MACH_MSM7627A_EVB
517 depends on ARCH_MSM7X27A
518 depends on !MSM_STACKED_MEMORY
519 default y
520 bool "MSM7627A EVB"
521 help
522 Support for the Qualcomm MSM7627A Reference Design.
523
Taniya Das43bcdd62011-12-02 17:33:27 +0530524config MACH_MSM8625_RUMI3
525 depends on ARCH_MSM8625
526 depends on !MSM_STACKED_MEMORY
527 default y
528 bool "MSM8625 RUMI3"
529 help
530 Support for the Qualcomm MSM8625 RUMI3 Emulation Platform.
531
Taniya Dase3027e22012-02-27 16:32:27 +0530532config MACH_MSM8625_SURF
533 depends on ARCH_MSM8625
534 depends on !MSM_STACKED_MEMORY
535 default y
536 bool "MSM8625 SURF"
537 help
538 Support for the Qualcomm MSM8625 SURF.
539
Aparna Mallavarapu9f000a72012-04-20 15:37:57 +0530540config MACH_MSM8625_FFA
541 depends on ARCH_MSM8625
542 depends on !MSM_STACKED_MEMORY
543 default y
544 bool "MSM8625 FFA"
545 help
546 Support for the Qualcomm MSM8625 FFA.
547
Chintan Pandyaf4ad4002012-02-28 19:49:03 +0530548config MACH_MSM8625_EVB
549 depends on ARCH_MSM8625
550 depends on !MSM_STACKED_MEMORY
551 default y
552 bool "MSM8625 EVB"
553 help
554 Support for the Qualcomm MSM8625 Reference Design.
555
Taniya Dasbd096542012-03-15 17:43:45 +0530556config MACH_MSM8625_QRD7
557 depends on ARCH_MSM8625
558 depends on !MSM_STACKED_MEMORY
559 default y
560 bool "MSM8625 QRD7"
561 help
562 Support for the Qualcomm MSM8625 Reference Design.
563
Aparna Mallavarapu5a326242012-05-09 19:49:02 +0530564config MACH_MSM8625_EVT
565 depends on ARCH_MSM8625
566 depends on !MSM_STACKED_MEMORY
567 default y
568 bool "MSM8625 EVT"
569 help
570 Support for the Qualcomm MSM8625 Reference Design.
571
Daniel Walker7b521612010-05-06 12:44:57 -0700572config MACH_MSM7X30_SURF
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700573 depends on ARCH_MSM7X30
574 depends on !MSM_STACKED_MEMORY
575 default y
576 bool "MSM7x30 SURF"
577 help
578 Support for the Qualcomm MSM7x30 SURF eval board.
579
580config MACH_MSM7X30_FFA
581 depends on ARCH_MSM7X30
582 depends on !MSM_STACKED_MEMORY
583 default y
584 bool "MSM7x30 FFA"
585 help
586 Support for the Qualcomm MSM7x30 FFA eval board.
587
588config MACH_MSM7X30_FLUID
589 depends on ARCH_MSM7X30
590 depends on !MSM_STACKED_MEMORY
591 default y
592 bool "MSM7x30 FLUID"
593 help
594 Support for the Qualcomm MSM7x30 FLUID eval board.
595
596config MACH_SAPPHIRE
597 depends on ARCH_MSM7X01A
598 default n
599 bool "Sapphire"
Daniel Walker7b521612010-05-06 12:44:57 -0700600
Daniel Walker4ad15e62010-05-06 13:54:17 -0700601config MACH_QSD8X50_SURF
602 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700603 depends on MSM_SOC_REV_NONE
604 depends on MSM_STACKED_MEMORY
605 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700606 bool "QSD8x50 SURF"
607 help
608 Support for the Qualcomm QSD8x50 SURF eval board.
609
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700610config MACH_QSD8X50_FFA
Daniel Walker4ad15e62010-05-06 13:54:17 -0700611 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700612 depends on MSM_SOC_REV_NONE
613 depends on MSM_STACKED_MEMORY
614 default y
615 bool "QSD8x50 FFA"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700616 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700617 Support for the Qualcomm QSD8x50 FFA eval board.
618
619config MACH_MSM7X25_SURF
620 depends on ARCH_MSM7X25
621 depends on !MSM_STACKED_MEMORY
622 default y
623 bool "MSM7x25 SURF"
624 help
625 Support for the Qualcomm MSM7x25 SURF eval board.
626
627config MACH_MSM7X25_FFA
628 depends on ARCH_MSM7X25
629 depends on !MSM_STACKED_MEMORY
630 default y
631 bool "MSM7x25 FFA"
632 help
633 Support for the Qualcomm MSM7x25 FFA eval board.
634
635config MACH_MSM8X55_SURF
636 depends on ARCH_MSM7X30
637 depends on !MSM_STACKED_MEMORY
638 default y
639 bool "MSM8X55 SURF"
640 help
641 Support for the Qualcomm MSM8x55 SURF eval board.
642
643config MACH_MSM8X55_FFA
644 depends on ARCH_MSM7X30
645 depends on !MSM_STACKED_MEMORY
646 default y
647 bool "MSM8X55 FFA"
648 help
649 Support for the Qualcomm MSM8x55 FFA eval board.
650
651config MACH_MSM8X55_SVLTE_FFA
652 depends on ARCH_MSM7X30
653 depends on !MSM_STACKED_MEMORY
654 default y
655 bool "MSM8X55 SVLTE FFA"
656 help
657 Support for the Qualcomm MSM8x55 SVLTE FFA eval board.
658
659config MACH_MSM8X55_SVLTE_SURF
660 depends on ARCH_MSM7X30
661 depends on !MSM_STACKED_MEMORY
662 default y
663 bool "MSM8X55 SVLTE SURF"
664 help
665 Support for the Qualcomm MSM8x55 SVLTE SURF eval board.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700666
Steve Mucklea55df6e2010-01-07 12:43:24 -0800667config MACH_MSM8X60_RUMI3
668 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700669 default n
Steve Mucklea55df6e2010-01-07 12:43:24 -0800670 bool "MSM8x60 RUMI3"
671 help
672 Support for the Qualcomm MSM8x60 RUMI3 emulator.
673
Steve Muckle57bbf1c2010-01-07 12:51:10 -0800674config MACH_MSM8X60_SIM
675 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700676 default n
Steve Muckle57bbf1c2010-01-07 12:51:10 -0800677 bool "MSM8x60 Simulator"
678 help
679 Support for the Qualcomm MSM8x60 simulator.
680
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700681config MACH_MSM8X60_SURF
682 depends on ARCH_MSM8X60
683 default n
684 bool "MSM8x60 SURF"
685 help
686 Support for the Qualcomm MSM8x60 SURF eval board.
687
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700688config MACH_MSM8X60_FFA
689 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700690 default n
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700691 bool "MSM8x60 FFA"
692 help
693 Support for the Qualcomm MSM8x60 FFA eval board.
694
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700695config MACH_MSM8X60_FLUID
696 depends on ARCH_MSM8X60
697 default n
698 bool "MSM8x60 FLUID"
699 help
700 Support for the Qualcomm MSM8x60 FLUID platform. The FLUID is an
701 8x60 target which has a form factor that is much closer to that
702 of a phone than other targets. It also has a new display and
703 touchscreen controller.
704
705config MACH_MSM8X60_FUSION
706 depends on ARCH_MSM8X60
707 default n
708 bool "MSM8x60 FUSION"
709 help
710 Support for the Qualcomm MSM8x60 Fusion SURF device.
711
712config MACH_MSM8X60_FUSN_FFA
713 depends on ARCH_MSM8X60
714 default n
715 bool "MSM8x60 FUSN FFA"
716 help
717 Support for the Qualcomm MSM8x60 Fusion FFA device.
718
Zhang Chang Kenef05b172011-07-27 15:28:13 -0400719config MACH_MSM8X60_DRAGON
720 depends on ARCH_MSM8X60
721 default n
722 bool "MSM8x60 DRAGON"
723 help
724 Support for the Qualcomm MSM8x60 Dragon board.
725
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800726config MACH_MSM8960_SIM
727 depends on ARCH_MSM8960
728 bool "MSM8960 Simulator"
729 help
730 Support for the Qualcomm MSM8960 simulator.
731
Stepan Moskovchenko50ede4e2010-12-13 18:12:19 -0800732config MACH_MSM8960_RUMI3
733 depends on ARCH_MSM8960
734 bool "MSM8960 RUMI3"
735 help
736 Support for the Qualcomm MSM8960 RUMI3 emulator.
737
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700738config MACH_MSM8960_CDP
739 depends on ARCH_MSM8960
740 bool "MSM8960 CDP"
741 help
742 Support for the Qualcomm MSM8960 CDP device.
743
744config MACH_MSM8960_MTP
745 depends on ARCH_MSM8960
746 bool "MSM8960 MTP"
747 help
748 Support for the Qualcomm MSM8960 MTP device.
749
750config MACH_MSM8960_FLUID
751 depends on ARCH_MSM8960
752 bool "MSM8960 FLUID"
753 help
754 Support for the Qualcomm MSM8960 FLUID device.
755
Amir Samuelov0d1f8ae2011-07-28 11:13:58 +0300756config MACH_MSM8960_LIQUID
757 depends on ARCH_MSM8960
758 bool "MSM8960 LIQUID"
759 help
760 Support for the Qualcomm MSM8960 LIQUID device.
761
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700762config MACH_MSM8930_CDP
763 depends on ARCH_MSM8930
764 bool "MSM8930 CDP"
765 help
766 Support for the Qualcomm MSM8930 CDP device.
767
768config MACH_MSM8930_MTP
769 depends on ARCH_MSM8930
770 bool "MSM8930 MTP"
771 help
772 Support for the Qualcomm MSM8930 MTP device.
773
774config MACH_MSM8930_FLUID
775 depends on ARCH_MSM8930
776 bool "MSM8930 FLUID"
777 help
778 Support for the Qualcomm MSM8930 FLUID device.
779
Stepan Moskovchenko8768eff2011-12-01 18:55:07 -0800780config MACH_MSM8627_CDP
781 depends on ARCH_MSM8930
782 bool "MSM8627 CDP"
783 help
784 Support for the Qualcomm MSM8627 CDP device.
785
786config MACH_MSM8627_MTP
787 depends on ARCH_MSM8930
788 bool "MSM8627 MTP"
789 help
790 Support for the Qualcomm MSM8627 MTP device.
791
Rohit Vaswania8e7a832011-09-28 21:00:05 -0700792config MACH_MSM9615_CDP
793 depends on ARCH_MSM9615
794 bool "MSM9615 CDP"
795 help
796 Support for the Qualcomm MSM9615 CDP device.
797
798config MACH_MSM9615_MTP
799 depends on ARCH_MSM9615
800 bool "MSM9615 MTP"
801 help
802 Support for the Qualcomm MSM9615 MTP device.
803
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700804config MSM_USE_TSIF1
805 depends on ARCH_MSM8X60
806 bool "MSM8x60 use TSIF1"
807 help
808 Selects TSIF1 core to be used rather than TSIF0.
809 The two TSIF cores share the same DM configuration
810 so they cannot be used simultaneously.
811
812config MACH_APQ8064_SIM
813 depends on ARCH_APQ8064
814 bool "APQ8064 Simulator"
815 help
816 Support for the Qualcomm APQ8064 simulator.
817
Stepan Moskovchenkod256ddf2011-09-08 12:34:46 -0700818config MACH_APQ8064_RUMI3
819 depends on ARCH_APQ8064
820 bool "APQ8064 RUMI3"
821 help
822 Support for the Qualcomm APQ8064 RUMI3 emulator.
823
Joel King82b7e3f2012-01-05 10:03:27 -0800824config MACH_APQ8064_CDP
825 depends on ARCH_APQ8064
826 bool "APQ8064 CDP"
827 help
828 Support for the Qualcomm APQ8064 CDP device.
829
830config MACH_APQ8064_MTP
831 depends on ARCH_APQ8064
832 bool "APQ8064 MTP"
833 help
834 Support for the Qualcomm APQ8064 MTP device.
835
836config MACH_APQ8064_LIQUID
837 depends on ARCH_APQ8064
838 bool "APQ8064 LIQUID"
839 help
840 Support for the Qualcomm APQ8064 LIQUID device.
841
Joel King064bbf82012-04-01 13:23:39 -0700842config MACH_MPQ8064_CDP
843 depends on ARCH_APQ8064
844 bool "MPQ8064 CDP"
845 help
846 Support for the Qualcomm MPQ8064 CDP device.
847
Joel King11ca8202012-02-13 16:19:03 -0800848config MACH_MPQ8064_HRD
849 depends on ARCH_APQ8064
850 bool "MPQ8064 HRD"
851 help
852 Support for the Qualcomm MPQ8064 HRD device.
853
854config MACH_MPQ8064_DTV
855 depends on ARCH_APQ8064
856 bool "MPQ8064 DTV"
857 help
858 Support for the Qualcomm MPQ8064 DTV device.
859
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700860config MACH_FSM9XXX_SURF
861 depends on ARCH_FSM9XXX
862 depends on !MSM_STACKED_MEMORY
863 default y
864 bool "FSM9XXX SURF"
865 help
866 Support for the Qualcomm FSM9xxx femtocell
867 chipset based SURF evaluation board and
868 FFA board.
869
Daniel Walker4ad15e62010-05-06 13:54:17 -0700870endmenu
Brian Swetland9e73c842007-11-26 04:12:13 -0800871
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700872config MSM_STACKED_MEMORY
873 bool "Stacked Memory"
874 default y
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800875 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700876 This option is used to indicate the presence of on-die stacked
877 memory. When present this memory bank is used for a high speed
878 shared memory interface. When not present regular RAM is used.
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800879
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700880config PHYS_OFFSET
881 hex
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700882 default "0x40800000" if ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700883 default "0x80200000" if ARCH_APQ8064
884 default "0x80200000" if ARCH_MSM8960
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700885 default "0x80200000" if ARCH_MSM8930
Sathish Ambley39a1dc42012-03-19 21:46:26 -0700886 default "0x20200000" if ARCH_MSMCOPPER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700887 default "0x10000000" if ARCH_FSM9XXX
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700888 default "0x20200000" if ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700889 default "0x00200000" if !MSM_STACKED_MEMORY
890 default "0x00000000" if ARCH_QSD8X50 && MSM_SOC_REV_A
891 default "0x20000000" if ARCH_QSD8X50
892 default "0x40200000" if ARCH_MSM8X60
893 default "0x10000000"
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800894
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700895config KERNEL_PMEM_EBI_REGION
896 bool "Enable in-kernel PMEM region for EBI"
897 default y if ARCH_MSM8X60
Olav Hauganb800c8c2012-01-30 08:50:45 -0800898 depends on ANDROID_PMEM && (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSMCOPPER)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700899 help
900 Enable the in-kernel PMEM allocator to use EBI memory.
901
902config KERNEL_PMEM_SMI_REGION
903 bool "Enable in-kernel PMEM region for SMI"
904 default y if ARCH_MSM8X60
905 depends on ANDROID_PMEM && ((ARCH_QSD8X50 && !PMEM_GPU0) || (ARCH_MSM8X60 && !VCM))
906 help
907 Enable the in-kernel PMEM allocator to use SMI memory.
908
909config PMEM_GPU0
910 bool "Enable PMEM GPU0 region"
911 default y
912 depends on ARCH_QSD8X50 && ANDROID_PMEM
913 help
914 Enable the PMEM GPU0 device on SMI Memory.
915
916config MSM_AMSS_VERSION
917 int
918 default 6210 if MSM_AMSS_VERSION_6210
919 default 6220 if MSM_AMSS_VERSION_6220
920 default 6225 if MSM_AMSS_VERSION_6225
921
922choice
923 prompt "AMSS modem firmware version"
924
925 default MSM_AMSS_VERSION_6225
926
927 config MSM_AMSS_VERSION_6210
928 bool "6.2.10"
929
930 config MSM_AMSS_VERSION_6220
931 bool "6.2.20"
932
933 config MSM_AMSS_VERSION_6225
934 bool "6.2.20 + New ADSP"
935endchoice
Stepan Moskovchenko2607b0a2010-11-15 17:46:10 -0800936
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700937config MSM_HAS_DEBUG_UART_HS
938 bool
939 help
940 Say Y here if high speed MSM UART is present.
941
942config MSM_HAS_DEBUG_UART_HS_V14
943 bool
944 select MSM_HAS_DEBUG_UART_HS
945 help
946 Say Y here if high speed MSM UART v1.4 is present.
947
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530948config MSM_DEBUG_UART_PHYS
949 hex
950 default 0xA9A00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART1
951 default 0xACA00000 if ARCH_MSM7X30 && DEBUG_MSM_UART1
952 default 0x94000000 if ARCH_FSM9XXX && DEBUG_MSM_UART1
953 default 0xA9B00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART2
954 default 0xACB00000 if ARCH_MSM7X30 && DEBUG_MSM_UART2
955 default 0x94100000 if ARCH_FSM9XXX && DEBUG_MSM_UART2
956 default 0xA9C00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART3
957 default 0xACC00000 if ARCH_MSM7X30 && DEBUG_MSM_UART3
958
Pavel Machek6339f662009-11-02 11:48:29 +0100959choice
960 prompt "Debug UART"
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800961 depends on DEBUG_LL
Pavel Machek6339f662009-11-02 11:48:29 +0100962
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800963 config DEBUG_MSM_UART1
964 bool "Kernel low-level debugging messages via MSM UART1"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530965 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800966 help
967 Say Y here if you want the debug print routines to direct
968 their output to the first serial port on MSM devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100969
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800970 config DEBUG_MSM_UART2
971 bool "Kernel low-level debugging messages via MSM UART2"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530972 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800973 help
974 Say Y here if you want the debug print routines to direct
975 their output to the second serial port on MSM devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100976
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800977 config DEBUG_MSM_UART3
978 bool "Kernel low-level debugging messages via MSM UART3"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530979 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800980 help
981 Say Y here if you want the debug print routines to direct
982 their output to the third serial port on MSM devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100983
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800984 config DEBUG_MSM8660_UART
985 bool "Kernel low-level debugging messages via MSM 8660 UART"
986 depends on ARCH_MSM8X60
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700987 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800988 help
989 Say Y here if you want the debug print routines to direct
990 their output to the serial port on MSM 8660 devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100991
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800992 config DEBUG_MSM8960_UART
993 bool "Kernel low-level debugging messages via MSM 8960 UART"
Stepan Moskovchenko824db172012-05-29 18:05:09 -0700994 depends on ARCH_MSM8960 && DEBUG_LL
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800995 select DEBUG_MSM8930_UART
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700996 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800997 help
998 Say Y here if you want the debug print routines to direct
999 their output to the serial port on MSM 8960 devices.
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001000
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001001 config DEBUG_MSM8930_UART
1002 bool "Kernel low-level debugging messages via MSM 8930 UART"
1003 depends on ARCH_MSM8930 && DEBUG_LL
1004 select MSM_HAS_DEBUG_UART_HS
1005 help
1006 Say Y here if you want the debug print routines to direct
1007 their output to the serial port on MSM 8930 devices.
1008
1009 config DEBUG_APQ8064_UART
1010 bool "Kernel low-level debugging messages via APQ 8064 UART"
1011 depends on ARCH_APQ8064 && DEBUG_LL
1012 select MSM_HAS_DEBUG_UART_HS
1013 help
1014 Say Y here if you want the debug print routines to direct
1015 their output to the serial port on APQ 8064 devices.
1016
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001017 config DEBUG_MSMCOPPER_UART
1018 bool "Kernel low-level debugging messages via MSM Copper UART"
1019 depends on ARCH_MSMCOPPER
1020 select MSM_HAS_DEBUG_UART_HS_V14
1021 help
1022 Say Y here if you want the debug print routines to direct
1023 their output to the serial port on MSM Copper devices.
Pavel Machek6339f662009-11-02 11:48:29 +01001024endchoice
1025
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001026choice
1027 prompt "Default Timer"
1028 default MSM7X00A_USE_GP_TIMER
1029
1030 config MSM7X00A_USE_GP_TIMER
1031 bool "GP Timer"
1032 help
1033 Low resolution timer that allows power collapse from idle.
1034
1035 config MSM7X00A_USE_DG_TIMER
1036 bool "DG Timer"
1037 help
1038 High resolution timer.
1039endchoice
1040
1041choice
1042 prompt "Suspend sleep mode"
1043 default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1044 help
1045 Allows overriding the sleep mode used. Leave at power
1046 collapse suspend unless the arm9 image has problems.
1047
1048 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1049 bool "Power collapse suspend"
1050 help
1051 Lowest sleep state. Returns through reset vector.
1052
1053 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1054 bool "Power collapse"
1055 help
1056 Sleep state that returns through reset vector.
1057
1058 config MSM7X00A_SLEEP_MODE_APPS_SLEEP
1059 bool "Apps Sleep"
1060
1061 config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1062 bool "Ramp down cpu clock and wait for interrupt"
1063
1064 config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1065 bool "Wait for interrupt"
1066endchoice
1067
1068config MSM7X00A_SLEEP_MODE
1069 int
1070 default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1071 default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1072 default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
1073 default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1074 default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1075
1076choice
1077 prompt "Idle sleep mode"
1078 default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1079 help
1080 Allows overriding the sleep mode used from idle. Leave at power
1081 collapse suspend unless the arm9 image has problems.
1082
1083 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1084 bool "Power collapse suspend"
1085 help
1086 Lowest sleep state. Returns through reset vector.
1087
1088 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1089 bool "Power collapse"
1090 help
1091 Sleep state that returns through reset vector.
1092
1093 config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1094 bool "Apps Sleep"
1095
1096 config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1097 bool "Ramp down cpu clock and wait for interrupt"
1098
1099 config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1100 bool "Wait for interrupt"
1101endchoice
1102
1103config MSM7X00A_IDLE_SLEEP_MODE
1104 int
1105 default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1106 default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1107 default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1108 default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1109 default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1110
1111config MSM7X00A_IDLE_SLEEP_MIN_TIME
1112 int "Minimum idle time before sleep"
1113 default 20000000
1114 help
1115 Minimum idle time in nanoseconds before entering low power mode.
1116
1117config MSM7X00A_IDLE_SPIN_TIME
1118 int "Idle spin time before cpu ramp down"
1119 default 80000
1120 help
1121 Spin time in nanoseconds before ramping down cpu clock and entering
1122 any low power state.
1123
1124menuconfig MSM_IDLE_STATS
1125 bool "Collect idle statistics"
1126 default y
1127 help
1128 Collect idle statistics and export them in proc/msm_pm_stats.
1129
1130if MSM_IDLE_STATS
1131
1132config MSM_IDLE_STATS_FIRST_BUCKET
1133 int "First bucket time"
1134 default 62500
1135 help
1136 Upper time limit in nanoseconds of first bucket.
1137
1138config MSM_IDLE_STATS_BUCKET_SHIFT
1139 int "Bucket shift"
1140 default 2
1141
1142config MSM_IDLE_STATS_BUCKET_COUNT
1143 int "Bucket count"
1144 default 10
1145
1146config MSM_SUSPEND_STATS_FIRST_BUCKET
1147 int "First bucket time for suspend"
1148 default 1000000000
1149 help
1150 Upper time limit in nanoseconds of first bucket of the
1151 histogram. This is for collecting statistics on suspend.
1152
1153endif # MSM_IDLE_STATS
1154
1155config CPU_HAS_L2_PMU
1156 bool "L2CC PMU Support"
1157 help
1158 Select this if the L2 cache controller has a Performance Monitoring Unit.
1159
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001160config HTC_HEADSET
1161 tristate "HTC 2 Wire detection driver"
1162 default n
1163 help
1164 Provides support for detecting HTC 2 wire devices, such as wired
1165 headset, on the trout platform. Can be used with the msm serial
1166 debugger, but not with serial console.
1167
1168config TROUT_BATTCHG
1169 depends on MACH_TROUT && POWER_SUPPLY
1170 default y
1171 bool "Trout battery / charger driver"
1172
1173config HTC_PWRSINK
1174 depends on MSM_SMD
1175 default n
1176 bool "HTC Power Sink Driver"
1177
1178config QSD_SVS
1179 bool "QSD Static Voltage Scaling"
1180 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1181 default y
1182 select TPS65023
1183 help
1184 Enables static voltage scaling using the TPS65023 PMIC.
1185
1186config QSD_PMIC_DEFAULT_DCDC1
1187 int "PMIC default output voltage"
1188 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1189 default 1250
1190 help
1191 This is the PMIC voltage at Linux kernel boot.
1192
1193config MSM_FIQ_SUPPORT
1194 default y
1195 bool "Enable installation of an FIQ handler."
1196
1197config MSM_SERIAL_DEBUGGER
1198 select MSM_FIQ_SUPPORT
1199 select KERNEL_DEBUGGER_CORE
1200 default n
1201 bool "FIQ Mode Serial Debugger"
1202 help
1203 The FIQ serial debugger can accept commands even when the
1204 kernel is unresponsive due to being stuck with interrupts
1205 disabled. Depends on the kernel debugger core in drivers/misc.
1206
1207config MSM_SERIAL_DEBUGGER_CONSOLE
1208 depends on MSM_SERIAL_DEBUGGER
1209 default n
1210 bool "Console on FIQ Serial Debugger port"
1211 help
1212 Enables a console so that printk messages are displayed on
1213 the debugger serial port as the occur.
Daniel Walkerbf83de42010-03-16 16:29:44 -07001214
Steve Mucklec8aabae2010-04-21 16:20:27 -07001215config MSM_PROC_COMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001216 default y
1217 bool "Proc-Comm RPC Interface"
1218 help
1219 Enables a lightweight communications interface to the
1220 baseband processor.
Steve Mucklec8aabae2010-04-21 16:20:27 -07001221
Brian Swetland2eb44eb2008-09-29 16:00:48 -07001222config MSM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001223 bool "MSM Shared Memory Driver (SMD)"
1224 help
1225 Support for the shared memory interface between the apps
1226 processor and the baseband processor. Provides access to
1227 the "shared heap", as well as virtual serial channels
1228 used to communicate with various services on the baseband
1229 processor.
1230
1231choice
1232 prompt "MSM Shared memory interface version"
1233 depends on MSM_SMD
1234 default MSM_SMD_PKG3 if ARCH_MSM_ARM11
1235 default MSM_SMD_PKG4 if ARCH_MSM_SCORPION
1236
1237 config MSM_SMD_PKG3
1238 bool
1239 prompt "Package 3"
1240
1241 config MSM_SMD_PKG4
1242 bool
1243 prompt "Package 4"
1244endchoice
1245
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -06001246config MSM_PCIE
1247 bool "MSM PCIe Controller driver"
1248 depends on PCI && PCI_MSI
1249 help
1250 Enables the PCIe functionality by configures PCIe core on
1251 MSM chipset and by enabling the ARM PCI framework extension.
1252
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001253config MSM_RPC_SDIO_XPRT
1254 depends on MSM_SDIO_AL
1255 default y
1256 bool "MSM SDIO XPRT Layer"
1257 help
1258 SDIO Transport Layer for RPC Rouer
1259
1260config MSM_RPC_SDIO_DEBUG
1261 depends on MSM_RPC_SDIO_XPRT
1262 default y
1263 bool "MSM SDIO XPRT debug support"
1264 help
1265 Support for debugging SDIO XPRT
1266
1267config MSM_SMD_DEBUG
1268 depends on MSM_SMD
1269 default y
1270 bool "MSM SMD debug support"
1271 help
1272 Support for debugging the SMD for communication
1273 between the ARM9 and ARM11
1274
1275config MSM_SDIO_AL
1276 depends on ((ARCH_MSM7X30 || MACH_MSM8X60_FUSN_FFA || MACH_TYPE_MSM8X60_FUSION) && HAS_WAKELOCK)
1277 default y
1278 tristate "SDIO-Abstraction-Layer"
1279 help
1280 Support MSM<->MDM Communication over SDIO bus.
1281 MDM SDIO-Client should have pipes support.
1282
1283config MSM_SDIO_DMUX
1284 bool "SDIO Data Mux Driver"
1285 depends on MSM_SDIO_AL
1286 default n
1287 help
1288 Support Muxed Data Channels over SDIO interface.
1289
1290config MSM_BAM_DMUX
1291 bool "BAM Data Mux Driver"
1292 depends on SPS
1293 default n
1294 help
1295 Support Muxed Data Channels over BAM interface.
1296 BAM has a limited number of pipes. This driver
1297 provides a means to support more logical channels
1298 via muxing than BAM could without muxing.
1299
1300config MSM_N_WAY_SMD
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001301 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001302 default y
1303 bool "MSM N-WAY SMD support"
1304 help
1305 Supports APPS-QDSP SMD communication along with
1306 normal APPS-MODEM SMD communication.
1307
1308config MSM_N_WAY_SMSM
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001309 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001310 default y
1311 bool "MSM N-WAY SMSM support"
1312 help
1313 Supports APPS-QDSP SMSM communication along with
1314 normal APPS-MODEM SMSM communication.
1315
1316config MSM_RESET_MODEM
1317 tristate "Reset Modem Driver"
1318 depends on MSM_SMD
1319 default m
1320 help
1321 Allows the user to reset the modem through a device node.
1322
1323config MSM_SMD_LOGGING
1324 depends on MSM_SMD
1325 default y
1326 bool "MSM Shared Memory Logger"
1327 help
1328 This option exposes the shared memory logger at /dev/smem_log
1329 and a debugfs node named smem_log.
1330
1331 If in doubt, say yes.
1332
Karthikeyan Ramasubramaniane1f4f732011-08-08 13:34:47 -06001333config MSM_IPC_LOGGING
1334 bool "MSM Debug Logging for IPC Drivers"
1335 help
1336 This option allows the debug logging for IPC Drivers.
1337
1338 If in doubt, say no.
1339
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001340config MSM_SMD_NMEA
1341 bool "NMEA GPS Driver"
1342 depends on MSM_SMD
1343 default y
1344 help
1345 Enable this to support the NMEA GPS device.
1346
1347 If in doubt, say yes.
1348
1349config MSM_SDIO_TTY
1350 bool "SDIO TTY Driver"
1351 depends on MSM_SDIO_AL
1352 default n
1353 help
1354 Provides a TTY driver SDIO TTY
1355 This driver can be used by user space
1356 applications for passing data through the
1357 SDIO interface.
1358
1359config MSM_SMD_TTY
1360 bool "SMD TTY Driver"
1361 depends on MSM_SMD
1362 default y
1363 help
1364 Provides TTY interfaces to interact with the modem.
1365
1366 If in doubt, say yes.
1367
1368config MSM_SMD_QMI
1369 bool "SMD QMI Driver"
1370 depends on MSM_SMD
1371 default y
1372 help
1373 Manages network data connections.
1374
1375 If in doubt, say yes.
1376
1377config MSM_SMD_PKT
1378 bool "SMD Packet Driver"
1379 depends on MSM_SMD
1380 default y
1381 help
1382 Provides a binary SMD non-muxed packet port interface.
1383
1384 If in doubt, say yes.
1385
1386config MSM_SDIO_CMUX
1387 bool "SDIO CMUX Driver"
1388 depends on MSM_SDIO_AL
1389 default n
1390 help
1391 Provides a Muxed port interface over SDIO QMI
1392
1393config MSM_DSPS
1394 bool "Sensors DSPS driver"
1395 depends on (MSM_PIL && (ARCH_MSM8X60 || ARCH_MSM8960))
1396 default n
1397 help
1398 Provides user-space interface to the sensors manager
1399 to turn on/off the Sensors Processor system clocks.
1400 It is the DSPS responsibility to turn on/off the sensors
1401 themself.
1402 The number of clocks and their name may vary between targets.
1403 It also triggers the PIL to load the DSPS firmware.
1404
1405config MSM_SDIO_CTL
1406 bool "SDIO CTL Driver"
1407 depends on MSM_SDIO_CMUX
1408 default n
1409 help
1410 Provides a binary SDIO control port interface.
1411
1412config MSM_ONCRPCROUTER
1413 depends on MSM_SMD
1414 default n
1415 bool "MSM ONCRPC router support"
1416 help
1417 Support for the MSM ONCRPC router for communication between
1418 the ARM9 and ARM11
1419
1420config MSM_IPC_ROUTER
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001421 depends on NET
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001422 default n
1423 bool "MSM IPC Router support"
1424 help
1425 Support for the MSM IPC Router for communication between
1426 the APPs and the MODEM
1427
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001428config MSM_IPC_ROUTER_SMD_XPRT
1429 depends on MSM_SMD
1430 depends on MSM_IPC_ROUTER
1431 default n
1432 bool "MSM SMD XPRT Layer"
1433 help
1434 SMD Transport Layer for IPC Router
1435
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001436config MSM_ONCRPCROUTER_DEBUG
1437 depends on MSM_ONCRPCROUTER
1438 default y
1439 bool "MSM debug ONCRPC router support"
1440 help
1441 Support for debugging the ONCRPC router for communication
1442 between the ARM9 and ARM11
1443
1444config MSM_RPC_LOOPBACK_XPRT
1445 depends on MSM_ONCRPCROUTER
1446 default n
1447 bool "MSM RPC local routing support"
1448 help
1449 Support for routing RPC messages between APPS clients
1450 and APPS servers. Helps in testing APPS RPC framework.
1451
1452config MSM_RPCSERVER_TIME_REMOTE
1453 depends on MSM_ONCRPCROUTER && RTC_HCTOSYS
1454 default y
1455 bool "Time remote RPC server"
1456 help
1457 The time remote server receives notification of time bases and
1458 reports these events to registered callback functions.
1459
1460config MSM_RPCSERVER_WATCHDOG
1461 depends on MSM_ONCRPCROUTER
1462 default y
1463 bool "Watchdog RPC server"
1464 help
1465 The dog_keepalive server handles watchdog events.
1466
1467config MSM_RPC_WATCHDOG
1468 depends on MSM_ONCRPCROUTER
1469 default n
1470 bool "Watchdog RPC client"
1471 help
1472 The dog_keepalive client module.
1473
1474config MSM_RPC_PING
1475 depends on MSM_ONCRPCROUTER && DEBUG_FS
1476 default m
1477 bool "MSM rpc ping"
1478 help
1479 Implements MSM rpc ping test module.
1480
1481config MSM_RPC_PROC_COMM_TEST
1482 depends on DEBUG_FS && MSM_PROC_COMM
1483 default m
1484 bool "MSM rpc proc comm test"
1485 help
1486 Implements MSM rpc proc comm test module.
1487
1488config MSM_RPC_OEM_RAPI
1489 depends on MSM_ONCRPCROUTER
1490 default m
1491 bool "MSM oem rapi"
1492 help
1493 Implements MSM oem rapi client module.
1494
1495config MSM_RPCSERVER_HANDSET
1496 depends on MSM_ONCRPCROUTER
1497 default y
1498 bool "Handset events RPC server"
1499 help
1500 Support for receiving handset events like headset detect,
1501 headset switch and clamshell state.
1502
1503config MSM_RMT_STORAGE_CLIENT
1504 depends on (ARCH_MSM && MSM_ONCRPCROUTER)
1505 default n
1506 bool "Remote Storage RPC client"
1507 help
1508 Provide RPC mechanism for remote processors to access storage
1509 device on apps processor.
1510
1511config MSM_RMT_STORAGE_CLIENT_STATS
1512 depends on (MSM_RMT_STORAGE_CLIENT && DEBUG_FS)
1513 default n
1514 bool "Remote storage RPC client performance statistics"
1515 help
1516 Collects performance statistics and shows this information
1517 through a debugfs file rmt_storage_stats.
1518
1519config MSM_SDIO_SMEM
1520 depends on MSM_SDIO_AL
1521 default n
1522 bool "SDIO SMEM for remote storage"
1523 help
1524 Copies data from remote MDM9K memory to local MSM8x60
1525 memory. Used by remote storage client to shadow
1526 MDM9K filesystem.
1527
1528config MSM_DALRPC
1529 bool "DAL RPC support"
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -08001530 default n
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001531 help
1532 Supports RPC calls to DAL devices on remote processor cores.
1533
1534config MSM_DALRPC_TEST
1535 tristate "DAL RPC test module"
1536 depends on (MSM_DALRPC && DEBUG_FS)
1537 default m
1538 help
1539 Exercises DAL RPC calls to QDSP6.
1540
1541if CPU_FREQ_MSM
1542
1543config MSM_CPU_FREQ_SET_MIN_MAX
1544 bool "Set Min/Max CPU frequencies."
1545 default n
1546 help
1547 Allow setting min and max CPU frequencies. Sysfs can be used
1548 to override these values.
1549
1550config MSM_CPU_FREQ_MAX
1551 int "Max CPU Frequency"
1552 depends on MSM_CPU_FREQ_SET_MIN_MAX
1553 default 384000
1554
1555config MSM_CPU_FREQ_MIN
1556 int "Min CPU Frequency"
1557 depends on MSM_CPU_FREQ_SET_MIN_MAX
1558 default 245760
1559
1560endif # CPU_FREQ_MSM
1561
1562config MSM_CPU_AVS
1563 bool "Enable software controlled Adaptive Voltage Scaling (AVS)"
1564 depends on (ARCH_MSM_SCORPION && QSD_SVS)
1565 depends on ARCH_QSD8X50
1566 default n
1567 select MSM_AVS_HW
1568 help
1569 This enables the s/w control of Adaptive Voltage Scaling feature
1570 in Qualcomm ARMv7 CPUs. It adjusts the voltage for each frequency
1571 based on feedback from three ring oscillators in the CPU.
1572
1573config MSM_AVS_HW
1574 bool "Enable Adaptive Voltage Scaling (AVS)"
1575 default n
1576 help
1577 Enable AVS hardware to fine tune voltage at each frequency. The
1578 AVS hardware blocks associated with each Qualcomm ARMv7 cores can
1579 fine tune the voltages based on the feedback from the ring
1580 oscillators.
1581
1582config MSM_HW3D
1583 tristate "MSM Hardware 3D Register Driver"
1584 depends on ANDROID_PMEM
1585 default y
1586 help
1587 Provides access to registers needed by the userspace OpenGL|ES
1588 library.
1589
1590config MSM_ADSP
1591 depends on (ARCH_MSM7X01A || ARCH_MSM7X25 || ARCH_MSM7X27)
1592 tristate "MSM ADSP driver"
1593 depends on ANDROID_PMEM
1594 default y
1595 help
1596 Provides access to registers needed by the userspace aDSP library.
1597
1598config ADSP_RPC_VER
1599 hex
1600 default 0x30002 if (ARCH_MSM7X27 || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2009))
1601 default 0x30001 if (ARCH_MSM7X01A || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2008))
1602 depends on MSM_ADSP
1603 help
1604 Select proper ADSP RPC version
1605choice
1606 prompt "ADSP RPC version"
1607
1608 default AMSS_7X25_VERSION_2009
1609
1610 config AMSS_7X25_VERSION_2009
1611 bool "2.0.09"
1612
1613 config AMSS_7X25_VERSION_2008
1614 bool "2.0.08"
1615endchoice
1616
1617config MSM7KV2_AUDIO
1618 bool "MSM7K v2 audio"
1619 depends on (ARCH_MSM7X30 && ANDROID_PMEM)
1620 default y
1621 help
1622 Enables QDSP5V2-based audio drivers for audio playbacks and
1623 voice call.
1624
1625config MSM_ADSP_REPORT_EVENTS
1626 bool "Report modem events from the DSP"
1627 default y
1628 depends on (MSM_ADSP || MSM7KV2_AUDIO)
1629 help
1630 Normally, only messages from the aDSP are reported to userspace.
1631 With this option, we report events from the aDSP as well.
1632
1633config MSM_QDSP6
1634 tristate "QDSP6 support"
1635 depends on ARCH_QSD8X50 && ANDROID_PMEM
1636 default y
1637 help
1638 Enable support for qdsp6. This provides audio and video functionality.
1639
1640config MSM8X60_AUDIO
1641 tristate "MSM8X60 audio support"
1642 depends on ARCH_MSM8X60 && ANDROID_PMEM
1643 default y
1644 help
1645 Enable support for qdsp6v2. This provides audio functionality.
1646
1647config MSM8X60_FTM_AUDIO_DEVICES
1648 bool "MSM8X60 audio factory test mode support"
1649 depends on MSM8X60_AUDIO
1650 help
1651 Enable support audio factory test mode devices. This is used
1652 in a production line environment.
1653
Ben Romberger45b351c2011-07-20 22:37:27 -07001654config RTAC
1655 bool "MSM8K real-time audio calibration support"
1656 default y
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001657 help
Ben Romberger45b351c2011-07-20 22:37:27 -07001658 Enable support for rtac. This enables calibration during
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001659 audio operation
1660
1661config MSM7X27A_AUDIO
1662 bool "MSM7X27A audio support"
1663 depends on ARCH_MSM7X27A && MSM_ADSP
1664 default n
1665 help
1666 Enable support for 7x27a. This provides audio functionality.
1667
Justin Pauporea6cd2092011-06-22 16:19:45 -07001668config MSM_PROC_COMM_REGULATOR
1669 bool
1670 depends on MSM_PROC_COMM && REGULATOR
1671 help
1672 Enable regulator framework support for regulators managed by PMLIB
1673 on the modem, and controlled through proccomm calls.
1674
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001675config MSM_VREG_SWITCH_INVERTED
1676 bool "Reverse vreg switch polarity"
1677 default n
1678 help
1679 Reverses the enable and disable for vreg switch.
1680
1681config MSM_DMA_TEST
1682 tristate "MSM DMA test module"
1683 default m
1684 help
1685 Intended to be compiled as a module. Provides a device node
1686 and ioctls for testing the MSM dma system.
1687
1688config WIFI_CONTROL_FUNC
1689 bool "Enable WiFi control function abstraction"
1690 help
1691 Enables Power/Reset/Carddetect function abstraction
1692
1693config WIFI_MEM_PREALLOC
1694 depends on WIFI_CONTROL_FUNC
1695 bool "Preallocate memory for WiFi buffers"
1696 help
1697 Preallocates memory buffers for WiFi driver
1698
1699config QSD_AUDIO
1700 bool "QSD audio"
1701 depends on ARCH_MSM_SCORPION && MSM_DALRPC && ANDROID_PMEM && !MSM_SMP
1702 default y
1703 help
1704 Provides PCM, MP3, and AAC audio playback.
1705
1706config AUDIO_AAC_PLUS
1707 depends on (MSM_ADSP || QSD_AUDIO || MSM7KV2_AUDIO)
1708 bool "AAC+ Audio"
1709 default y
1710 help
1711 Provides AAC+ decoding
1712
1713config AUDIO_ENHANCED_AAC_PLUS
1714 depends on AUDIO_AAC_PLUS
1715 bool "Enhanced AAC+ Audio"
1716 default y
1717 help
1718 Provides Enhanced AAC+ decoding
1719
1720config SURF_FFA_GPIO_KEYPAD
1721 bool "MSM SURF/FFA GPIO keypad"
1722 depends on INPUT_GPIO = "y"
1723 default y
1724 help
1725 Select if the GPIO keypad is attached.
1726
1727config MSM_SLEEP_TIME_OVERRIDE
1728 bool "Allow overriding suspend/sleep time with PM module parameter"
1729 default y
1730 help
1731 Enable the module parameter sleep_time_override. Specified
1732 in units of seconds, it overwrites the normal sleep time of
1733 suspend. The feature is required for automated power management
1734 testing.
1735
1736config MSM_MEMORY_LOW_POWER_MODE
1737 bool "Control the low power modes of memory"
1738 default n
1739 help
1740 The application processor controls whether memory should enter
1741 which low power mode.
1742
1743choice
1744 prompt "Default Memory Low Power Mode during Idle"
1745 depends on MSM_MEMORY_LOW_POWER_MODE
1746 default MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1747 help
1748 Selects the default low power mode of the memory during idle
1749 sleep.
1750
1751 config MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1752 bool "Memory active"
1753
1754 config MSM_MEMORY_LOW_POWER_MODE_IDLE_RETENTION
1755 bool "Memory in retention"
1756
1757 config MSM_MEMORY_LOW_POWER_MODE_IDLE_DEEP_POWER_DOWN
1758 bool "Memory in deep power down"
1759endchoice
1760
1761choice
1762 prompt "Default Memory Low Power Mode during Suspend"
1763 depends on MSM_MEMORY_LOW_POWER_MODE
1764 default MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1765 help
1766 Selects the default low power mode of the memory during suspend
1767 sleep.
1768
1769 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1770 bool "Memory active"
1771
1772 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_RETENTION
1773 bool "Memory in retention"
1774
1775 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_DEEP_POWER_DOWN
1776 bool "Memory in deep power down"
1777endchoice
1778
1779choice
1780 prompt "Power management timeout action"
1781 default MSM_PM_TIMEOUT_HALT
1782 help
1783 Selects the Application Processor's action when Power Management
1784 times out waiting for Modem's handshake.
1785
1786 config MSM_PM_TIMEOUT_HALT
1787 bool "Halt the Application Processor"
1788
1789 config MSM_PM_TIMEOUT_RESET_MODEM
1790 bool "Reset the Modem Processor"
1791
1792 config MSM_PM_TIMEOUT_RESET_CHIP
1793 bool "Reset the entire chip"
1794endchoice
1795
1796config MSM_IDLE_WAIT_ON_MODEM
1797 int "Wait for Modem to become ready for idle power collapse"
1798 default 0
1799 help
1800 If Modem is not ready to handle Application Processor's request
1801 for idle power collapse, wait the number of microseconds in case
1802 Modem becomes ready soon.
1803
Matt Wagantall9274df92011-12-15 11:11:05 -08001804config MSM_RPM_REGULATOR
1805 bool "RPM regulator driver"
Matt Wagantall32dc71e2012-01-04 11:13:11 -08001806 depends on MSM_RPM && REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -08001807 help
1808 Compile in support for the RPM regulator driver, used for setting
1809 voltages and other parameters of the various power rails supplied
1810 by some Qualcomm PMICs.
1811
David Collinsc7642322012-04-04 10:19:12 -07001812config MSM_RPM_REGULATOR_SMD
1813 bool "SMD RPM regulator driver"
1814 depends on REGULATOR
1815 depends on OF
1816 depends on MSM_RPM_SMD
1817 help
1818 Compile in support for the SMD RPM regulator driver which is used for
1819 setting voltages and other parameters of the various power rails
1820 supplied by some Qualcomm PMICs. The SMD RPM regulator driver should
1821 be used on systems which contain an RPM which communicates with the
1822 application processor over SMD.
1823
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001824config MSM_PIL
1825 bool "Peripheral image loading"
1826 select FW_LOADER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001827 default n
1828 help
1829 Some peripherals need to be loaded into memory before they can be
1830 brought out of reset.
1831
1832 Say yes to support these devices.
1833
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001834config MSM_PIL_MODEM
1835 tristate "Modem (ARM11) Boot Support"
1836 depends on MSM_PIL
1837 help
1838 Support for booting and shutting down ARM11 Modem processors.
1839
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001840config MSM_PIL_QDSP6V3
1841 tristate "QDSP6v3 (Hexagon) Boot Support"
1842 depends on MSM_PIL
1843 help
1844 Support for booting and shutting down QDSP6v3 processors (hexagon).
1845 The QDSP6 is a low power DSP used in audio software applications.
1846
Stephen Boydeb819882011-08-29 14:46:30 -07001847config MSM_PIL_QDSP6V4
1848 tristate "QDSP6v4 (Hexagon) Boot Support"
1849 depends on MSM_PIL
1850 help
1851 Support for booting and shutting down QDSP6v4 processors (hexagon).
1852 The QDSP6 is a low power DSP used in audio, modem firmware, and modem
1853 software applications.
1854
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07001855config MSM_PIL_LPASS_QDSP6V5
1856 tristate "LPASS QDSP6v5 (Hexagon) Boot Support"
1857 depends on MSM_PIL
1858 help
1859 Support for booting and shutting down QDSP6v5 processors (Hexagon)
1860 processors in low power audio subsystems.
1861
Stephen Boyd322a9922011-09-20 01:05:54 -07001862config MSM_PIL_RIVA
1863 tristate "RIVA (WCNSS) Boot Support"
1864 depends on MSM_PIL
1865 help
1866 Support for booting and shutting down the RIVA processor (WCNSS).
1867 Riva is the wireless subsystem processor used in bluetooth, wireless
1868 LAN, and FM software applications.
1869
Stephen Boydd89eebe2011-09-28 23:28:11 -07001870config MSM_PIL_TZAPPS
1871 tristate "TZApps Boot Support"
1872 depends on MSM_PIL
1873 help
1874 Support for booting and shutting down TZApps.
1875
1876 TZApps is an image that runs in the secure processor state. It is
1877 used to decrypt data and perform secure operations on the behalf of
1878 the kernel.
1879
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07001880config MSM_PIL_DSPS
1881 tristate "DSPS Boot Support"
1882 depends on MSM_PIL
1883 help
1884 Support for booting and shutting down ARM7 DSPS processors.
1885
1886 DSPS is a sensors offloading processor used for applications such
1887 as rotation detection, temperature, etc.
1888
Stephen Boyd7b973de2012-03-09 12:26:16 -08001889config MSM_PIL_VIDC
1890 tristate "Video Core Secure Boot Support"
1891 depends on MSM_PIL
1892 help
1893 Support for authenticating the video core image.
1894
Matt Wagantall292aace2012-01-26 19:12:34 -08001895config MSM_PIL_GSS
1896 tristate "GSS (Coretx A5) Boot Support"
1897 depends on MSM_PIL
1898 help
1899 Support for booting and shutting down Cortex A5 processors which run
1900 GPS subsystem firmware.
1901
Tianyi Gouc1e049f82011-11-23 14:20:16 -08001902config MSM_PIL_PRONTO
1903 tristate "PRONTO (WCNSS) Boot Support"
1904 depends on MSM_PIL
1905 help
1906 Support for booting and shutting down the PRONTO processor (WCNSS).
1907 PRONTO is the wireless subsystem processor used in bluetooth, wireless
1908 LAN, and FM software applications.
1909
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001910config MSM_SCM
1911 bool "Secure Channel Manager (SCM) support"
1912 default n
1913
1914config MSM_SUBSYSTEM_RESTART
1915 bool "MSM Subsystem Restart Driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001916 depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001917 default n
1918 help
1919 This option enables the MSM subsystem restart driver, which provides
1920 a framework to handle subsystem crashes.
1921
Matt Wagantallf8020902011-08-30 21:19:23 -07001922config MSM_SYSMON_COMM
1923 bool "MSM System Monitor communication support"
1924 depends on MSM_SMD && MSM_SUBSYSTEM_RESTART
1925 default y
1926 help
1927 This option adds support for MSM System Monitor library, which
1928 provides an API that may be used for notifying subsystems within
1929 the SoC about other subsystems' power-up/down state-changes.
1930
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001931config MSM_MODEM_8960
1932 bool "MSM 8960 Modem driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001933 depends on (ARCH_MSM8960 || ARCH_MSM9615)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001934 help
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001935 This option enables the modem driver for the MSM8960 and MSM9615, which monitors
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001936 modem hardware watchdog interrupt lines and plugs into the subsystem
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001937 restart and PIL drivers. For MSM9615, it only supports a full chip reset.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001938
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001939config MSM_LPASS_8960
1940 tristate "MSM 8960 Lpass driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001941 depends on (ARCH_MSM8960 || ARCH_MSM9615)
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001942 help
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001943 This option enables the lpass driver for the MSM8960 and MSM9615. This monitors
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001944 lpass hardware watchdog interrupt lines and plugs into the subsystem
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001945 restart and PIL drivers. For MSM9615, it only supports a full chip reset.
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001946
Ankur Nandwanie258cf02011-08-19 10:16:38 -07001947config MSM_WCNSS_SSR_8960
1948 tristate "MSM 8960 WCNSS restart module"
1949 depends on (ARCH_MSM8960)
1950 help
1951 This option enables the WCNSS restart module for MSM8960, which
1952 monitors WCNSS hardware watchdog interrupt lines and plugs WCNSS
1953 into the subsystem restart framework.
1954
Rohit Vaswanid0fb4182012-03-19 18:07:59 -07001955config MSM_GSS_SSR_8064
1956 bool "MSM 8064 GSS restart driver"
1957 depends on (ARCH_APQ8064)
1958 help
1959 This option enables the gps subsystem restart driver for APQ8064, which monitors
1960 gss hardware watchdog interrupt lines and plugs into the subsystem
1961 restart and PIL drivers.
1962
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001963config SCORPION_Uni_45nm_BUG
1964 bool "Scorpion Uni 45nm(SC45U): Workaround for ICIMVAU and BPIMVA"
1965 depends on ARCH_MSM7X30 || (ARCH_QSD8X50 && MSM_SOC_REV_A)
1966 default y
1967 help
1968 Invalidating the Instruction Cache by Modified Virtual Address to PoU and
1969 invalidating the Branch Predictor Array by Modified Virtual Address can
1970 create invalid entries in the TLB with the wrong ASID values on Scorpion
1971 Uniprocessor 45nm (SC45U) cores. This option enables the recommended software
1972 workaround for Scorpion Uniprocessor 45nm cores.
1973
1974 This bug is not applicable to any ScorpionMP or Scorpion Uni 65nm(SC65U) cores.
1975
Harini Jayaramanef7805f2011-09-28 12:45:31 -06001976config MSM_BUSPM_DEV
1977 tristate "MSM Bus Performance Monitor Kernel Module"
1978 depends on (ARCH_MSM8X60 || ARCH_MSM8960)
1979 default m
1980 help
1981 This kernel module is used to mmap() hardware registers for the
1982 performance monitors, counters, etc. The module can also be used to
1983 allocate physical memory which is used by bus performance hardware to
1984 dump performance data.
1985
Mona Hossain11c03ac2011-10-26 12:42:10 -07001986config MSM_TZ_LOG
1987 tristate "MSM Trust Zone (TZ) Log Driver"
1988 depends on DEBUG_FS
1989 help
1990 This option enables a driver with a debugfs interface for messages
1991 produced by the Secure code (Trust zone). These messages provide
1992 diagnostic information about TZ operation.
1993
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001994config MSM_RPM_LOG
1995 tristate "MSM Resource Power Manager Log Driver"
1996 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06001997 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001998 default n
1999 help
2000 This option enables a driver which can read from a circular buffer
2001 of messages produced by the RPM. These messages provide diagnostic
2002 information about RPM operation. The driver outputs the messages
2003 via a debugfs node.
2004
2005config MSM_RPM_STATS_LOG
2006 tristate "MSM Resource Power Manager Stat Driver"
2007 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002008 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002009 default n
2010 help
2011 This option enables a driver which reads RPM messages from a shared
2012 memory location. These messages provide statistical information about
2013 the low power modes that RPM enters. The drivers outputs the message
2014 via a debugfs node.
2015
2016config MSM_IOMMU
2017 bool "MSM IOMMU Support"
Joel King41d594e2011-10-14 13:18:20 -07002018 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_APQ8064
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002019 select IOMMU_API
2020 default n
2021 help
2022 Support for the IOMMUs found on certain Qualcomm SOCs.
2023 These IOMMUs allow virtualization of the address space used by most
2024 cores within the multimedia subsystem.
2025
2026 If unsure, say N here.
2027
2028config IOMMU_PGTABLES_L2
2029 bool "Allow SMMU page tables in the L2 cache (Experimental)"
2030 depends on MSM_IOMMU=y
2031 depends on MMU
2032 depends on CPU_DCACHE_DISABLE=n
2033 depends on SMP
2034 default y
2035 help
2036 Improves TLB miss latency at the expense of potential L2 pollution.
2037 However, with large multimedia buffers, the TLB should mostly contain
2038 section mappings and TLB misses should be quite infrequent.
2039 Most people can probably say Y here.
2040
2041config MSM_DIRECT_SCLK_ACCESS
2042 bool "Direct access to the SCLK timer"
2043 default n
2044
2045config IOMMU_API
2046 bool
Brian Swetland2eb44eb2008-09-29 16:00:48 -07002047
Gregory Beanab78cde2010-09-01 16:26:12 -07002048config MSM_GPIOMUX
2049 bool
2050
Gregory Bean1963a2a2010-08-28 10:05:44 -07002051config MSM_V2_TLMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002052 bool
2053
2054config FSM9XXX_TLMM
Gregory Bean1963a2a2010-08-28 10:05:44 -07002055 bool
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002056
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002057config MSM_SECURE_IO
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002058 bool
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002059
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002060config MSM_NATIVE_RESTART
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002061 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002062
Matt Wagantall88b86312012-01-31 16:53:03 -08002063config MSM_PM2
2064 depends on PM
2065 bool
2066
2067config MSM_PM8X60
2068 depends on PM
2069 bool
2070
2071config MSM_NOPM
2072 default y if !PM
2073 bool
2074
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002075config MSM_BUS_SCALING
2076 bool "Bus scaling driver"
2077 default n
2078
Gagan Mac85c70492011-06-10 16:07:47 -06002079config MSM_BUS_RPM_MULTI_TIER_ENABLED
2080 bool "RPM Multi-tiering Configuration"
2081 depends on MSM_BUS_SCALING
2082
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002083config MSM_WATCHDOG
2084 bool "MSM Watchdog Support"
Rohit Vaswanie897f842012-03-19 14:19:34 -07002085 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_FSM9XXX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002086 help
2087 This enables the watchdog as is present on 8x60. Currently we use
2088 core 0's watchdog, and reset the entire SoC if it times out. It does
2089 not run during the bootup process, so it will not catch any early
2090 lockups.
2091
2092config MSM_DLOAD_MODE
2093 bool "Enable download mode on crashes"
Rohit Vaswani92b071a2011-10-18 20:10:09 -07002094 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002095 default n
2096 help
2097 This makes the SoC enter download mode when it resets
2098 due to a kernel panic. Note that this doesn't by itself
2099 make the kernel reboot on a kernel panic - that must be
2100 enabled via another mechanism.
2101
Pratik Patel17f3b822011-11-21 12:41:47 -08002102config MSM_JTAG
2103 bool "JTAG debug and trace support"
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002104 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002105 Add additional support for JTAG kernel debugging and tracing.
Pratik Patel7831c082011-06-08 21:44:37 -07002106
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002107config MSM_ETM
2108 tristate "Enable MSM ETM and ETB"
Pratik Patel17f3b822011-11-21 12:41:47 -08002109 depends on ARCH_MSM8X60
2110 select MSM_JTAG
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002111 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002112 Enables embedded trace collection on MSM8660
Pratik Patel7831c082011-06-08 21:44:37 -07002113
2114config MSM_QDSS
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002115 bool "Qualcomm Debug Subsystem"
Pratik Patel17f3b822011-11-21 12:41:47 -08002116 select MSM_JTAG
Pratik Patel7831c082011-06-08 21:44:37 -07002117 help
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002118 Enables support for Qualcomm Debug Subsystem.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002119
Pratik Patel29cba152012-01-03 11:40:26 -08002120config MSM_QDSS_ETM_DEFAULT_ENABLE
2121 bool "Turn on QDSS ETM Tracing by Default"
2122 depends on MSM_QDSS
2123 help
2124 Turns on QDSS ETM tracing by default. Otherwise, tracing is
2125 disabled by default but can be enabled by other means.
2126
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002127config MSM_SLEEP_STATS
2128 bool "Enable exporting of MSM sleep stats to userspace"
2129 depends on CPU_IDLE
2130 default n
2131
Lynus Vazdde09ee2012-01-05 13:28:22 +05302132config MSM_SLEEP_STATS_DEVICE
2133 bool "Enable exporting of MSM sleep device stats to userspace"
2134
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302135config MSM_RUN_QUEUE_STATS
2136 bool "Enable collection and exporting of MSM Run Queue stats to userspace"
Krishna Vankae2922052012-03-02 09:59:12 +05302137 depends on (MSM_SOC_REV_A || ARCH_MSM8X60 || ARCH_MSM8960)
2138 help
2139 This option enalbes statistics collection on Run Queue. A daemon
2140 in user mode, called MPDecision will be using this data to decide
2141 on when to switch off/on the other cores.
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302142
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002143config MSM_STANDALONE_POWER_COLLAPSE
2144 bool "Enable standalone power collapse"
2145 default n
2146
2147config MSM_GSBI9_UART
2148 bool "Enable GSBI9 UART device"
2149 default n
2150 help
2151 This enables GSBI9 configured into UART.
2152
2153config MSM_SHARED_GPIO_FOR_UART2DM
2154 bool "Use shared GPIOs into UART mode"
2155 depends on (ARCH_MSM7X27A && !MMC_MSM_SDC3_8_BIT_SUPPORT && !MMC_MSM_SDC4_SUPPORT)
2156 help
2157 This option configures GPIO muxed with SDC4/MMC3
2158 8-bit mode into UART mode. It is used for serial
2159 console on UART2DM. Say Y if you want to have
2160 serial console on UART2DM.
2161
2162config MSM_SHOW_RESUME_IRQ
2163 bool "Enable logging of interrupts that could have caused resume"
Bryan Huntsmancc147032011-11-23 13:03:56 -08002164 depends on (ARM_GIC || PMIC8058)
2165 default y if PMIC8058
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002166 default n
2167 help
2168 This option logs wake up interrupts that have triggered just before
2169 the resume loop unrolls. Say Y if you want to debug why the system
2170 resumed.
2171
2172config BT_MSM_PINTEST
2173 tristate "MSM Bluetooth Pin Connectivity Test"
2174 depends on ((ARCH_MSM8X60 || ARCH_MSM7X27A) && DEBUG_FS)
2175 default n
2176 help
2177 Bluetooth MSM Pin Connectivity test module.
2178 This driver provides support for verifying the MSM to BT pin
2179 connectivity.
2180
2181config MSM_FAKE_BATTERY
2182 depends on POWER_SUPPLY
2183 default n
2184 bool "MSM Fake Battery"
2185 help
2186 Enables MSM fake battery driver.
2187
2188config MSM_QDSP6_APR
2189 bool "Audio QDSP6 APR support"
2190 depends on MSM_SMD
2191 default n
2192 help
2193 Enable APR IPC protocol support between
2194 application processor and QDSP6. APR is
2195 used by audio driver to configure QDSP6's
2196 ASM, ADM and AFE.
2197
2198
2199config MSM_AUDIO_QDSP6
2200 bool "QDSP6 HW Audio support"
2201 select SND_SOC_MSM_QDSP6_INTF
2202 default n
2203 help
2204 Enable HW audio support in QDSP6.
2205 QDSP6 can support HW encoder & decoder and audio processing
2206
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002207config MSM_ULTRASOUND
2208 bool "MSM ultrasound support"
2209 depends on MSM_AUDIO_QDSP6
2210 help
2211 Enable support for qdsp6/ultrasound.
2212
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002213config MSM_RPC_VIBRATOR
2214 bool "RPC based MSM Vibrator Support"
2215 depends on MSM_ONCRPCROUTER
2216 help
2217 Enable the vibrator support on MSM over RPC. The vibrator
2218 is connected on the PMIC. Say Y if you want to enable this
2219 feature.
2220
2221config PM8XXX_RPC_VIBRATOR
2222 bool "RPC based Vibrator on PM8xxx PMICs"
2223 depends on MSM_RPC_VIBRATOR
2224 help
2225 Enable the vibrator support on MSM over RPC. The vibrator
2226 is connected on the PM8XXX PMIC. Say Y if you want to enable
2227 this feature.
2228
2229config MSM_SPM_V1
2230 bool "Driver support for SPM Version 1"
2231 help
2232 Enables the support for Version 1 of the SPM driver. SPM hardware is
2233 used to manage the processor power during sleep. The driver allows
2234 configuring SPM to allow different power modes.
2235
2236config MSM_SPM_V2
2237 bool "Driver support for SPM Version 2"
2238 help
2239 Enables the support for Version 2 of the SPM driver. SPM hardware is
2240 used to manage the processor power during sleep. The driver allows
2241 configuring SPM to allow different power modes.
2242
2243config MSM_L2_SPM
2244 bool "SPM support for L2 cache"
2245 depends on MSM_SPM_V2
2246 help
2247 Enable SPM driver support for L2 cache. Some MSM chipsets allow
2248 control of L2 cache low power mode with a Subsystem Power manager.
2249 Enabling this driver allows configuring L2 SPM for low power modes
2250 on supported chipsets.
2251
Laura Abbott2d1760b2011-09-29 21:31:24 -07002252config MSM_MULTIMEDIA_USE_ION
2253 bool "Multimedia suport using Ion"
2254 depends on ION_MSM
2255 help
2256 Enable support for multimedia drivers using Ion for buffer management
2257 instead of pmem. Selecting this may also involve userspace
2258 dependencies as well.
2259
Naveen Ramaraj51f5e8b2012-04-09 15:58:40 -07002260config MSM_OCMEM
2261 bool "MSM On-Chip memory driver (OCMEM)"
2262 help
2263 Enable support for On-Chip Memory available on certain MSM chipsets.
2264 OCMEM is a low latency, high performance pool shared by subsystems.
2265
Laura Abbottad340ff2012-01-04 14:23:48 -08002266config MSM_RTB
2267 bool "Register tracing"
2268 help
2269 Add support for logging different events to a small uncached
2270 region. This is designed to aid in debugging reset cases where the
2271 caches may not be flushed before the target resets.
2272
2273config MSM_RTB_SEPARATE_CPUS
2274 bool "Separate entries for each cpu"
2275 depends on MSM_RTB
Laura Abbott9959f982012-02-28 11:30:50 -08002276 depends on SMP
Laura Abbottad340ff2012-01-04 14:23:48 -08002277 help
2278 Under some circumstances, it may be beneficial to give dedicated space
2279 for each cpu to log accesses. Selecting this option will log each cpu
2280 separately. This will guarantee that the last acesses for each cpu
2281 will be logged but there will be fewer entries per cpu
2282
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002283config MSM_CACHE_ERP
2284 bool "Cache / CPU error reporting"
2285 depends on ARCH_MSM_KRAIT
2286 help
2287 Say 'Y' here to enable reporting of cache and TLB errors to the kernel
2288 log. Enabling this feature can be used as a system debugging technique
2289 if cache corruption is suspected. Cache error statistics will also be
2290 reported in /proc/cpu/msm_cache_erp.
2291
2292 For production builds, you should probably say 'N' here.
2293
2294config MSM_L1_ERR_PANIC
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002295 bool "Panic on L1 cache errors"
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002296 depends on MSM_CACHE_ERP
2297 help
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002298 To cause the kernel to panic whenever an L1 cache error is detected, say
2299 'Y' here. This may be useful as a debugging technique if general system
2300 instability is suspected.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002301
2302 For production builds, you should probably say 'N' here.
2303
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002304config MSM_L2_ERP_PRINT_ACCESS_ERRORS
2305 bool "Report L2 master port slave/decode errors in kernel log"
2306 depends on MSM_CACHE_ERP
2307 help
2308 Master port errors can occur when a memory request is not properly
2309 handled by the destination slave. This can occur if the destination
2310 register does not exist or is inaccessible due to security
2311 restrictions or (in some cases) clock configuration. Enabling this
2312 option will cause a backtrace to be printed to the kernel log whenever
2313 such an error is encountered. Note that the error is reported as an
2314 interrupt rather than as an exception, meaning that the backtrace may
2315 have some skid. This option may help with debugging, though production
2316 builds should probably say 'N' here.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002317
2318config MSM_L2_ERP_PORT_PANIC
2319 bool "Panic on L2 master port errors"
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002320 depends on MSM_CACHE_ERP && MSM_L2_ERP_PRINT_ACCESS_ERRORS
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002321 help
2322 Master port errors can occur when a memory request is not properly
2323 handled by the destination slave. Enable this option to catch drivers
2324 which attempt to access bad areas of the address space, or access
2325 hardware registers in an improper state (such as certain clocks not
2326 being on). This option may help with debugging, though production
2327 builds should probably say 'N' here.
2328
2329config MSM_L2_ERP_1BIT_PANIC
2330 bool "Panic on recoverable L2 soft errors"
2331 depends on MSM_CACHE_ERP
2332 help
2333 Enable this option to cause a kernel panic whenever the L2 cache
2334 encounters a single-bit (correctable) soft error. This option should
2335 only be enabled when doing low-level debugging where cache corruption
2336 is suspected.
2337
2338 For production builds, you should definitely say 'N' here.
2339
2340config MSM_L2_ERP_2BIT_PANIC
2341 bool "Panic on unrecoverable L2 soft errors"
2342 depends on MSM_CACHE_ERP
2343 help
2344 Enable this option to cause a kernel panic whenever the L2 cache
2345 encounters a double-bit (non-correctable) soft error. Debug builds
2346 will likely benefit from having this option enabled to catch cache
2347 problems as soon as possible.
2348
2349 For production builds, it may be acceptable to say 'N' here, since
2350 an uncorrectable error might not necessarily cause further problems.
Laura Abbottad340ff2012-01-04 14:23:48 -08002351
Praveen Chidambaramf53ef1b2011-12-06 08:27:49 -07002352config MSM_DCVS
2353 bool "Use MSM DCVS for CPU/GPU Frequency control"
2354 depends on MSM_SCM
2355 help
2356 Enable support for MSM DCVS to control all CPU and GPU core frequencies.
2357 The DCVS manager allows idle driver to feed the idle information to the
2358 algorithm and the algorithm returns a frequency for the core which is
2359 passed to the frequency change driver.
2360
Taniya Dasc43e6872012-03-21 16:41:14 +05302361config HAVE_ARCH_HAS_CURRENT_TIMER
2362 bool
Laura Abbott306bcc22012-03-08 11:24:53 -08002363
2364config MSM_CACHE_DUMP
2365 bool "Cache dumping support"
2366 help
2367 Add infrastructure to dump the L1 and L2 caches to an allocated buffer.
2368 This allows for analysis of the caches in case cache corruption is
2369 suspected.
2370
Laura Abbott7b637362012-03-29 16:43:49 -07002371config MSM_CACHE_DUMP_ON_PANIC
2372 bool "Dump caches on panic"
2373 depends on MSM_CACHE_DUMP
2374 help
2375 By default, the caches are flushed on panic. This means that trying to
2376 look at them in a RAM dump will give useless data. Select this if you
2377 want to dump the L1 and L2 caches on panic before any flush occurs.
2378 If unsure, say N
2379
Jack Phamccbbfab2012-04-09 19:50:20 -07002380config MSM_HSIC_SYSMON
2381 tristate "MSM HSIC system monitor driver"
2382 depends on USB
2383 help
2384 Add support for bridging with the system monitor interface of MDM
2385 over HSIC. This driver allows the local system monitor to
2386 communicate with the remote system monitor interface.
2387
2388config MSM_HSIC_SYSMON_TEST
2389 tristate "MSM HSIC system monitor bridge test"
2390 depends on USB && MSM_HSIC_SYSMON && DEBUG_FS
2391 help
2392 Enable the test hook for the Qualcomm system monitor HSIC driver.
2393 This will create a debugfs file entry named "hsic_sysmon_test" which
2394 can be read and written to send character data to the sysmon port of
2395 the modem over USB.
2396
Brian Swetland9e73c842007-11-26 04:12:13 -08002397endif