blob: 4fd15b3d4fd9fee35bd8f799cf9d8fa339ec4593 [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
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -070097 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070098 select MSM_NATIVE_RESTART
99 select ARCH_INLINE_SPIN_TRYLOCK
100 select ARCH_INLINE_SPIN_TRYLOCK_BH
101 select ARCH_INLINE_SPIN_LOCK
102 select ARCH_INLINE_SPIN_LOCK_BH
103 select ARCH_INLINE_SPIN_LOCK_IRQ
104 select ARCH_INLINE_SPIN_LOCK_IRQSAVE
105 select ARCH_INLINE_SPIN_UNLOCK
106 select ARCH_INLINE_SPIN_UNLOCK_BH
107 select ARCH_INLINE_SPIN_UNLOCK_IRQ
108 select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
109 select ARCH_INLINE_READ_TRYLOCK
110 select ARCH_INLINE_READ_LOCK
111 select ARCH_INLINE_READ_LOCK_BH
112 select ARCH_INLINE_READ_LOCK_IRQ
113 select ARCH_INLINE_READ_LOCK_IRQSAVE
114 select ARCH_INLINE_READ_UNLOCK
115 select ARCH_INLINE_READ_UNLOCK_BH
116 select ARCH_INLINE_READ_UNLOCK_IRQ
117 select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
118 select ARCH_INLINE_WRITE_TRYLOCK
119 select ARCH_INLINE_WRITE_LOCK
120 select ARCH_INLINE_WRITE_LOCK_BH
121 select ARCH_INLINE_WRITE_LOCK_IRQ
122 select ARCH_INLINE_WRITE_LOCK_IRQSAVE
123 select ARCH_INLINE_WRITE_UNLOCK
124 select ARCH_INLINE_WRITE_UNLOCK_BH
125 select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
126 select CPU_HAS_L2_PMU
127 select MSM_SPM_V1
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530128 select MSM_SCM if SMP
129 select MULTI_IRQ_HANDLER
Laura Abbott46505f62011-11-02 18:06:55 -0700130 select MSM_MULTIMEDIA_USE_ION
Matt Wagantall88b86312012-01-31 16:53:03 -0800131 select MSM_PM8X60 if PM
Krishna Vankae2922052012-03-02 09:59:12 +0530132 select MSM_RUN_QUEUE_STATS
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700133
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800134config ARCH_MSM8960
135 bool "MSM8960"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700136 select ARCH_MSM_KRAITMP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800137 select ARM_GIC
138 select CPU_V7
139 select MSM_V2_TLMM
140 select MSM_GPIOMUX
141 select MSM_SCM if SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700142 select MSM_DIRECT_SCLK_ACCESS
143 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -0800144 select MSM_RPM_REGULATOR
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700145 select MSM_RPM
146 select MSM_XO
147 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700148 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700149 select MSM_PIL
150 select MSM_AUDIO_QDSP6 if SND_SOC
151 select CPU_HAS_L2_PMU
152 select MSM_SPM_V2
153 select MSM_L2_SPM
154 select MSM_NATIVE_RESTART
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700155 select DONT_MAP_HOLE_AFTER_MEMBANK0
156 select MSM_REMOTE_SPINLOCK_SFPB
157 select ARCH_POPULATES_NODE_MAP
158 select ARCH_SPARSEMEM_ENABLE
159 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basselb8d61022012-02-24 10:49:45 -0800160 select MEMORY_HOTPLUG if ENABLE_DMM
161 select MEMORY_HOTREMOVE if ENABLE_DMM
162 select ARCH_ENABLE_MEMORY_HOTPLUG if ENABLE_DMM
163 select ARCH_ENABLE_MEMORY_HOTREMOVE if ENABLE_DMM
164 select MIGRATION if ENABLE_DMM
165 select ARCH_MEMORY_PROBE if ENABLE_DMM
166 select ARCH_MEMORY_REMOVE if ENABLE_DMM
167 select FIX_MOVABLE_ZONE if ENABLE_DMM
Larry Basseld4d82c92011-12-07 09:52:49 -0800168 select CLEANCACHE
169 select QCACHE
Laura Abbott6d61a912011-10-27 16:44:14 -0700170 select MSM_MULTIMEDIA_USE_ION
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530171 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800172 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700173 select HOLES_IN_ZONE if SPARSEMEM
Krishna Vankae2922052012-03-02 09:59:12 +0530174 select MSM_RUN_QUEUE_STATS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700175
176config ARCH_MSM8930
177 bool "MSM8930"
178 select ARCH_MSM_KRAITMP
179 select ARM_GIC
180 select CPU_V7
181 select MSM_V2_TLMM
182 select MSM_GPIOMUX
183 select MSM_SCM if SMP
184 select MSM_DIRECT_SCLK_ACCESS
185 select REGULATOR
David Collins5779cea2012-01-05 15:09:21 -0800186 select MSM_RPM_REGULATOR
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700187 select MSM_RPM
188 select MSM_XO
189 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700190 select MSM_QDSP6_CODECS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700191 select MSM_PIL
192 select MSM_AUDIO_QDSP6 if SND_SOC
193 select CPU_HAS_L2_PMU
194 select MSM_SPM_V2
195 select MSM_L2_SPM
196 select MSM_NATIVE_RESTART
197 select DONT_MAP_HOLE_AFTER_MEMBANK0
Eric Holmbergeab10732011-09-23 19:44:43 -0600198 select MSM_REMOTE_SPINLOCK_SFPB
Larry Basself74479e2011-09-08 11:07:52 -0700199 select ARCH_POPULATES_NODE_MAP
200 select ARCH_SPARSEMEM_ENABLE
201 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basselb8d61022012-02-24 10:49:45 -0800202 select MEMORY_HOTPLUG if ENABLE_DMM
203 select MEMORY_HOTREMOVE if ENABLE_DMM
204 select ARCH_ENABLE_MEMORY_HOTPLUG if ENABLE_DMM
205 select ARCH_ENABLE_MEMORY_HOTREMOVE if ENABLE_DMM
206 select MIGRATION if ENABLE_DMM
207 select ARCH_MEMORY_PROBE if ENABLE_DMM
208 select ARCH_MEMORY_REMOVE if ENABLE_DMM
209 select FIX_MOVABLE_ZONE if ENABLE_DMM
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +0200210 select MSM_ULTRASOUND
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530211 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800212 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700213 select HOLES_IN_ZONE if SPARSEMEM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700214
215config ARCH_APQ8064
216 bool "APQ8064"
217 select ARCH_MSM_KRAITMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700218 select MSM_V2_TLMM
219 select ARM_GIC
220 select CPU_V7
221 select MSM_SCM if SMP
Joel King4ebccc62011-07-22 09:43:22 -0700222 select MSM_GPIOMUX
Eric Holmberg40d21882011-09-27 09:42:03 -0600223 select MSM_REMOTE_SPINLOCK_SFPB
Swaminathan Sathappan47e5d932011-12-05 14:48:07 -0800224 select MSM_PIL
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800225 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700226 select MSM_QDSP6_CODECS
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800227 select MSM_AUDIO_QDSP6 if SND_SOC
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530228 select MULTI_IRQ_HANDLER
Praveen Chidambaram78499012011-11-01 17:15:17 -0600229 select MSM_RPM
230 select MSM_SPM_V2
231 select MSM_L2_SPM
Matt Wagantall88b86312012-01-31 16:53:03 -0800232 select MSM_PM8X60 if PM
Neil Leeder814d3d32012-01-19 17:21:43 -0500233 select CPU_HAS_L2_PMU
Laura Abbott085dd202012-03-30 14:02:34 -0700234 select HOLES_IN_ZONE if SPARSEMEM
Larry Bassel67b921d2012-04-06 10:23:27 -0700235 select MEMORY_HOTPLUG if ENABLE_DMM
236 select MEMORY_HOTREMOVE if ENABLE_DMM
237 select ARCH_ENABLE_MEMORY_HOTPLUG if ENABLE_DMM
238 select ARCH_ENABLE_MEMORY_HOTREMOVE if ENABLE_DMM
239 select MIGRATION if ENABLE_DMM
240 select ARCH_MEMORY_PROBE if ENABLE_DMM
241 select ARCH_MEMORY_REMOVE if ENABLE_DMM
242 select FIX_MOVABLE_ZONE if ENABLE_DMM
243 select CLEANCACHE
244 select QCACHE
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -0600245 select MIGHT_HAVE_PCI
246 select ARCH_SUPPORTS_MSI
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700247
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700248config ARCH_MSMCOPPER
249 bool "MSM Copper"
250 select ARCH_MSM_KRAITMP
251 select MSM_V2_TLMM
252 select ARM_GIC
253 select CPU_V7
254 select MSM_SCM if SMP
255 select MSM_GPIOMUX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530256 select MULTI_IRQ_HANDLER
Olav Hauganb800c8c2012-01-30 08:50:45 -0800257 select MSM_MULTIMEDIA_USE_ION
Matt Wagantallc2bbdc32012-03-21 19:44:50 -0700258 select MSM_PIL
Praveen Chidambaramaa9d52b2012-04-02 11:09:47 -0600259 select MSM_SPM_V2
260 select MSM_L2_SPM
Praveen Chidambaram85b7b282012-04-16 13:45:15 -0600261 select MSM_PM8X60 if PM
Mahesh Sivasubramaniancb668712012-04-04 13:03:25 -0600262 select MSM_RPM_SMD
David Collinsc7642322012-04-04 10:19:12 -0700263 select REGULATOR
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700264
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700265config ARCH_FSM9XXX
266 bool "FSM9XXX"
267 select ARCH_MSM_SCORPION
268 select MSM_VIC
269 select CPU_V7
270 select MSM_REMOTE_SPINLOCK_LDREX
271 select FSM9XXX_TLMM
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530272 select MULTI_IRQ_HANDLER
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -0800273 select MSM_DALRPC
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800274
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700275config ARCH_MSM9615
276 bool "MSM9615"
277 select ARM_GIC
Taniya Dasb241bd82012-03-19 17:58:06 +0530278 select GIC_SECURE
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700279 select ARCH_MSM_CORTEX_A5
280 select CPU_V7
281 select MSM_V2_TLMM
282 select MSM_GPIOMUX
Praveen Chidambaramab3b1c42011-08-25 08:44:05 -0600283 select MSM_RPM
Maheshkumar Sivasubramanian738b4582011-09-06 17:26:24 -0600284 select MSM_SPM_V2
Rohit Vaswanif688fa62011-10-13 18:13:10 -0700285 select MSM_NATIVE_RESTART
Matt Wagantall9274df92011-12-15 11:11:05 -0800286 select REGULATOR
287 select MSM_RPM_REGULATOR
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530288 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800289 select MSM_PM8X60 if PM
Vikram Mulukutla2021c002011-12-16 12:32:59 -0800290 select MSM_XO
Olav Haugane6a0acd2012-04-05 09:29:12 -0700291 select MSM_MULTIMEDIA_USE_ION
Shiv Maliyappanahalli9ec55e92012-01-09 14:44:59 -0800292 select MSM_QDSP6_APR
293 select MSM_AUDIO_QDSP6 if SND_SOC
Rohit Vaswaniead426f2012-01-05 20:24:52 -0800294 select FIQ
Matt Wagantall9274df92011-12-15 11:11:05 -0800295
Taniya Das43bcdd62011-12-02 17:33:27 +0530296config ARCH_MSM8625
297 bool "MSM8625"
298 select ARCH_MSM_CORTEX_A5
299 select CPU_V7
300 select MSM_GPIOMUX
301 select ARM_GIC
302 select ARCH_MSM_CORTEXMP
303 select MULTI_IRQ_HANDLER
Trilok Soni3a453992012-03-06 18:46:22 +0530304 select ARM_TICKET_LOCKS
Krishna Vankae2922052012-03-02 09:59:12 +0530305 select MSM_RUN_QUEUE_STATS
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700306
307config ARCH_MSM9625
308 bool "MSM9625"
309 select ARM_GIC
310 select GIC_SECURE
311 select ARCH_MSM_CORTEX_A5
312 select SMP
313 select MSM_SMP
314 select CPU_V7
315 select MULTI_IRQ_HANDLER
316 select MSM_V2_TLMM
317
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -0700318endmenu
Daniel Walkerbf83de42010-03-16 16:29:44 -0700319
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700320choice
321 prompt "MSM SoC Revision"
322 default MSM_SOC_REV_NONE
323config MSM_SOC_REV_NONE
324 bool "N/A"
325 select EMULATE_DOMAIN_MANAGER_V7 if ARCH_QSD8X50
326 select VERIFY_PERMISSION_FAULT if ARCH_QSD8X50
Daniel Walker4ad15e62010-05-06 13:54:17 -0700327config MSM_SOC_REV_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700328 bool "Rev. A"
329 select ARCH_MSM7X27A if ARCH_MSM7X27
330endchoice
Daniel Walker4ad15e62010-05-06 13:54:17 -0700331
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700332config MSM_KRAIT_TBB_ABORT_HANDLER
333 bool "Krait TBB/TBH data abort handler"
334 depends on ARCH_MSM_KRAIT
335 depends on ARM_THUMB
336 help
337 Certain early samples of the Krait processor may generate data
338 aborts for TBB / TBH instructions that fail their condition code
339 checks. Enabling this option will ignore these erroneous data aborts,
340 at the expense of a very small performance penalty.
341
342 If unsure, say N.
343
Daniel Walker4ad15e62010-05-06 13:54:17 -0700344config ARCH_MSM_ARM11
345 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700346
Daniel Walker4ad15e62010-05-06 13:54:17 -0700347config ARCH_MSM_SCORPION
Daniel Walkerbf83de42010-03-16 16:29:44 -0700348 bool
349
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700350config ARCH_MSM_KRAIT
Daniel Walker46fe5f22010-08-18 11:00:25 -0700351 bool
Stephen Boyd51cabbe2011-12-02 13:28:56 -0800352 select ARM_L1_CACHE_SHIFT_6
Daniel Walker46fe5f22010-08-18 11:00:25 -0700353
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700354config MSM_SMP
355 bool
356
357config ARCH_MSM_SCORPIONMP
358 select ARCH_MSM_SCORPION
359 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530360 select HAVE_ARCH_HAS_CURRENT_TIMER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700361 bool
362
363config ARCH_MSM_KRAITMP
364 select ARCH_MSM_KRAIT
365 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530366 select HAVE_ARCH_HAS_CURRENT_TIMER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700367 bool
368
Taniya Das43bcdd62011-12-02 17:33:27 +0530369config ARCH_MSM_CORTEXMP
370 select MSM_SMP
371 bool
372
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700373config ARCH_MSM_CORTEX_A5
Bryan Huntsman239ef1e2011-11-23 15:09:13 -0800374 bool
Rohit Vaswaniaf7ae272012-01-09 10:28:57 -0800375 select HAVE_HW_BRKPT_RESERVED_RW_ACCESS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700376
377config ARCH_MSM7X27A
378 bool
379 select MSM_DALRPC
Justin Pauporeb3a33b72011-08-23 15:30:32 -0700380 select MSM_PROC_COMM_REGULATOR
Taniya Das86e0e132011-10-19 11:32:00 +0530381 select MULTI_IRQ_HANDLER
Taniya Das43bcdd62011-12-02 17:33:27 +0530382 select ARM_GIC
383 select ARCH_MSM_CORTEXMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700384
Gregory Beanf9f3d312010-04-30 22:06:50 -0700385config MSM_VIC
386 bool
Daniel Walkerbf83de42010-03-16 16:29:44 -0700387
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700388config MSM_RPM
389 bool "Resource Power Manager"
390 select MSM_MPM
391
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600392config MSM_RPM_SMD
393 depends on MSM_SMD
394 bool "Support for using SMD as the transport layer for communicatons with RPM"
395
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700396config MSM_MPM
397 bool "Modem Power Manager"
398
399config MSM_XO
400 bool
401
402config MSM_REMOTE_SPINLOCK_DEKKERS
403 bool
404config MSM_REMOTE_SPINLOCK_SWP
405 bool
406config MSM_REMOTE_SPINLOCK_LDREX
407 bool
Eric Holmbergeab10732011-09-23 19:44:43 -0600408config MSM_REMOTE_SPINLOCK_SFPB
409 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700410config MSM_ADM3
411 bool
412
413menu "MSM Board Selection"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700414
415config MACH_HALIBUT
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700416 depends on ARCH_MSM7X01A
417 depends on MSM_STACKED_MEMORY
418 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700419 bool "Halibut Board (QCT SURF7201A)"
420 help
421 Support for the Qualcomm SURF7201A eval board.
422
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700423config MACH_MSM7201A_SURF
424 depends on ARCH_MSM7X01A
425 depends on MSM_STACKED_MEMORY
426 default y
427 bool "MSM7201A SURF"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700428 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700429 Support for the Qualcomm MSM7201A SURF eval board.
430
431config MACH_MSM7201A_FFA
432 depends on ARCH_MSM7X01A
433 depends on MSM_STACKED_MEMORY
434 default y
435 bool "MSM7201A FFA"
436 help
437 Support for the Qualcomm MSM7201A FFA eval board.
438
439config MACH_TROUT
440 depends on ARCH_MSM7X01A
441 depends on MSM_STACKED_MEMORY
442 default y
443 bool "Trout"
444
445config MACH_MSM7X27_SURF
446 depends on ARCH_MSM7X27
447 depends on !MSM_STACKED_MEMORY
448 default y
449 bool "MSM7x27 SURF"
450 help
451 Support for the Qualcomm MSM7x27 SURF eval board.
452
453config MACH_MSM7X27_FFA
454 depends on ARCH_MSM7X27
455 depends on !MSM_STACKED_MEMORY
456 default y
457 bool "MSM7x27 FFA"
458 help
459 Support for the Qualcomm MSM7x27 FFA eval board.
460
461config MACH_MSM7X27A_RUMI3
462 depends on ARCH_MSM7X27A
463 depends on !MSM_STACKED_MEMORY
464 default y
465 bool "MSM7x27A RUMI3"
466 help
467 Support for the Qualcomm MSM7x27A RUMI3 Emulation Platform.
468
469config MACH_MSM7X27A_SURF
470 depends on ARCH_MSM7X27A
471 depends on !MSM_STACKED_MEMORY
472 default y
473 bool "MSM7x27A SURF"
474 help
475 Support for the Qualcomm MSM7x27A SURF.
476
477config MACH_MSM7X27A_FFA
478 depends on ARCH_MSM7X27A
479 depends on !MSM_STACKED_MEMORY
480 default y
481 bool "MSM7x27A FFA"
482 help
483 Support for the Qualcomm MSM7x27A FFA.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700484
Trilok Soni3d0f6c52011-07-26 16:06:58 +0530485config MACH_MSM7625A_SURF
486 depends on ARCH_MSM7X27A
487 depends on !MSM_STACKED_MEMORY
488 default y
489 bool "MSM7625A SURF"
490 help
491 Support for the Qualcomm MSM7625A SURF.
492
493config MACH_MSM7625A_FFA
494 depends on ARCH_MSM7X27A
495 depends on !MSM_STACKED_MEMORY
496 default y
497 bool "MSM7625A FFA"
498 help
499 Support for the Qualcomm MSM7625A FFA.
500
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530501config MACH_MSM7627A_QRD1
502 depends on ARCH_MSM7X27A
503 depends on !MSM_STACKED_MEMORY
504 default y
505 bool "MSM7627A QRD1"
506 help
Chintan Pandyab1bad0e2012-02-06 19:04:51 +0530507 Support for the Qualcomm MSM7627A Reference Design.
508
509config MACH_MSM7627A_QRD3
510 depends on ARCH_MSM7X27A
511 depends on !MSM_STACKED_MEMORY
512 default y
513 bool "MSM7627A QRD3"
514 help
515 Support for the Qualcomm MSM7627A Reference Design.
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530516
Taniya Dasc868a2e2012-01-03 10:18:47 +0530517config MACH_MSM7627A_EVB
518 depends on ARCH_MSM7X27A
519 depends on !MSM_STACKED_MEMORY
520 default y
521 bool "MSM7627A EVB"
522 help
523 Support for the Qualcomm MSM7627A Reference Design.
524
Taniya Das43bcdd62011-12-02 17:33:27 +0530525config MACH_MSM8625_RUMI3
526 depends on ARCH_MSM8625
527 depends on !MSM_STACKED_MEMORY
528 default y
529 bool "MSM8625 RUMI3"
530 help
531 Support for the Qualcomm MSM8625 RUMI3 Emulation Platform.
532
Taniya Dase3027e22012-02-27 16:32:27 +0530533config MACH_MSM8625_SURF
534 depends on ARCH_MSM8625
535 depends on !MSM_STACKED_MEMORY
536 default y
537 bool "MSM8625 SURF"
538 help
539 Support for the Qualcomm MSM8625 SURF.
540
Aparna Mallavarapu9f000a72012-04-20 15:37:57 +0530541config MACH_MSM8625_FFA
542 depends on ARCH_MSM8625
543 depends on !MSM_STACKED_MEMORY
544 default y
545 bool "MSM8625 FFA"
546 help
547 Support for the Qualcomm MSM8625 FFA.
548
Chintan Pandyaf4ad4002012-02-28 19:49:03 +0530549config MACH_MSM8625_EVB
550 depends on ARCH_MSM8625
551 depends on !MSM_STACKED_MEMORY
552 default y
553 bool "MSM8625 EVB"
554 help
555 Support for the Qualcomm MSM8625 Reference Design.
556
Taniya Dasbd096542012-03-15 17:43:45 +0530557config MACH_MSM8625_QRD7
558 depends on ARCH_MSM8625
559 depends on !MSM_STACKED_MEMORY
560 default y
561 bool "MSM8625 QRD7"
562 help
563 Support for the Qualcomm MSM8625 Reference Design.
564
Aparna Mallavarapu5a326242012-05-09 19:49:02 +0530565config MACH_MSM8625_EVT
566 depends on ARCH_MSM8625
567 depends on !MSM_STACKED_MEMORY
568 default y
569 bool "MSM8625 EVT"
570 help
571 Support for the Qualcomm MSM8625 Reference Design.
572
Daniel Walker7b521612010-05-06 12:44:57 -0700573config MACH_MSM7X30_SURF
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700574 depends on ARCH_MSM7X30
575 depends on !MSM_STACKED_MEMORY
576 default y
577 bool "MSM7x30 SURF"
578 help
579 Support for the Qualcomm MSM7x30 SURF eval board.
580
581config MACH_MSM7X30_FFA
582 depends on ARCH_MSM7X30
583 depends on !MSM_STACKED_MEMORY
584 default y
585 bool "MSM7x30 FFA"
586 help
587 Support for the Qualcomm MSM7x30 FFA eval board.
588
589config MACH_MSM7X30_FLUID
590 depends on ARCH_MSM7X30
591 depends on !MSM_STACKED_MEMORY
592 default y
593 bool "MSM7x30 FLUID"
594 help
595 Support for the Qualcomm MSM7x30 FLUID eval board.
596
597config MACH_SAPPHIRE
598 depends on ARCH_MSM7X01A
599 default n
600 bool "Sapphire"
Daniel Walker7b521612010-05-06 12:44:57 -0700601
Daniel Walker4ad15e62010-05-06 13:54:17 -0700602config MACH_QSD8X50_SURF
603 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700604 depends on MSM_SOC_REV_NONE
605 depends on MSM_STACKED_MEMORY
606 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700607 bool "QSD8x50 SURF"
608 help
609 Support for the Qualcomm QSD8x50 SURF eval board.
610
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700611config MACH_QSD8X50_FFA
Daniel Walker4ad15e62010-05-06 13:54:17 -0700612 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700613 depends on MSM_SOC_REV_NONE
614 depends on MSM_STACKED_MEMORY
615 default y
616 bool "QSD8x50 FFA"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700617 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700618 Support for the Qualcomm QSD8x50 FFA eval board.
619
620config MACH_MSM7X25_SURF
621 depends on ARCH_MSM7X25
622 depends on !MSM_STACKED_MEMORY
623 default y
624 bool "MSM7x25 SURF"
625 help
626 Support for the Qualcomm MSM7x25 SURF eval board.
627
628config MACH_MSM7X25_FFA
629 depends on ARCH_MSM7X25
630 depends on !MSM_STACKED_MEMORY
631 default y
632 bool "MSM7x25 FFA"
633 help
634 Support for the Qualcomm MSM7x25 FFA eval board.
635
636config MACH_MSM8X55_SURF
637 depends on ARCH_MSM7X30
638 depends on !MSM_STACKED_MEMORY
639 default y
640 bool "MSM8X55 SURF"
641 help
642 Support for the Qualcomm MSM8x55 SURF eval board.
643
644config MACH_MSM8X55_FFA
645 depends on ARCH_MSM7X30
646 depends on !MSM_STACKED_MEMORY
647 default y
648 bool "MSM8X55 FFA"
649 help
650 Support for the Qualcomm MSM8x55 FFA eval board.
651
652config MACH_MSM8X55_SVLTE_FFA
653 depends on ARCH_MSM7X30
654 depends on !MSM_STACKED_MEMORY
655 default y
656 bool "MSM8X55 SVLTE FFA"
657 help
658 Support for the Qualcomm MSM8x55 SVLTE FFA eval board.
659
660config MACH_MSM8X55_SVLTE_SURF
661 depends on ARCH_MSM7X30
662 depends on !MSM_STACKED_MEMORY
663 default y
664 bool "MSM8X55 SVLTE SURF"
665 help
666 Support for the Qualcomm MSM8x55 SVLTE SURF eval board.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700667
Steve Mucklea55df6e2010-01-07 12:43:24 -0800668config MACH_MSM8X60_RUMI3
669 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700670 default n
Steve Mucklea55df6e2010-01-07 12:43:24 -0800671 bool "MSM8x60 RUMI3"
672 help
673 Support for the Qualcomm MSM8x60 RUMI3 emulator.
674
Steve Muckle57bbf1c2010-01-07 12:51:10 -0800675config MACH_MSM8X60_SIM
676 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700677 default n
Steve Muckle57bbf1c2010-01-07 12:51:10 -0800678 bool "MSM8x60 Simulator"
679 help
680 Support for the Qualcomm MSM8x60 simulator.
681
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700682config MACH_MSM8X60_SURF
683 depends on ARCH_MSM8X60
684 default n
685 bool "MSM8x60 SURF"
686 help
687 Support for the Qualcomm MSM8x60 SURF eval board.
688
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700689config MACH_MSM8X60_FFA
690 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700691 default n
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700692 bool "MSM8x60 FFA"
693 help
694 Support for the Qualcomm MSM8x60 FFA eval board.
695
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700696config MACH_MSM8X60_FLUID
697 depends on ARCH_MSM8X60
698 default n
699 bool "MSM8x60 FLUID"
700 help
701 Support for the Qualcomm MSM8x60 FLUID platform. The FLUID is an
702 8x60 target which has a form factor that is much closer to that
703 of a phone than other targets. It also has a new display and
704 touchscreen controller.
705
706config MACH_MSM8X60_FUSION
707 depends on ARCH_MSM8X60
708 default n
709 bool "MSM8x60 FUSION"
710 help
711 Support for the Qualcomm MSM8x60 Fusion SURF device.
712
713config MACH_MSM8X60_FUSN_FFA
714 depends on ARCH_MSM8X60
715 default n
716 bool "MSM8x60 FUSN FFA"
717 help
718 Support for the Qualcomm MSM8x60 Fusion FFA device.
719
Zhang Chang Kenef05b172011-07-27 15:28:13 -0400720config MACH_MSM8X60_DRAGON
721 depends on ARCH_MSM8X60
722 default n
723 bool "MSM8x60 DRAGON"
724 help
725 Support for the Qualcomm MSM8x60 Dragon board.
726
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800727config MACH_MSM8960_SIM
728 depends on ARCH_MSM8960
729 bool "MSM8960 Simulator"
730 help
731 Support for the Qualcomm MSM8960 simulator.
732
Stepan Moskovchenko50ede4e2010-12-13 18:12:19 -0800733config MACH_MSM8960_RUMI3
734 depends on ARCH_MSM8960
735 bool "MSM8960 RUMI3"
736 help
737 Support for the Qualcomm MSM8960 RUMI3 emulator.
738
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700739config MACH_MSM8960_CDP
740 depends on ARCH_MSM8960
741 bool "MSM8960 CDP"
742 help
743 Support for the Qualcomm MSM8960 CDP device.
744
745config MACH_MSM8960_MTP
746 depends on ARCH_MSM8960
747 bool "MSM8960 MTP"
748 help
749 Support for the Qualcomm MSM8960 MTP device.
750
751config MACH_MSM8960_FLUID
752 depends on ARCH_MSM8960
753 bool "MSM8960 FLUID"
754 help
755 Support for the Qualcomm MSM8960 FLUID device.
756
Amir Samuelov0d1f8ae2011-07-28 11:13:58 +0300757config MACH_MSM8960_LIQUID
758 depends on ARCH_MSM8960
759 bool "MSM8960 LIQUID"
760 help
761 Support for the Qualcomm MSM8960 LIQUID device.
762
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700763config MACH_MSM8930_CDP
764 depends on ARCH_MSM8930
765 bool "MSM8930 CDP"
766 help
767 Support for the Qualcomm MSM8930 CDP device.
768
769config MACH_MSM8930_MTP
770 depends on ARCH_MSM8930
771 bool "MSM8930 MTP"
772 help
773 Support for the Qualcomm MSM8930 MTP device.
774
775config MACH_MSM8930_FLUID
776 depends on ARCH_MSM8930
777 bool "MSM8930 FLUID"
778 help
779 Support for the Qualcomm MSM8930 FLUID device.
780
Stepan Moskovchenko8768eff2011-12-01 18:55:07 -0800781config MACH_MSM8627_CDP
782 depends on ARCH_MSM8930
783 bool "MSM8627 CDP"
784 help
785 Support for the Qualcomm MSM8627 CDP device.
786
787config MACH_MSM8627_MTP
788 depends on ARCH_MSM8930
789 bool "MSM8627 MTP"
790 help
791 Support for the Qualcomm MSM8627 MTP device.
792
Rohit Vaswania8e7a832011-09-28 21:00:05 -0700793config MACH_MSM9615_CDP
794 depends on ARCH_MSM9615
795 bool "MSM9615 CDP"
796 help
797 Support for the Qualcomm MSM9615 CDP device.
798
799config MACH_MSM9615_MTP
800 depends on ARCH_MSM9615
801 bool "MSM9615 MTP"
802 help
803 Support for the Qualcomm MSM9615 MTP device.
804
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700805config MSM_USE_TSIF1
806 depends on ARCH_MSM8X60
807 bool "MSM8x60 use TSIF1"
808 help
809 Selects TSIF1 core to be used rather than TSIF0.
810 The two TSIF cores share the same DM configuration
811 so they cannot be used simultaneously.
812
813config MACH_APQ8064_SIM
814 depends on ARCH_APQ8064
815 bool "APQ8064 Simulator"
816 help
817 Support for the Qualcomm APQ8064 simulator.
818
Stepan Moskovchenkod256ddf2011-09-08 12:34:46 -0700819config MACH_APQ8064_RUMI3
820 depends on ARCH_APQ8064
821 bool "APQ8064 RUMI3"
822 help
823 Support for the Qualcomm APQ8064 RUMI3 emulator.
824
Joel King82b7e3f2012-01-05 10:03:27 -0800825config MACH_APQ8064_CDP
826 depends on ARCH_APQ8064
827 bool "APQ8064 CDP"
828 help
829 Support for the Qualcomm APQ8064 CDP device.
830
831config MACH_APQ8064_MTP
832 depends on ARCH_APQ8064
833 bool "APQ8064 MTP"
834 help
835 Support for the Qualcomm APQ8064 MTP device.
836
837config MACH_APQ8064_LIQUID
838 depends on ARCH_APQ8064
839 bool "APQ8064 LIQUID"
840 help
841 Support for the Qualcomm APQ8064 LIQUID device.
842
Joel King064bbf82012-04-01 13:23:39 -0700843config MACH_MPQ8064_CDP
844 depends on ARCH_APQ8064
845 bool "MPQ8064 CDP"
846 help
847 Support for the Qualcomm MPQ8064 CDP device.
848
Joel King11ca8202012-02-13 16:19:03 -0800849config MACH_MPQ8064_HRD
850 depends on ARCH_APQ8064
851 bool "MPQ8064 HRD"
852 help
853 Support for the Qualcomm MPQ8064 HRD device.
854
855config MACH_MPQ8064_DTV
856 depends on ARCH_APQ8064
857 bool "MPQ8064 DTV"
858 help
859 Support for the Qualcomm MPQ8064 DTV device.
860
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700861config MACH_FSM9XXX_SURF
862 depends on ARCH_FSM9XXX
863 depends on !MSM_STACKED_MEMORY
864 default y
865 bool "FSM9XXX SURF"
866 help
867 Support for the Qualcomm FSM9xxx femtocell
868 chipset based SURF evaluation board and
869 FFA board.
870
Daniel Walker4ad15e62010-05-06 13:54:17 -0700871endmenu
Brian Swetland9e73c842007-11-26 04:12:13 -0800872
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700873config MSM_STACKED_MEMORY
874 bool "Stacked Memory"
875 default y
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800876 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700877 This option is used to indicate the presence of on-die stacked
878 memory. When present this memory bank is used for a high speed
879 shared memory interface. When not present regular RAM is used.
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800880
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700881config PHYS_OFFSET
882 hex
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700883 default "0x40800000" if ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700884 default "0x80200000" if ARCH_APQ8064
885 default "0x80200000" if ARCH_MSM8960
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700886 default "0x80200000" if ARCH_MSM8930
Jin Hongcd35c5d2012-05-29 08:51:22 -0700887 default "0x00000000" if ARCH_MSMCOPPER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700888 default "0x10000000" if ARCH_FSM9XXX
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700889 default "0x20200000" if ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700890 default "0x00200000" if !MSM_STACKED_MEMORY
891 default "0x00000000" if ARCH_QSD8X50 && MSM_SOC_REV_A
892 default "0x20000000" if ARCH_QSD8X50
893 default "0x40200000" if ARCH_MSM8X60
894 default "0x10000000"
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800895
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700896config KERNEL_PMEM_EBI_REGION
897 bool "Enable in-kernel PMEM region for EBI"
898 default y if ARCH_MSM8X60
Olav Hauganb800c8c2012-01-30 08:50:45 -0800899 depends on ANDROID_PMEM && (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSMCOPPER)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700900 help
901 Enable the in-kernel PMEM allocator to use EBI memory.
902
903config KERNEL_PMEM_SMI_REGION
904 bool "Enable in-kernel PMEM region for SMI"
905 default y if ARCH_MSM8X60
906 depends on ANDROID_PMEM && ((ARCH_QSD8X50 && !PMEM_GPU0) || (ARCH_MSM8X60 && !VCM))
907 help
908 Enable the in-kernel PMEM allocator to use SMI memory.
909
910config PMEM_GPU0
911 bool "Enable PMEM GPU0 region"
912 default y
913 depends on ARCH_QSD8X50 && ANDROID_PMEM
914 help
915 Enable the PMEM GPU0 device on SMI Memory.
916
917config MSM_AMSS_VERSION
918 int
919 default 6210 if MSM_AMSS_VERSION_6210
920 default 6220 if MSM_AMSS_VERSION_6220
921 default 6225 if MSM_AMSS_VERSION_6225
922
923choice
924 prompt "AMSS modem firmware version"
925
926 default MSM_AMSS_VERSION_6225
927
928 config MSM_AMSS_VERSION_6210
929 bool "6.2.10"
930
931 config MSM_AMSS_VERSION_6220
932 bool "6.2.20"
933
934 config MSM_AMSS_VERSION_6225
935 bool "6.2.20 + New ADSP"
936endchoice
Stepan Moskovchenko2607b0a2010-11-15 17:46:10 -0800937
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700938config MSM_HAS_DEBUG_UART_HS
939 bool
940 help
941 Say Y here if high speed MSM UART is present.
942
943config MSM_HAS_DEBUG_UART_HS_V14
944 bool
945 select MSM_HAS_DEBUG_UART_HS
946 help
947 Say Y here if high speed MSM UART v1.4 is present.
948
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530949config MSM_DEBUG_UART_PHYS
950 hex
951 default 0xA9A00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART1
952 default 0xACA00000 if ARCH_MSM7X30 && DEBUG_MSM_UART1
953 default 0x94000000 if ARCH_FSM9XXX && DEBUG_MSM_UART1
954 default 0xA9B00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART2
955 default 0xACB00000 if ARCH_MSM7X30 && DEBUG_MSM_UART2
956 default 0x94100000 if ARCH_FSM9XXX && DEBUG_MSM_UART2
957 default 0xA9C00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART3
958 default 0xACC00000 if ARCH_MSM7X30 && DEBUG_MSM_UART3
959
Pavel Machek6339f662009-11-02 11:48:29 +0100960choice
961 prompt "Debug UART"
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800962 depends on DEBUG_LL
Pavel Machek6339f662009-11-02 11:48:29 +0100963
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800964 config DEBUG_MSM_UART1
965 bool "Kernel low-level debugging messages via MSM UART1"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530966 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800967 help
968 Say Y here if you want the debug print routines to direct
969 their output to the first serial port on MSM devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100970
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800971 config DEBUG_MSM_UART2
972 bool "Kernel low-level debugging messages via MSM UART2"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530973 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800974 help
975 Say Y here if you want the debug print routines to direct
976 their output to the second serial port on MSM devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100977
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800978 config DEBUG_MSM_UART3
979 bool "Kernel low-level debugging messages via MSM UART3"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530980 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800981 help
982 Say Y here if you want the debug print routines to direct
983 their output to the third serial port on MSM devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100984
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800985 config DEBUG_MSM8660_UART
986 bool "Kernel low-level debugging messages via MSM 8660 UART"
987 depends on ARCH_MSM8X60
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700988 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800989 help
990 Say Y here if you want the debug print routines to direct
991 their output to the serial port on MSM 8660 devices.
Pavel Machek6339f662009-11-02 11:48:29 +0100992
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800993 config DEBUG_MSM8960_UART
994 bool "Kernel low-level debugging messages via MSM 8960 UART"
Stepan Moskovchenko824db172012-05-29 18:05:09 -0700995 depends on ARCH_MSM8960 && DEBUG_LL
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800996 select DEBUG_MSM8930_UART
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700997 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800998 help
999 Say Y here if you want the debug print routines to direct
1000 their output to the serial port on MSM 8960 devices.
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001001
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001002 config DEBUG_MSM8930_UART
1003 bool "Kernel low-level debugging messages via MSM 8930 UART"
1004 depends on ARCH_MSM8930 && DEBUG_LL
1005 select MSM_HAS_DEBUG_UART_HS
1006 help
1007 Say Y here if you want the debug print routines to direct
1008 their output to the serial port on MSM 8930 devices.
1009
1010 config DEBUG_APQ8064_UART
1011 bool "Kernel low-level debugging messages via APQ 8064 UART"
1012 depends on ARCH_APQ8064 && DEBUG_LL
1013 select MSM_HAS_DEBUG_UART_HS
1014 help
1015 Say Y here if you want the debug print routines to direct
1016 their output to the serial port on APQ 8064 devices.
1017
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001018 config DEBUG_MSMCOPPER_UART
1019 bool "Kernel low-level debugging messages via MSM Copper UART"
1020 depends on ARCH_MSMCOPPER
1021 select MSM_HAS_DEBUG_UART_HS_V14
1022 help
1023 Say Y here if you want the debug print routines to direct
1024 their output to the serial port on MSM Copper devices.
Pavel Machek6339f662009-11-02 11:48:29 +01001025endchoice
1026
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001027choice
1028 prompt "Default Timer"
1029 default MSM7X00A_USE_GP_TIMER
1030
1031 config MSM7X00A_USE_GP_TIMER
1032 bool "GP Timer"
1033 help
1034 Low resolution timer that allows power collapse from idle.
1035
1036 config MSM7X00A_USE_DG_TIMER
1037 bool "DG Timer"
1038 help
1039 High resolution timer.
1040endchoice
1041
1042choice
1043 prompt "Suspend sleep mode"
1044 default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1045 help
1046 Allows overriding the sleep mode used. Leave at power
1047 collapse suspend unless the arm9 image has problems.
1048
1049 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1050 bool "Power collapse suspend"
1051 help
1052 Lowest sleep state. Returns through reset vector.
1053
1054 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1055 bool "Power collapse"
1056 help
1057 Sleep state that returns through reset vector.
1058
1059 config MSM7X00A_SLEEP_MODE_APPS_SLEEP
1060 bool "Apps Sleep"
1061
1062 config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1063 bool "Ramp down cpu clock and wait for interrupt"
1064
1065 config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1066 bool "Wait for interrupt"
1067endchoice
1068
1069config MSM7X00A_SLEEP_MODE
1070 int
1071 default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1072 default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1073 default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
1074 default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1075 default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1076
1077choice
1078 prompt "Idle sleep mode"
1079 default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1080 help
1081 Allows overriding the sleep mode used from idle. Leave at power
1082 collapse suspend unless the arm9 image has problems.
1083
1084 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1085 bool "Power collapse suspend"
1086 help
1087 Lowest sleep state. Returns through reset vector.
1088
1089 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1090 bool "Power collapse"
1091 help
1092 Sleep state that returns through reset vector.
1093
1094 config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1095 bool "Apps Sleep"
1096
1097 config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1098 bool "Ramp down cpu clock and wait for interrupt"
1099
1100 config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1101 bool "Wait for interrupt"
1102endchoice
1103
1104config MSM7X00A_IDLE_SLEEP_MODE
1105 int
1106 default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1107 default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1108 default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1109 default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1110 default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1111
1112config MSM7X00A_IDLE_SLEEP_MIN_TIME
1113 int "Minimum idle time before sleep"
1114 default 20000000
1115 help
1116 Minimum idle time in nanoseconds before entering low power mode.
1117
1118config MSM7X00A_IDLE_SPIN_TIME
1119 int "Idle spin time before cpu ramp down"
1120 default 80000
1121 help
1122 Spin time in nanoseconds before ramping down cpu clock and entering
1123 any low power state.
1124
1125menuconfig MSM_IDLE_STATS
1126 bool "Collect idle statistics"
1127 default y
1128 help
1129 Collect idle statistics and export them in proc/msm_pm_stats.
1130
1131if MSM_IDLE_STATS
1132
1133config MSM_IDLE_STATS_FIRST_BUCKET
1134 int "First bucket time"
1135 default 62500
1136 help
1137 Upper time limit in nanoseconds of first bucket.
1138
1139config MSM_IDLE_STATS_BUCKET_SHIFT
1140 int "Bucket shift"
1141 default 2
1142
1143config MSM_IDLE_STATS_BUCKET_COUNT
1144 int "Bucket count"
1145 default 10
1146
1147config MSM_SUSPEND_STATS_FIRST_BUCKET
1148 int "First bucket time for suspend"
1149 default 1000000000
1150 help
1151 Upper time limit in nanoseconds of first bucket of the
1152 histogram. This is for collecting statistics on suspend.
1153
1154endif # MSM_IDLE_STATS
1155
1156config CPU_HAS_L2_PMU
1157 bool "L2CC PMU Support"
1158 help
1159 Select this if the L2 cache controller has a Performance Monitoring Unit.
1160
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001161config HTC_HEADSET
1162 tristate "HTC 2 Wire detection driver"
1163 default n
1164 help
1165 Provides support for detecting HTC 2 wire devices, such as wired
1166 headset, on the trout platform. Can be used with the msm serial
1167 debugger, but not with serial console.
1168
1169config TROUT_BATTCHG
1170 depends on MACH_TROUT && POWER_SUPPLY
1171 default y
1172 bool "Trout battery / charger driver"
1173
1174config HTC_PWRSINK
1175 depends on MSM_SMD
1176 default n
1177 bool "HTC Power Sink Driver"
1178
1179config QSD_SVS
1180 bool "QSD Static Voltage Scaling"
1181 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1182 default y
1183 select TPS65023
1184 help
1185 Enables static voltage scaling using the TPS65023 PMIC.
1186
1187config QSD_PMIC_DEFAULT_DCDC1
1188 int "PMIC default output voltage"
1189 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1190 default 1250
1191 help
1192 This is the PMIC voltage at Linux kernel boot.
1193
1194config MSM_FIQ_SUPPORT
1195 default y
1196 bool "Enable installation of an FIQ handler."
1197
1198config MSM_SERIAL_DEBUGGER
1199 select MSM_FIQ_SUPPORT
1200 select KERNEL_DEBUGGER_CORE
1201 default n
1202 bool "FIQ Mode Serial Debugger"
1203 help
1204 The FIQ serial debugger can accept commands even when the
1205 kernel is unresponsive due to being stuck with interrupts
1206 disabled. Depends on the kernel debugger core in drivers/misc.
1207
1208config MSM_SERIAL_DEBUGGER_CONSOLE
1209 depends on MSM_SERIAL_DEBUGGER
1210 default n
1211 bool "Console on FIQ Serial Debugger port"
1212 help
1213 Enables a console so that printk messages are displayed on
1214 the debugger serial port as the occur.
Daniel Walkerbf83de42010-03-16 16:29:44 -07001215
Steve Mucklec8aabae2010-04-21 16:20:27 -07001216config MSM_PROC_COMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001217 default y
1218 bool "Proc-Comm RPC Interface"
1219 help
1220 Enables a lightweight communications interface to the
1221 baseband processor.
Steve Mucklec8aabae2010-04-21 16:20:27 -07001222
Brian Swetland2eb44eb2008-09-29 16:00:48 -07001223config MSM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001224 bool "MSM Shared Memory Driver (SMD)"
1225 help
1226 Support for the shared memory interface between the apps
1227 processor and the baseband processor. Provides access to
1228 the "shared heap", as well as virtual serial channels
1229 used to communicate with various services on the baseband
1230 processor.
1231
1232choice
1233 prompt "MSM Shared memory interface version"
1234 depends on MSM_SMD
1235 default MSM_SMD_PKG3 if ARCH_MSM_ARM11
1236 default MSM_SMD_PKG4 if ARCH_MSM_SCORPION
1237
1238 config MSM_SMD_PKG3
1239 bool
1240 prompt "Package 3"
1241
1242 config MSM_SMD_PKG4
1243 bool
1244 prompt "Package 4"
1245endchoice
1246
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -06001247config MSM_PCIE
1248 bool "MSM PCIe Controller driver"
1249 depends on PCI && PCI_MSI
1250 help
1251 Enables the PCIe functionality by configures PCIe core on
1252 MSM chipset and by enabling the ARM PCI framework extension.
1253
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001254config MSM_RPC_SDIO_XPRT
1255 depends on MSM_SDIO_AL
1256 default y
1257 bool "MSM SDIO XPRT Layer"
1258 help
1259 SDIO Transport Layer for RPC Rouer
1260
1261config MSM_RPC_SDIO_DEBUG
1262 depends on MSM_RPC_SDIO_XPRT
1263 default y
1264 bool "MSM SDIO XPRT debug support"
1265 help
1266 Support for debugging SDIO XPRT
1267
1268config MSM_SMD_DEBUG
1269 depends on MSM_SMD
1270 default y
1271 bool "MSM SMD debug support"
1272 help
1273 Support for debugging the SMD for communication
1274 between the ARM9 and ARM11
1275
1276config MSM_SDIO_AL
1277 depends on ((ARCH_MSM7X30 || MACH_MSM8X60_FUSN_FFA || MACH_TYPE_MSM8X60_FUSION) && HAS_WAKELOCK)
1278 default y
1279 tristate "SDIO-Abstraction-Layer"
1280 help
1281 Support MSM<->MDM Communication over SDIO bus.
1282 MDM SDIO-Client should have pipes support.
1283
1284config MSM_SDIO_DMUX
1285 bool "SDIO Data Mux Driver"
1286 depends on MSM_SDIO_AL
1287 default n
1288 help
1289 Support Muxed Data Channels over SDIO interface.
1290
1291config MSM_BAM_DMUX
1292 bool "BAM Data Mux Driver"
1293 depends on SPS
1294 default n
1295 help
1296 Support Muxed Data Channels over BAM interface.
1297 BAM has a limited number of pipes. This driver
1298 provides a means to support more logical channels
1299 via muxing than BAM could without muxing.
1300
1301config MSM_N_WAY_SMD
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001302 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001303 default y
1304 bool "MSM N-WAY SMD support"
1305 help
1306 Supports APPS-QDSP SMD communication along with
1307 normal APPS-MODEM SMD communication.
1308
1309config MSM_N_WAY_SMSM
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001310 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001311 default y
1312 bool "MSM N-WAY SMSM support"
1313 help
1314 Supports APPS-QDSP SMSM communication along with
1315 normal APPS-MODEM SMSM communication.
1316
1317config MSM_RESET_MODEM
1318 tristate "Reset Modem Driver"
1319 depends on MSM_SMD
1320 default m
1321 help
1322 Allows the user to reset the modem through a device node.
1323
1324config MSM_SMD_LOGGING
1325 depends on MSM_SMD
1326 default y
1327 bool "MSM Shared Memory Logger"
1328 help
1329 This option exposes the shared memory logger at /dev/smem_log
1330 and a debugfs node named smem_log.
1331
1332 If in doubt, say yes.
1333
Karthikeyan Ramasubramaniane1f4f732011-08-08 13:34:47 -06001334config MSM_IPC_LOGGING
1335 bool "MSM Debug Logging for IPC Drivers"
1336 help
1337 This option allows the debug logging for IPC Drivers.
1338
1339 If in doubt, say no.
1340
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001341config MSM_SMD_NMEA
1342 bool "NMEA GPS Driver"
1343 depends on MSM_SMD
1344 default y
1345 help
1346 Enable this to support the NMEA GPS device.
1347
1348 If in doubt, say yes.
1349
1350config MSM_SDIO_TTY
1351 bool "SDIO TTY Driver"
1352 depends on MSM_SDIO_AL
1353 default n
1354 help
1355 Provides a TTY driver SDIO TTY
1356 This driver can be used by user space
1357 applications for passing data through the
1358 SDIO interface.
1359
1360config MSM_SMD_TTY
1361 bool "SMD TTY Driver"
1362 depends on MSM_SMD
1363 default y
1364 help
1365 Provides TTY interfaces to interact with the modem.
1366
1367 If in doubt, say yes.
1368
1369config MSM_SMD_QMI
1370 bool "SMD QMI Driver"
1371 depends on MSM_SMD
1372 default y
1373 help
1374 Manages network data connections.
1375
1376 If in doubt, say yes.
1377
1378config MSM_SMD_PKT
1379 bool "SMD Packet Driver"
1380 depends on MSM_SMD
1381 default y
1382 help
1383 Provides a binary SMD non-muxed packet port interface.
1384
1385 If in doubt, say yes.
1386
1387config MSM_SDIO_CMUX
1388 bool "SDIO CMUX Driver"
1389 depends on MSM_SDIO_AL
1390 default n
1391 help
1392 Provides a Muxed port interface over SDIO QMI
1393
1394config MSM_DSPS
1395 bool "Sensors DSPS driver"
1396 depends on (MSM_PIL && (ARCH_MSM8X60 || ARCH_MSM8960))
1397 default n
1398 help
1399 Provides user-space interface to the sensors manager
1400 to turn on/off the Sensors Processor system clocks.
1401 It is the DSPS responsibility to turn on/off the sensors
1402 themself.
1403 The number of clocks and their name may vary between targets.
1404 It also triggers the PIL to load the DSPS firmware.
1405
1406config MSM_SDIO_CTL
1407 bool "SDIO CTL Driver"
1408 depends on MSM_SDIO_CMUX
1409 default n
1410 help
1411 Provides a binary SDIO control port interface.
1412
1413config MSM_ONCRPCROUTER
1414 depends on MSM_SMD
1415 default n
1416 bool "MSM ONCRPC router support"
1417 help
1418 Support for the MSM ONCRPC router for communication between
1419 the ARM9 and ARM11
1420
1421config MSM_IPC_ROUTER
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001422 depends on NET
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001423 default n
1424 bool "MSM IPC Router support"
1425 help
1426 Support for the MSM IPC Router for communication between
1427 the APPs and the MODEM
1428
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001429config MSM_IPC_ROUTER_SMD_XPRT
1430 depends on MSM_SMD
1431 depends on MSM_IPC_ROUTER
1432 default n
1433 bool "MSM SMD XPRT Layer"
1434 help
1435 SMD Transport Layer for IPC Router
1436
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001437config MSM_ONCRPCROUTER_DEBUG
1438 depends on MSM_ONCRPCROUTER
1439 default y
1440 bool "MSM debug ONCRPC router support"
1441 help
1442 Support for debugging the ONCRPC router for communication
1443 between the ARM9 and ARM11
1444
1445config MSM_RPC_LOOPBACK_XPRT
1446 depends on MSM_ONCRPCROUTER
1447 default n
1448 bool "MSM RPC local routing support"
1449 help
1450 Support for routing RPC messages between APPS clients
1451 and APPS servers. Helps in testing APPS RPC framework.
1452
1453config MSM_RPCSERVER_TIME_REMOTE
1454 depends on MSM_ONCRPCROUTER && RTC_HCTOSYS
1455 default y
1456 bool "Time remote RPC server"
1457 help
1458 The time remote server receives notification of time bases and
1459 reports these events to registered callback functions.
1460
1461config MSM_RPCSERVER_WATCHDOG
1462 depends on MSM_ONCRPCROUTER
1463 default y
1464 bool "Watchdog RPC server"
1465 help
1466 The dog_keepalive server handles watchdog events.
1467
1468config MSM_RPC_WATCHDOG
1469 depends on MSM_ONCRPCROUTER
1470 default n
1471 bool "Watchdog RPC client"
1472 help
1473 The dog_keepalive client module.
1474
1475config MSM_RPC_PING
1476 depends on MSM_ONCRPCROUTER && DEBUG_FS
1477 default m
1478 bool "MSM rpc ping"
1479 help
1480 Implements MSM rpc ping test module.
1481
1482config MSM_RPC_PROC_COMM_TEST
1483 depends on DEBUG_FS && MSM_PROC_COMM
1484 default m
1485 bool "MSM rpc proc comm test"
1486 help
1487 Implements MSM rpc proc comm test module.
1488
1489config MSM_RPC_OEM_RAPI
1490 depends on MSM_ONCRPCROUTER
1491 default m
1492 bool "MSM oem rapi"
1493 help
1494 Implements MSM oem rapi client module.
1495
1496config MSM_RPCSERVER_HANDSET
1497 depends on MSM_ONCRPCROUTER
1498 default y
1499 bool "Handset events RPC server"
1500 help
1501 Support for receiving handset events like headset detect,
1502 headset switch and clamshell state.
1503
1504config MSM_RMT_STORAGE_CLIENT
1505 depends on (ARCH_MSM && MSM_ONCRPCROUTER)
1506 default n
1507 bool "Remote Storage RPC client"
1508 help
1509 Provide RPC mechanism for remote processors to access storage
1510 device on apps processor.
1511
1512config MSM_RMT_STORAGE_CLIENT_STATS
1513 depends on (MSM_RMT_STORAGE_CLIENT && DEBUG_FS)
1514 default n
1515 bool "Remote storage RPC client performance statistics"
1516 help
1517 Collects performance statistics and shows this information
1518 through a debugfs file rmt_storage_stats.
1519
1520config MSM_SDIO_SMEM
1521 depends on MSM_SDIO_AL
1522 default n
1523 bool "SDIO SMEM for remote storage"
1524 help
1525 Copies data from remote MDM9K memory to local MSM8x60
1526 memory. Used by remote storage client to shadow
1527 MDM9K filesystem.
1528
1529config MSM_DALRPC
1530 bool "DAL RPC support"
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -08001531 default n
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001532 help
1533 Supports RPC calls to DAL devices on remote processor cores.
1534
1535config MSM_DALRPC_TEST
1536 tristate "DAL RPC test module"
1537 depends on (MSM_DALRPC && DEBUG_FS)
1538 default m
1539 help
1540 Exercises DAL RPC calls to QDSP6.
1541
1542if CPU_FREQ_MSM
1543
1544config MSM_CPU_FREQ_SET_MIN_MAX
1545 bool "Set Min/Max CPU frequencies."
1546 default n
1547 help
1548 Allow setting min and max CPU frequencies. Sysfs can be used
1549 to override these values.
1550
1551config MSM_CPU_FREQ_MAX
1552 int "Max CPU Frequency"
1553 depends on MSM_CPU_FREQ_SET_MIN_MAX
1554 default 384000
1555
1556config MSM_CPU_FREQ_MIN
1557 int "Min CPU Frequency"
1558 depends on MSM_CPU_FREQ_SET_MIN_MAX
1559 default 245760
1560
1561endif # CPU_FREQ_MSM
1562
1563config MSM_CPU_AVS
1564 bool "Enable software controlled Adaptive Voltage Scaling (AVS)"
1565 depends on (ARCH_MSM_SCORPION && QSD_SVS)
1566 depends on ARCH_QSD8X50
1567 default n
1568 select MSM_AVS_HW
1569 help
1570 This enables the s/w control of Adaptive Voltage Scaling feature
1571 in Qualcomm ARMv7 CPUs. It adjusts the voltage for each frequency
1572 based on feedback from three ring oscillators in the CPU.
1573
1574config MSM_AVS_HW
1575 bool "Enable Adaptive Voltage Scaling (AVS)"
1576 default n
1577 help
1578 Enable AVS hardware to fine tune voltage at each frequency. The
1579 AVS hardware blocks associated with each Qualcomm ARMv7 cores can
1580 fine tune the voltages based on the feedback from the ring
1581 oscillators.
1582
1583config MSM_HW3D
1584 tristate "MSM Hardware 3D Register Driver"
1585 depends on ANDROID_PMEM
1586 default y
1587 help
1588 Provides access to registers needed by the userspace OpenGL|ES
1589 library.
1590
1591config MSM_ADSP
1592 depends on (ARCH_MSM7X01A || ARCH_MSM7X25 || ARCH_MSM7X27)
1593 tristate "MSM ADSP driver"
1594 depends on ANDROID_PMEM
1595 default y
1596 help
1597 Provides access to registers needed by the userspace aDSP library.
1598
1599config ADSP_RPC_VER
1600 hex
1601 default 0x30002 if (ARCH_MSM7X27 || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2009))
1602 default 0x30001 if (ARCH_MSM7X01A || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2008))
1603 depends on MSM_ADSP
1604 help
1605 Select proper ADSP RPC version
1606choice
1607 prompt "ADSP RPC version"
1608
1609 default AMSS_7X25_VERSION_2009
1610
1611 config AMSS_7X25_VERSION_2009
1612 bool "2.0.09"
1613
1614 config AMSS_7X25_VERSION_2008
1615 bool "2.0.08"
1616endchoice
1617
1618config MSM7KV2_AUDIO
1619 bool "MSM7K v2 audio"
1620 depends on (ARCH_MSM7X30 && ANDROID_PMEM)
1621 default y
1622 help
1623 Enables QDSP5V2-based audio drivers for audio playbacks and
1624 voice call.
1625
1626config MSM_ADSP_REPORT_EVENTS
1627 bool "Report modem events from the DSP"
1628 default y
1629 depends on (MSM_ADSP || MSM7KV2_AUDIO)
1630 help
1631 Normally, only messages from the aDSP are reported to userspace.
1632 With this option, we report events from the aDSP as well.
1633
1634config MSM_QDSP6
1635 tristate "QDSP6 support"
1636 depends on ARCH_QSD8X50 && ANDROID_PMEM
1637 default y
1638 help
1639 Enable support for qdsp6. This provides audio and video functionality.
1640
1641config MSM8X60_AUDIO
1642 tristate "MSM8X60 audio support"
1643 depends on ARCH_MSM8X60 && ANDROID_PMEM
1644 default y
1645 help
1646 Enable support for qdsp6v2. This provides audio functionality.
1647
1648config MSM8X60_FTM_AUDIO_DEVICES
1649 bool "MSM8X60 audio factory test mode support"
1650 depends on MSM8X60_AUDIO
1651 help
1652 Enable support audio factory test mode devices. This is used
1653 in a production line environment.
1654
Ben Romberger45b351c2011-07-20 22:37:27 -07001655config RTAC
1656 bool "MSM8K real-time audio calibration support"
1657 default y
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001658 help
Ben Romberger45b351c2011-07-20 22:37:27 -07001659 Enable support for rtac. This enables calibration during
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001660 audio operation
1661
1662config MSM7X27A_AUDIO
1663 bool "MSM7X27A audio support"
1664 depends on ARCH_MSM7X27A && MSM_ADSP
1665 default n
1666 help
1667 Enable support for 7x27a. This provides audio functionality.
1668
Justin Pauporea6cd2092011-06-22 16:19:45 -07001669config MSM_PROC_COMM_REGULATOR
1670 bool
1671 depends on MSM_PROC_COMM && REGULATOR
1672 help
1673 Enable regulator framework support for regulators managed by PMLIB
1674 on the modem, and controlled through proccomm calls.
1675
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001676config MSM_VREG_SWITCH_INVERTED
1677 bool "Reverse vreg switch polarity"
1678 default n
1679 help
1680 Reverses the enable and disable for vreg switch.
1681
1682config MSM_DMA_TEST
1683 tristate "MSM DMA test module"
1684 default m
1685 help
1686 Intended to be compiled as a module. Provides a device node
1687 and ioctls for testing the MSM dma system.
1688
1689config WIFI_CONTROL_FUNC
1690 bool "Enable WiFi control function abstraction"
1691 help
1692 Enables Power/Reset/Carddetect function abstraction
1693
1694config WIFI_MEM_PREALLOC
1695 depends on WIFI_CONTROL_FUNC
1696 bool "Preallocate memory for WiFi buffers"
1697 help
1698 Preallocates memory buffers for WiFi driver
1699
1700config QSD_AUDIO
1701 bool "QSD audio"
1702 depends on ARCH_MSM_SCORPION && MSM_DALRPC && ANDROID_PMEM && !MSM_SMP
1703 default y
1704 help
1705 Provides PCM, MP3, and AAC audio playback.
1706
1707config AUDIO_AAC_PLUS
1708 depends on (MSM_ADSP || QSD_AUDIO || MSM7KV2_AUDIO)
1709 bool "AAC+ Audio"
1710 default y
1711 help
1712 Provides AAC+ decoding
1713
1714config AUDIO_ENHANCED_AAC_PLUS
1715 depends on AUDIO_AAC_PLUS
1716 bool "Enhanced AAC+ Audio"
1717 default y
1718 help
1719 Provides Enhanced AAC+ decoding
1720
1721config SURF_FFA_GPIO_KEYPAD
1722 bool "MSM SURF/FFA GPIO keypad"
1723 depends on INPUT_GPIO = "y"
1724 default y
1725 help
1726 Select if the GPIO keypad is attached.
1727
1728config MSM_SLEEP_TIME_OVERRIDE
1729 bool "Allow overriding suspend/sleep time with PM module parameter"
1730 default y
1731 help
1732 Enable the module parameter sleep_time_override. Specified
1733 in units of seconds, it overwrites the normal sleep time of
1734 suspend. The feature is required for automated power management
1735 testing.
1736
1737config MSM_MEMORY_LOW_POWER_MODE
1738 bool "Control the low power modes of memory"
1739 default n
1740 help
1741 The application processor controls whether memory should enter
1742 which low power mode.
1743
1744choice
1745 prompt "Default Memory Low Power Mode during Idle"
1746 depends on MSM_MEMORY_LOW_POWER_MODE
1747 default MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1748 help
1749 Selects the default low power mode of the memory during idle
1750 sleep.
1751
1752 config MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1753 bool "Memory active"
1754
1755 config MSM_MEMORY_LOW_POWER_MODE_IDLE_RETENTION
1756 bool "Memory in retention"
1757
1758 config MSM_MEMORY_LOW_POWER_MODE_IDLE_DEEP_POWER_DOWN
1759 bool "Memory in deep power down"
1760endchoice
1761
1762choice
1763 prompt "Default Memory Low Power Mode during Suspend"
1764 depends on MSM_MEMORY_LOW_POWER_MODE
1765 default MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1766 help
1767 Selects the default low power mode of the memory during suspend
1768 sleep.
1769
1770 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1771 bool "Memory active"
1772
1773 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_RETENTION
1774 bool "Memory in retention"
1775
1776 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_DEEP_POWER_DOWN
1777 bool "Memory in deep power down"
1778endchoice
1779
1780choice
1781 prompt "Power management timeout action"
1782 default MSM_PM_TIMEOUT_HALT
1783 help
1784 Selects the Application Processor's action when Power Management
1785 times out waiting for Modem's handshake.
1786
1787 config MSM_PM_TIMEOUT_HALT
1788 bool "Halt the Application Processor"
1789
1790 config MSM_PM_TIMEOUT_RESET_MODEM
1791 bool "Reset the Modem Processor"
1792
1793 config MSM_PM_TIMEOUT_RESET_CHIP
1794 bool "Reset the entire chip"
1795endchoice
1796
1797config MSM_IDLE_WAIT_ON_MODEM
1798 int "Wait for Modem to become ready for idle power collapse"
1799 default 0
1800 help
1801 If Modem is not ready to handle Application Processor's request
1802 for idle power collapse, wait the number of microseconds in case
1803 Modem becomes ready soon.
1804
Matt Wagantall9274df92011-12-15 11:11:05 -08001805config MSM_RPM_REGULATOR
1806 bool "RPM regulator driver"
Matt Wagantall32dc71e2012-01-04 11:13:11 -08001807 depends on MSM_RPM && REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -08001808 help
1809 Compile in support for the RPM regulator driver, used for setting
1810 voltages and other parameters of the various power rails supplied
1811 by some Qualcomm PMICs.
1812
David Collinsc7642322012-04-04 10:19:12 -07001813config MSM_RPM_REGULATOR_SMD
1814 bool "SMD RPM regulator driver"
1815 depends on REGULATOR
1816 depends on OF
1817 depends on MSM_RPM_SMD
1818 help
1819 Compile in support for the SMD RPM regulator driver which is used for
1820 setting voltages and other parameters of the various power rails
1821 supplied by some Qualcomm PMICs. The SMD RPM regulator driver should
1822 be used on systems which contain an RPM which communicates with the
1823 application processor over SMD.
1824
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001825config MSM_PIL
1826 bool "Peripheral image loading"
1827 select FW_LOADER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001828 default n
1829 help
1830 Some peripherals need to be loaded into memory before they can be
1831 brought out of reset.
1832
1833 Say yes to support these devices.
1834
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001835config MSM_PIL_MODEM
1836 tristate "Modem (ARM11) Boot Support"
1837 depends on MSM_PIL
1838 help
1839 Support for booting and shutting down ARM11 Modem processors.
1840
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001841config MSM_PIL_QDSP6V3
1842 tristate "QDSP6v3 (Hexagon) Boot Support"
1843 depends on MSM_PIL
1844 help
1845 Support for booting and shutting down QDSP6v3 processors (hexagon).
1846 The QDSP6 is a low power DSP used in audio software applications.
1847
Stephen Boydeb819882011-08-29 14:46:30 -07001848config MSM_PIL_QDSP6V4
1849 tristate "QDSP6v4 (Hexagon) Boot Support"
1850 depends on MSM_PIL
1851 help
1852 Support for booting and shutting down QDSP6v4 processors (hexagon).
1853 The QDSP6 is a low power DSP used in audio, modem firmware, and modem
1854 software applications.
1855
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07001856config MSM_PIL_LPASS_QDSP6V5
1857 tristate "LPASS QDSP6v5 (Hexagon) Boot Support"
1858 depends on MSM_PIL
1859 help
1860 Support for booting and shutting down QDSP6v5 processors (Hexagon)
1861 processors in low power audio subsystems.
1862
Stephen Boyd322a9922011-09-20 01:05:54 -07001863config MSM_PIL_RIVA
1864 tristate "RIVA (WCNSS) Boot Support"
1865 depends on MSM_PIL
1866 help
1867 Support for booting and shutting down the RIVA processor (WCNSS).
1868 Riva is the wireless subsystem processor used in bluetooth, wireless
1869 LAN, and FM software applications.
1870
Stephen Boydd89eebe2011-09-28 23:28:11 -07001871config MSM_PIL_TZAPPS
1872 tristate "TZApps Boot Support"
1873 depends on MSM_PIL
1874 help
1875 Support for booting and shutting down TZApps.
1876
1877 TZApps is an image that runs in the secure processor state. It is
1878 used to decrypt data and perform secure operations on the behalf of
1879 the kernel.
1880
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07001881config MSM_PIL_DSPS
1882 tristate "DSPS Boot Support"
1883 depends on MSM_PIL
1884 help
1885 Support for booting and shutting down ARM7 DSPS processors.
1886
1887 DSPS is a sensors offloading processor used for applications such
1888 as rotation detection, temperature, etc.
1889
Stephen Boyd7b973de2012-03-09 12:26:16 -08001890config MSM_PIL_VIDC
1891 tristate "Video Core Secure Boot Support"
1892 depends on MSM_PIL
1893 help
1894 Support for authenticating the video core image.
1895
Matt Wagantall292aace2012-01-26 19:12:34 -08001896config MSM_PIL_GSS
1897 tristate "GSS (Coretx A5) Boot Support"
1898 depends on MSM_PIL
1899 help
1900 Support for booting and shutting down Cortex A5 processors which run
1901 GPS subsystem firmware.
1902
Tianyi Gouc1e049f82011-11-23 14:20:16 -08001903config MSM_PIL_PRONTO
1904 tristate "PRONTO (WCNSS) Boot Support"
1905 depends on MSM_PIL
1906 help
1907 Support for booting and shutting down the PRONTO processor (WCNSS).
1908 PRONTO is the wireless subsystem processor used in bluetooth, wireless
1909 LAN, and FM software applications.
1910
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001911config MSM_SCM
1912 bool "Secure Channel Manager (SCM) support"
1913 default n
1914
1915config MSM_SUBSYSTEM_RESTART
1916 bool "MSM Subsystem Restart Driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001917 depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001918 default n
1919 help
1920 This option enables the MSM subsystem restart driver, which provides
1921 a framework to handle subsystem crashes.
1922
Matt Wagantallf8020902011-08-30 21:19:23 -07001923config MSM_SYSMON_COMM
1924 bool "MSM System Monitor communication support"
1925 depends on MSM_SMD && MSM_SUBSYSTEM_RESTART
1926 default y
1927 help
1928 This option adds support for MSM System Monitor library, which
1929 provides an API that may be used for notifying subsystems within
1930 the SoC about other subsystems' power-up/down state-changes.
1931
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001932config MSM_MODEM_8960
1933 bool "MSM 8960 Modem driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001934 depends on (ARCH_MSM8960 || ARCH_MSM9615)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001935 help
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001936 This option enables the modem driver for the MSM8960 and MSM9615, which monitors
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001937 modem hardware watchdog interrupt lines and plugs into the subsystem
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001938 restart and PIL drivers. For MSM9615, it only supports a full chip reset.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001939
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001940config MSM_LPASS_8960
1941 tristate "MSM 8960 Lpass driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001942 depends on (ARCH_MSM8960 || ARCH_MSM9615)
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001943 help
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001944 This option enables the lpass driver for the MSM8960 and MSM9615. This monitors
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001945 lpass hardware watchdog interrupt lines and plugs into the subsystem
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001946 restart and PIL drivers. For MSM9615, it only supports a full chip reset.
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001947
Ankur Nandwanie258cf02011-08-19 10:16:38 -07001948config MSM_WCNSS_SSR_8960
1949 tristate "MSM 8960 WCNSS restart module"
1950 depends on (ARCH_MSM8960)
1951 help
1952 This option enables the WCNSS restart module for MSM8960, which
1953 monitors WCNSS hardware watchdog interrupt lines and plugs WCNSS
1954 into the subsystem restart framework.
1955
Rohit Vaswanid0fb4182012-03-19 18:07:59 -07001956config MSM_GSS_SSR_8064
1957 bool "MSM 8064 GSS restart driver"
1958 depends on (ARCH_APQ8064)
1959 help
1960 This option enables the gps subsystem restart driver for APQ8064, which monitors
1961 gss hardware watchdog interrupt lines and plugs into the subsystem
1962 restart and PIL drivers.
1963
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001964config SCORPION_Uni_45nm_BUG
1965 bool "Scorpion Uni 45nm(SC45U): Workaround for ICIMVAU and BPIMVA"
1966 depends on ARCH_MSM7X30 || (ARCH_QSD8X50 && MSM_SOC_REV_A)
1967 default y
1968 help
1969 Invalidating the Instruction Cache by Modified Virtual Address to PoU and
1970 invalidating the Branch Predictor Array by Modified Virtual Address can
1971 create invalid entries in the TLB with the wrong ASID values on Scorpion
1972 Uniprocessor 45nm (SC45U) cores. This option enables the recommended software
1973 workaround for Scorpion Uniprocessor 45nm cores.
1974
1975 This bug is not applicable to any ScorpionMP or Scorpion Uni 65nm(SC65U) cores.
1976
Harini Jayaramanef7805f2011-09-28 12:45:31 -06001977config MSM_BUSPM_DEV
1978 tristate "MSM Bus Performance Monitor Kernel Module"
1979 depends on (ARCH_MSM8X60 || ARCH_MSM8960)
1980 default m
1981 help
1982 This kernel module is used to mmap() hardware registers for the
1983 performance monitors, counters, etc. The module can also be used to
1984 allocate physical memory which is used by bus performance hardware to
1985 dump performance data.
1986
Mona Hossain11c03ac2011-10-26 12:42:10 -07001987config MSM_TZ_LOG
1988 tristate "MSM Trust Zone (TZ) Log Driver"
1989 depends on DEBUG_FS
1990 help
1991 This option enables a driver with a debugfs interface for messages
1992 produced by the Secure code (Trust zone). These messages provide
1993 diagnostic information about TZ operation.
1994
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001995config MSM_RPM_LOG
1996 tristate "MSM Resource Power Manager Log Driver"
1997 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06001998 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001999 default n
2000 help
2001 This option enables a driver which can read from a circular buffer
2002 of messages produced by the RPM. These messages provide diagnostic
2003 information about RPM operation. The driver outputs the messages
2004 via a debugfs node.
2005
2006config MSM_RPM_STATS_LOG
2007 tristate "MSM Resource Power Manager Stat Driver"
2008 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002009 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002010 default n
2011 help
2012 This option enables a driver which reads RPM messages from a shared
2013 memory location. These messages provide statistical information about
2014 the low power modes that RPM enters. The drivers outputs the message
2015 via a debugfs node.
2016
2017config MSM_IOMMU
2018 bool "MSM IOMMU Support"
Joel King41d594e2011-10-14 13:18:20 -07002019 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_APQ8064
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002020 select IOMMU_API
2021 default n
2022 help
2023 Support for the IOMMUs found on certain Qualcomm SOCs.
2024 These IOMMUs allow virtualization of the address space used by most
2025 cores within the multimedia subsystem.
2026
2027 If unsure, say N here.
2028
2029config IOMMU_PGTABLES_L2
2030 bool "Allow SMMU page tables in the L2 cache (Experimental)"
2031 depends on MSM_IOMMU=y
2032 depends on MMU
2033 depends on CPU_DCACHE_DISABLE=n
2034 depends on SMP
2035 default y
2036 help
2037 Improves TLB miss latency at the expense of potential L2 pollution.
2038 However, with large multimedia buffers, the TLB should mostly contain
2039 section mappings and TLB misses should be quite infrequent.
2040 Most people can probably say Y here.
2041
2042config MSM_DIRECT_SCLK_ACCESS
2043 bool "Direct access to the SCLK timer"
2044 default n
2045
2046config IOMMU_API
2047 bool
Brian Swetland2eb44eb2008-09-29 16:00:48 -07002048
Gregory Beanab78cde2010-09-01 16:26:12 -07002049config MSM_GPIOMUX
2050 bool
2051
Gregory Bean1963a2a2010-08-28 10:05:44 -07002052config MSM_V2_TLMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002053 bool
2054
2055config FSM9XXX_TLMM
Gregory Bean1963a2a2010-08-28 10:05:44 -07002056 bool
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002057
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002058config MSM_SECURE_IO
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002059 bool
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002060
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002061config MSM_NATIVE_RESTART
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002062 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002063
Matt Wagantall88b86312012-01-31 16:53:03 -08002064config MSM_PM2
2065 depends on PM
2066 bool
2067
2068config MSM_PM8X60
2069 depends on PM
2070 bool
2071
2072config MSM_NOPM
2073 default y if !PM
2074 bool
2075
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002076config MSM_BUS_SCALING
2077 bool "Bus scaling driver"
2078 default n
2079
Gagan Mac85c70492011-06-10 16:07:47 -06002080config MSM_BUS_RPM_MULTI_TIER_ENABLED
2081 bool "RPM Multi-tiering Configuration"
2082 depends on MSM_BUS_SCALING
2083
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002084config MSM_WATCHDOG
2085 bool "MSM Watchdog Support"
Rohit Vaswanie897f842012-03-19 14:19:34 -07002086 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_FSM9XXX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002087 help
2088 This enables the watchdog as is present on 8x60. Currently we use
2089 core 0's watchdog, and reset the entire SoC if it times out. It does
2090 not run during the bootup process, so it will not catch any early
2091 lockups.
2092
2093config MSM_DLOAD_MODE
2094 bool "Enable download mode on crashes"
Rohit Vaswani92b071a2011-10-18 20:10:09 -07002095 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002096 default n
2097 help
2098 This makes the SoC enter download mode when it resets
2099 due to a kernel panic. Note that this doesn't by itself
2100 make the kernel reboot on a kernel panic - that must be
2101 enabled via another mechanism.
2102
Pratik Patel17f3b822011-11-21 12:41:47 -08002103config MSM_JTAG
2104 bool "JTAG debug and trace support"
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002105 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002106 Add additional support for JTAG kernel debugging and tracing.
Pratik Patel7831c082011-06-08 21:44:37 -07002107
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002108config MSM_ETM
2109 tristate "Enable MSM ETM and ETB"
Pratik Patel17f3b822011-11-21 12:41:47 -08002110 depends on ARCH_MSM8X60
2111 select MSM_JTAG
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002112 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002113 Enables embedded trace collection on MSM8660
Pratik Patel7831c082011-06-08 21:44:37 -07002114
2115config MSM_QDSS
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002116 bool "Qualcomm Debug Subsystem"
Pratik Patel17f3b822011-11-21 12:41:47 -08002117 select MSM_JTAG
Pratik Patel7831c082011-06-08 21:44:37 -07002118 help
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002119 Enables support for Qualcomm Debug Subsystem.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002120
Pratik Patel29cba152012-01-03 11:40:26 -08002121config MSM_QDSS_ETM_DEFAULT_ENABLE
2122 bool "Turn on QDSS ETM Tracing by Default"
2123 depends on MSM_QDSS
2124 help
2125 Turns on QDSS ETM tracing by default. Otherwise, tracing is
2126 disabled by default but can be enabled by other means.
2127
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002128config MSM_SLEEP_STATS
2129 bool "Enable exporting of MSM sleep stats to userspace"
2130 depends on CPU_IDLE
2131 default n
2132
Lynus Vazdde09ee2012-01-05 13:28:22 +05302133config MSM_SLEEP_STATS_DEVICE
2134 bool "Enable exporting of MSM sleep device stats to userspace"
2135
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302136config MSM_RUN_QUEUE_STATS
2137 bool "Enable collection and exporting of MSM Run Queue stats to userspace"
Krishna Vankae2922052012-03-02 09:59:12 +05302138 depends on (MSM_SOC_REV_A || ARCH_MSM8X60 || ARCH_MSM8960)
2139 help
2140 This option enalbes statistics collection on Run Queue. A daemon
2141 in user mode, called MPDecision will be using this data to decide
2142 on when to switch off/on the other cores.
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302143
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002144config MSM_STANDALONE_POWER_COLLAPSE
2145 bool "Enable standalone power collapse"
2146 default n
2147
2148config MSM_GSBI9_UART
2149 bool "Enable GSBI9 UART device"
2150 default n
2151 help
2152 This enables GSBI9 configured into UART.
2153
2154config MSM_SHARED_GPIO_FOR_UART2DM
2155 bool "Use shared GPIOs into UART mode"
2156 depends on (ARCH_MSM7X27A && !MMC_MSM_SDC3_8_BIT_SUPPORT && !MMC_MSM_SDC4_SUPPORT)
2157 help
2158 This option configures GPIO muxed with SDC4/MMC3
2159 8-bit mode into UART mode. It is used for serial
2160 console on UART2DM. Say Y if you want to have
2161 serial console on UART2DM.
2162
2163config MSM_SHOW_RESUME_IRQ
2164 bool "Enable logging of interrupts that could have caused resume"
Bryan Huntsmancc147032011-11-23 13:03:56 -08002165 depends on (ARM_GIC || PMIC8058)
2166 default y if PMIC8058
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002167 default n
2168 help
2169 This option logs wake up interrupts that have triggered just before
2170 the resume loop unrolls. Say Y if you want to debug why the system
2171 resumed.
2172
2173config BT_MSM_PINTEST
2174 tristate "MSM Bluetooth Pin Connectivity Test"
2175 depends on ((ARCH_MSM8X60 || ARCH_MSM7X27A) && DEBUG_FS)
2176 default n
2177 help
2178 Bluetooth MSM Pin Connectivity test module.
2179 This driver provides support for verifying the MSM to BT pin
2180 connectivity.
2181
2182config MSM_FAKE_BATTERY
2183 depends on POWER_SUPPLY
2184 default n
2185 bool "MSM Fake Battery"
2186 help
2187 Enables MSM fake battery driver.
2188
2189config MSM_QDSP6_APR
2190 bool "Audio QDSP6 APR support"
2191 depends on MSM_SMD
2192 default n
2193 help
2194 Enable APR IPC protocol support between
2195 application processor and QDSP6. APR is
2196 used by audio driver to configure QDSP6's
2197 ASM, ADM and AFE.
2198
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -07002199config MSM_QDSP6_CODECS
2200 bool "Audio Codecs on QDSP6 APR "
2201 depends on MSM_SMD
2202 default n
2203 help
2204 Enable Audio codecs with APR IPC protocol support between
2205 application processor and QDSP6. APR is
2206 used by audio driver to configure QDSP6's
2207 ASM, ADM and AFE.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002208
2209config MSM_AUDIO_QDSP6
2210 bool "QDSP6 HW Audio support"
2211 select SND_SOC_MSM_QDSP6_INTF
2212 default n
2213 help
2214 Enable HW audio support in QDSP6.
2215 QDSP6 can support HW encoder & decoder and audio processing
2216
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002217config MSM_ULTRASOUND
2218 bool "MSM ultrasound support"
2219 depends on MSM_AUDIO_QDSP6
2220 help
2221 Enable support for qdsp6/ultrasound.
2222
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002223config MSM_RPC_VIBRATOR
2224 bool "RPC based MSM Vibrator Support"
2225 depends on MSM_ONCRPCROUTER
2226 help
2227 Enable the vibrator support on MSM over RPC. The vibrator
2228 is connected on the PMIC. Say Y if you want to enable this
2229 feature.
2230
2231config PM8XXX_RPC_VIBRATOR
2232 bool "RPC based Vibrator on PM8xxx PMICs"
2233 depends on MSM_RPC_VIBRATOR
2234 help
2235 Enable the vibrator support on MSM over RPC. The vibrator
2236 is connected on the PM8XXX PMIC. Say Y if you want to enable
2237 this feature.
2238
2239config MSM_SPM_V1
2240 bool "Driver support for SPM Version 1"
2241 help
2242 Enables the support for Version 1 of the SPM driver. SPM hardware is
2243 used to manage the processor power during sleep. The driver allows
2244 configuring SPM to allow different power modes.
2245
2246config MSM_SPM_V2
2247 bool "Driver support for SPM Version 2"
2248 help
2249 Enables the support for Version 2 of the SPM driver. SPM hardware is
2250 used to manage the processor power during sleep. The driver allows
2251 configuring SPM to allow different power modes.
2252
2253config MSM_L2_SPM
2254 bool "SPM support for L2 cache"
2255 depends on MSM_SPM_V2
2256 help
2257 Enable SPM driver support for L2 cache. Some MSM chipsets allow
2258 control of L2 cache low power mode with a Subsystem Power manager.
2259 Enabling this driver allows configuring L2 SPM for low power modes
2260 on supported chipsets.
2261
Laura Abbott2d1760b2011-09-29 21:31:24 -07002262config MSM_MULTIMEDIA_USE_ION
2263 bool "Multimedia suport using Ion"
2264 depends on ION_MSM
2265 help
2266 Enable support for multimedia drivers using Ion for buffer management
2267 instead of pmem. Selecting this may also involve userspace
2268 dependencies as well.
2269
Naveen Ramaraj51f5e8b2012-04-09 15:58:40 -07002270config MSM_OCMEM
2271 bool "MSM On-Chip memory driver (OCMEM)"
2272 help
2273 Enable support for On-Chip Memory available on certain MSM chipsets.
2274 OCMEM is a low latency, high performance pool shared by subsystems.
2275
Laura Abbottad340ff2012-01-04 14:23:48 -08002276config MSM_RTB
2277 bool "Register tracing"
2278 help
2279 Add support for logging different events to a small uncached
2280 region. This is designed to aid in debugging reset cases where the
2281 caches may not be flushed before the target resets.
2282
2283config MSM_RTB_SEPARATE_CPUS
2284 bool "Separate entries for each cpu"
2285 depends on MSM_RTB
Laura Abbott9959f982012-02-28 11:30:50 -08002286 depends on SMP
Laura Abbottad340ff2012-01-04 14:23:48 -08002287 help
2288 Under some circumstances, it may be beneficial to give dedicated space
2289 for each cpu to log accesses. Selecting this option will log each cpu
2290 separately. This will guarantee that the last acesses for each cpu
2291 will be logged but there will be fewer entries per cpu
2292
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002293config MSM_CACHE_ERP
2294 bool "Cache / CPU error reporting"
2295 depends on ARCH_MSM_KRAIT
2296 help
2297 Say 'Y' here to enable reporting of cache and TLB errors to the kernel
2298 log. Enabling this feature can be used as a system debugging technique
2299 if cache corruption is suspected. Cache error statistics will also be
2300 reported in /proc/cpu/msm_cache_erp.
2301
2302 For production builds, you should probably say 'N' here.
2303
2304config MSM_L1_ERR_PANIC
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002305 bool "Panic on L1 cache errors"
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002306 depends on MSM_CACHE_ERP
2307 help
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002308 To cause the kernel to panic whenever an L1 cache error is detected, say
2309 'Y' here. This may be useful as a debugging technique if general system
2310 instability is suspected.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002311
2312 For production builds, you should probably say 'N' here.
2313
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002314config MSM_L2_ERP_PRINT_ACCESS_ERRORS
2315 bool "Report L2 master port slave/decode errors in kernel log"
2316 depends on MSM_CACHE_ERP
2317 help
2318 Master port errors can occur when a memory request is not properly
2319 handled by the destination slave. This can occur if the destination
2320 register does not exist or is inaccessible due to security
2321 restrictions or (in some cases) clock configuration. Enabling this
2322 option will cause a backtrace to be printed to the kernel log whenever
2323 such an error is encountered. Note that the error is reported as an
2324 interrupt rather than as an exception, meaning that the backtrace may
2325 have some skid. This option may help with debugging, though production
2326 builds should probably say 'N' here.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002327
2328config MSM_L2_ERP_PORT_PANIC
2329 bool "Panic on L2 master port errors"
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002330 depends on MSM_CACHE_ERP && MSM_L2_ERP_PRINT_ACCESS_ERRORS
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002331 help
2332 Master port errors can occur when a memory request is not properly
2333 handled by the destination slave. Enable this option to catch drivers
2334 which attempt to access bad areas of the address space, or access
2335 hardware registers in an improper state (such as certain clocks not
2336 being on). This option may help with debugging, though production
2337 builds should probably say 'N' here.
2338
2339config MSM_L2_ERP_1BIT_PANIC
2340 bool "Panic on recoverable L2 soft errors"
2341 depends on MSM_CACHE_ERP
2342 help
2343 Enable this option to cause a kernel panic whenever the L2 cache
2344 encounters a single-bit (correctable) soft error. This option should
2345 only be enabled when doing low-level debugging where cache corruption
2346 is suspected.
2347
2348 For production builds, you should definitely say 'N' here.
2349
2350config MSM_L2_ERP_2BIT_PANIC
2351 bool "Panic on unrecoverable L2 soft errors"
2352 depends on MSM_CACHE_ERP
2353 help
2354 Enable this option to cause a kernel panic whenever the L2 cache
2355 encounters a double-bit (non-correctable) soft error. Debug builds
2356 will likely benefit from having this option enabled to catch cache
2357 problems as soon as possible.
2358
2359 For production builds, it may be acceptable to say 'N' here, since
2360 an uncorrectable error might not necessarily cause further problems.
Laura Abbottad340ff2012-01-04 14:23:48 -08002361
Praveen Chidambaramf53ef1b2011-12-06 08:27:49 -07002362config MSM_DCVS
2363 bool "Use MSM DCVS for CPU/GPU Frequency control"
2364 depends on MSM_SCM
2365 help
2366 Enable support for MSM DCVS to control all CPU and GPU core frequencies.
2367 The DCVS manager allows idle driver to feed the idle information to the
2368 algorithm and the algorithm returns a frequency for the core which is
2369 passed to the frequency change driver.
2370
Taniya Dasc43e6872012-03-21 16:41:14 +05302371config HAVE_ARCH_HAS_CURRENT_TIMER
2372 bool
Laura Abbott306bcc22012-03-08 11:24:53 -08002373
2374config MSM_CACHE_DUMP
2375 bool "Cache dumping support"
2376 help
2377 Add infrastructure to dump the L1 and L2 caches to an allocated buffer.
2378 This allows for analysis of the caches in case cache corruption is
2379 suspected.
2380
Laura Abbott7b637362012-03-29 16:43:49 -07002381config MSM_CACHE_DUMP_ON_PANIC
2382 bool "Dump caches on panic"
2383 depends on MSM_CACHE_DUMP
2384 help
2385 By default, the caches are flushed on panic. This means that trying to
2386 look at them in a RAM dump will give useless data. Select this if you
2387 want to dump the L1 and L2 caches on panic before any flush occurs.
2388 If unsure, say N
2389
Jack Phamccbbfab2012-04-09 19:50:20 -07002390config MSM_HSIC_SYSMON
2391 tristate "MSM HSIC system monitor driver"
2392 depends on USB
2393 help
2394 Add support for bridging with the system monitor interface of MDM
2395 over HSIC. This driver allows the local system monitor to
2396 communicate with the remote system monitor interface.
2397
2398config MSM_HSIC_SYSMON_TEST
2399 tristate "MSM HSIC system monitor bridge test"
2400 depends on USB && MSM_HSIC_SYSMON && DEBUG_FS
2401 help
2402 Enable the test hook for the Qualcomm system monitor HSIC driver.
2403 This will create a debugfs file entry named "hsic_sysmon_test" which
2404 can be read and written to send character data to the sysmon port of
2405 the modem over USB.
2406
Brian Swetland9e73c842007-11-26 04:12:13 -08002407endif