blob: 4afe6cfbdc954efe1f4a265e4c894f830888b307 [file] [log] [blame]
Brian Swetland1637de02008-09-09 07:13:33 -07001if ARCH_MSM
Brian Swetland9e73c842007-11-26 04:12:13 -08002
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -07003menu "MSM SoC Type"
Daniel Walkerbf83de42010-03-16 16:29:44 -07004
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07005config ARCH_MSM7X01A
Daniel Walkerbf83de42010-03-16 16:29:44 -07006 bool "MSM7x00A / MSM7x01A"
7 select ARCH_MSM_ARM11
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07008 select MSM_VIC
Daniel Walkerbf83de42010-03-16 16:29:44 -07009 select CPU_V6
David Brown74d10d72011-05-16 13:57:39 -070010 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070011 select MSM_REMOTE_SPINLOCK_SWP
12
13config ARCH_MSM7X25
14 bool "MSM7x25"
15 select ARCH_MSM_ARM11
16 select MSM_VIC
17 select CPU_V6
Steve Mucklef132c6c2012-06-06 18:30:57 -070018 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070019 select MSM_REMOTE_SPINLOCK_SWP
Taniya Dasbe561a02011-10-12 09:53:11 +053020 select MULTI_IRQ_HANDLER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070021
22config ARCH_MSM7X27
23 bool "MSM7x27"
24 select ARCH_MSM_ARM11 if MSM_SOC_REV_NONE
Trilok Soni7ff06e02012-10-15 01:05:24 +053025 select ARCH_HAS_BARRIERS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070026 select ARCH_MSM_CORTEX_A5 if MSM_SOC_REV_A
27 select MSM_VIC
28 select CPU_V6 if MSM_SOC_REV_NONE
29 select CPU_V7 if MSM_SOC_REV_A
Steve Mucklef132c6c2012-06-06 18:30:57 -070030 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070031 select MSM_REMOTE_SPINLOCK_SWP if MSM_SOC_REV_NONE
32 select MSM_GPIOMUX
33 select REGULATOR
Taniya Dasbe561a02011-10-12 09:53:11 +053034 select MULTI_IRQ_HANDLER
Pankaj Kumar75c86fd2011-10-01 18:51:09 +053035 select MSM_PROC_COMM_REGULATOR
Laura Abbott1fbd2e62011-12-18 10:26:46 -080036 select CLEANCACHE
37 select QCACHE
Matt Wagantall88b86312012-01-31 16:53:03 -080038 select MSM_PM2 if PM
Krishna Vankae2922052012-03-02 09:59:12 +053039 select MSM_RUN_QUEUE_STATS if MSM_SOC_REV_A
Taniya Dasd4c39f92012-05-14 17:41:49 +053040 select DONT_MAP_HOLE_AFTER_MEMBANK0
Trilok Sonib856ab92012-06-26 14:33:28 +053041 select MIGHT_HAVE_CACHE_L2X0
Taniya Dascd1d0232012-07-03 17:50:47 +053042 select MSM_MODEM_RESTART
Daniel Walkerbf83de42010-03-16 16:29:44 -070043
Daniel Walker7b521612010-05-06 12:44:57 -070044config ARCH_MSM7X30
45 bool "MSM7x30"
46 select ARCH_MSM_SCORPION
Daniel Walker7b521612010-05-06 12:44:57 -070047 select MSM_VIC
48 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070049 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070050 select MSM_REMOTE_SPINLOCK_DEKKERS
51 select ARCH_SPARSEMEM_ENABLE
Laura Abbott78593b52011-09-26 18:48:14 -070052 select ARCH_HAS_HOLES_MEMORYMODEL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070053 select MEMORY_HOTPLUG
54 select MEMORY_HOTREMOVE
Bryan Huntsmanea439642011-11-23 12:34:05 -080055 select ARCH_ENABLE_MEMORY_HOTPLUG
56 select ARCH_ENABLE_MEMORY_HOTREMOVE
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070057 select MIGRATION
58 select ARCH_MEMORY_PROBE
59 select ARCH_MEMORY_REMOVE
Gregory Beanab78cde2010-09-01 16:26:12 -070060 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070061 select RESERVE_FIRST_PAGE
62 select MSM_DALRPC
63 select MSM_SPM_V1
64 select REGULATOR
Justin Paupore637a25d2011-07-14 17:11:04 -070065 select MSM_PROC_COMM_REGULATOR
Taniya Dasbae99fb2011-10-12 09:55:13 +053066 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -080067 select MSM_PM2 if PM
Chintan Pandyabb021762012-06-21 15:03:29 +053068 select HOLES_IN_ZONE if SPARSEMEM
Taniya Dascd1d0232012-07-03 17:50:47 +053069 select MSM_MODEM_RESTART
Daniel Walker7b521612010-05-06 12:44:57 -070070
Daniel Walker4ad15e62010-05-06 13:54:17 -070071config ARCH_QSD8X50
72 bool "QSD8X50"
73 select ARCH_MSM_SCORPION
Daniel Walker4ad15e62010-05-06 13:54:17 -070074 select MSM_VIC
75 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070076 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070077 select MSM_REMOTE_SPINLOCK_LDREX
78 select CPU_USE_DOMAINS
79 select EMULATE_DOMAIN_MANAGER_V7
Gregory Beanab78cde2010-09-01 16:26:12 -070080 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070081 select MSM_DALRPC
Matt Wagantall88b86312012-01-31 16:53:03 -080082 select MSM_PM2 if PM
Taniya Dascd1d0232012-07-03 17:50:47 +053083 select MSM_MODEM_RESTART
Daniel Walker46fe5f22010-08-18 11:00:25 -070084
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070085config ARCH_MSM8X60
86 bool "MSM8X60"
Jeff Ohlsteine14411d2010-11-30 13:06:36 -080087 select ARCH_MSM_SCORPIONMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070088 select SMP_PARALLEL_START if SMP
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070089 select ARM_GIC
90 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070091 select MSM_REMOTE_SPINLOCK_LDREX
92 select ARCH_REQUIRE_GPIOLIB
93 select MSM_ADM3
94 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -080095 select MSM_RPM_REGULATOR
David Brown1a5ab4b2011-05-16 15:53:38 -070096 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070097 select MSM_PIL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070098 select ARCH_HAS_CPU_IDLE_WAIT
99 select MSM_DIRECT_SCLK_ACCESS
100 select MSM_RPM
101 select MSM_XO
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700102 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700103 select MSM_BUS_SCALING
104 select MSM_SECURE_IO
105 select MSM_DALRPC
106 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700107 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700108 select MSM_NATIVE_RESTART
109 select ARCH_INLINE_SPIN_TRYLOCK
110 select ARCH_INLINE_SPIN_TRYLOCK_BH
111 select ARCH_INLINE_SPIN_LOCK
112 select ARCH_INLINE_SPIN_LOCK_BH
113 select ARCH_INLINE_SPIN_LOCK_IRQ
114 select ARCH_INLINE_SPIN_LOCK_IRQSAVE
115 select ARCH_INLINE_SPIN_UNLOCK
116 select ARCH_INLINE_SPIN_UNLOCK_BH
117 select ARCH_INLINE_SPIN_UNLOCK_IRQ
118 select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
119 select ARCH_INLINE_READ_TRYLOCK
120 select ARCH_INLINE_READ_LOCK
121 select ARCH_INLINE_READ_LOCK_BH
122 select ARCH_INLINE_READ_LOCK_IRQ
123 select ARCH_INLINE_READ_LOCK_IRQSAVE
124 select ARCH_INLINE_READ_UNLOCK
125 select ARCH_INLINE_READ_UNLOCK_BH
126 select ARCH_INLINE_READ_UNLOCK_IRQ
127 select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
128 select ARCH_INLINE_WRITE_TRYLOCK
129 select ARCH_INLINE_WRITE_LOCK
130 select ARCH_INLINE_WRITE_LOCK_BH
131 select ARCH_INLINE_WRITE_LOCK_IRQ
132 select ARCH_INLINE_WRITE_LOCK_IRQSAVE
133 select ARCH_INLINE_WRITE_UNLOCK
134 select ARCH_INLINE_WRITE_UNLOCK_BH
135 select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
136 select CPU_HAS_L2_PMU
137 select MSM_SPM_V1
Stephen Boyd2a1eb582010-08-27 10:01:23 -0700138 select MSM_SCM if SMP
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530139 select MULTI_IRQ_HANDLER
Laura Abbott46505f62011-11-02 18:06:55 -0700140 select MSM_MULTIMEDIA_USE_ION
Matt Wagantall88b86312012-01-31 16:53:03 -0800141 select MSM_PM8X60 if PM
Krishna Vankae2922052012-03-02 09:59:12 +0530142 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800143 select ARM_HAS_SG_CHAIN
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700144
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800145config ARCH_MSM8960
146 bool "MSM8960"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700147 select ARCH_MSM_KRAITMP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800148 select ARM_GIC
149 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700150 select GPIO_MSM_V2
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800151 select MSM_GPIOMUX
152 select MSM_SCM if SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700153 select MSM_DIRECT_SCLK_ACCESS
154 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -0800155 select MSM_RPM_REGULATOR
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700156 select MSM_RPM
157 select MSM_XO
158 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700159 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700160 select MSM_PIL
161 select MSM_AUDIO_QDSP6 if SND_SOC
162 select CPU_HAS_L2_PMU
163 select MSM_SPM_V2
164 select MSM_L2_SPM
165 select MSM_NATIVE_RESTART
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700166 select DONT_MAP_HOLE_AFTER_MEMBANK0
167 select MSM_REMOTE_SPINLOCK_SFPB
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700168 select ARCH_SPARSEMEM_ENABLE
169 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basseld4d82c92011-12-07 09:52:49 -0800170 select CLEANCACHE
171 select QCACHE
Laura Abbott6d61a912011-10-27 16:44:14 -0700172 select MSM_MULTIMEDIA_USE_ION
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530173 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800174 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700175 select HOLES_IN_ZONE if SPARSEMEM
Krishna Vankae2922052012-03-02 09:59:12 +0530176 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800177 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700178 select MSM_KRAIT_WFE_FIXUP
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200179 select MSM_ULTRASOUND_A
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800180
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700181config ARCH_MSM8930
182 bool "MSM8930"
183 select ARCH_MSM_KRAITMP
184 select ARM_GIC
185 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700186 select GPIO_MSM_V2
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700187 select MSM_GPIOMUX
188 select MSM_SCM if SMP
189 select MSM_DIRECT_SCLK_ACCESS
190 select REGULATOR
David Collins5779cea2012-01-05 15:09:21 -0800191 select MSM_RPM_REGULATOR
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700192 select MSM_RPM
193 select MSM_XO
194 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700195 select MSM_QDSP6_CODECS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700196 select MSM_PIL
197 select MSM_AUDIO_QDSP6 if SND_SOC
198 select CPU_HAS_L2_PMU
199 select MSM_SPM_V2
200 select MSM_L2_SPM
201 select MSM_NATIVE_RESTART
202 select DONT_MAP_HOLE_AFTER_MEMBANK0
Eric Holmbergeab10732011-09-23 19:44:43 -0600203 select MSM_REMOTE_SPINLOCK_SFPB
Larry Basself74479e2011-09-08 11:07:52 -0700204 select ARCH_SPARSEMEM_ENABLE
205 select ARCH_HAS_HOLES_MEMORYMODEL
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200206 select MSM_ULTRASOUND_A
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530207 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800208 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700209 select HOLES_IN_ZONE if SPARSEMEM
Laura Abbottb14ed962012-01-30 14:18:08 -0800210 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700211 select MSM_KRAIT_WFE_FIXUP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700212
213config ARCH_APQ8064
214 bool "APQ8064"
215 select ARCH_MSM_KRAITMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700216 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700217 select ARM_GIC
218 select CPU_V7
219 select MSM_SCM if SMP
Joel King4ebccc62011-07-22 09:43:22 -0700220 select MSM_GPIOMUX
Eric Holmberg40d21882011-09-27 09:42:03 -0600221 select MSM_REMOTE_SPINLOCK_SFPB
Swaminathan Sathappan47e5d932011-12-05 14:48:07 -0800222 select MSM_PIL
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800223 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700224 select MSM_QDSP6_CODECS
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800225 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 CLEANCACHE
234 select QCACHE
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -0600235 select MIGHT_HAVE_PCI
236 select ARCH_SUPPORTS_MSI
Laura Abbottb14ed962012-01-30 14:18:08 -0800237 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700238 select MSM_KRAIT_WFE_FIXUP
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200239 select MSM_ULTRASOUND_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700240
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700241config ARCH_MSM8974
242 bool "MSM8974"
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700243 select ARCH_MSM_KRAITMP
Sathish Ambley4149e842012-03-23 11:53:55 -0700244 select GPIO_MSM_V3
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700245 select ARM_GIC
246 select CPU_V7
247 select MSM_SCM if SMP
248 select MSM_GPIOMUX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530249 select MULTI_IRQ_HANDLER
Olav Hauganb800c8c2012-01-30 08:50:45 -0800250 select MSM_MULTIMEDIA_USE_ION
Matt Wagantallc2bbdc32012-03-21 19:44:50 -0700251 select MSM_PIL
Praveen Chidambaramaa9d52b2012-04-02 11:09:47 -0600252 select MSM_SPM_V2
253 select MSM_L2_SPM
Stepan Moskovchenkoa000d132012-08-14 21:05:14 -0700254 select MSM_NATIVE_RESTART
255 select MSM_RESTART_V2
Praveen Chidambaram85b7b282012-04-16 13:45:15 -0600256 select MSM_PM8X60 if PM
Steve Mucklef132c6c2012-06-06 18:30:57 -0700257 select MAY_HAVE_SPARSE_IRQ
258 select SPARSE_IRQ
Mahesh Sivasubramaniancb668712012-04-04 13:03:25 -0600259 select MSM_RPM_SMD
David Collinsc7642322012-04-04 10:19:12 -0700260 select REGULATOR
Joonwoo Park91d95462012-08-02 10:55:54 -0700261 select MSM_QDSP6_APRV2
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -0700262 select MSM_QDSP6V2_CODECS
263 select MSM_AUDIO_QDSP6V2 if SND_SOC
David Collins1c91ea72012-05-03 16:17:35 -0700264 select MSM_RPM_REGULATOR_SMD
Laura Abbottb14ed962012-01-30 14:18:08 -0800265 select ARM_HAS_SG_CHAIN
Karthik Parsha404fb8f2012-07-30 19:14:05 -0700266 select MSM_RUN_QUEUE_STATS
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700267
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +0530268config ARCH_MPQ8092
269 bool "MPQ8092"
270 select ARCH_MSM_KRAITMP
271 select GPIO_MSM_V3
272 select ARM_GIC
273 select MULTI_IRQ_HANDLER
274 select CPU_V7
275 select MSM_GPIOMUX
276 select MAY_HAVE_SPARSE_IRQ
277 select SPARSE_IRQ
278 select MSM_NOPM
279
Syed Rameez Mustafa90f80502012-08-23 17:27:24 -0700280config ARCH_MSM8226
281 bool "MSM8226"
282 select ARCH_MSM_KRAITMP
283 select GPIO_MSM_V3
284 select ARM_GIC
285 select CPU_V7
286 select MSM_SCM if SMP
287 select MSM_GPIOMUX
288 select MULTI_IRQ_HANDLER
289 select MSM_MULTIMEDIA_USE_ION
290 select MSM_PIL
291 select MSM_SPM_V2
292 select MSM_L2_SPM
293 select MSM_PM8X60 if PM
294 select MAY_HAVE_SPARSE_IRQ
295 select SPARSE_IRQ
296 select MSM_RPM_SMD
297 select REGULATOR
298 select MSM_QDSP6_APRV2
299 select MSM_QDSP6V2_CODECS
300 select MSM_AUDIO_QDSP6V2 if SND_SOC
301 select MSM_RPM_REGULATOR_SMD
302 select ARM_HAS_SG_CHAIN
303
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700304config ARCH_FSM9XXX
305 bool "FSM9XXX"
306 select ARCH_MSM_SCORPION
307 select MSM_VIC
308 select CPU_V7
309 select MSM_REMOTE_SPINLOCK_LDREX
Steve Mucklef132c6c2012-06-06 18:30:57 -0700310 select GPIO_FSM9XXX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530311 select MULTI_IRQ_HANDLER
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -0800312 select MSM_DALRPC
Daniel Walker4ad15e62010-05-06 13:54:17 -0700313
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700314config ARCH_MSM9615
315 bool "MSM9615"
316 select ARM_GIC
Taniya Dasb241bd82012-03-19 17:58:06 +0530317 select GIC_SECURE
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700318 select ARCH_MSM_CORTEX_A5
319 select CPU_V7
Rohit Vaswani4307c842012-10-11 15:50:05 -0700320 select MIGHT_HAVE_CACHE_L2X0
Steve Mucklef132c6c2012-06-06 18:30:57 -0700321 select GPIO_MSM_V2
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700322 select MSM_GPIOMUX
Praveen Chidambaramab3b1c42011-08-25 08:44:05 -0600323 select MSM_RPM
Maheshkumar Sivasubramanian738b4582011-09-06 17:26:24 -0600324 select MSM_SPM_V2
Rohit Vaswanif688fa62011-10-13 18:13:10 -0700325 select MSM_NATIVE_RESTART
Matt Wagantall9274df92011-12-15 11:11:05 -0800326 select REGULATOR
327 select MSM_RPM_REGULATOR
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530328 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800329 select MSM_PM8X60 if PM
Vikram Mulukutla2021c002011-12-16 12:32:59 -0800330 select MSM_XO
Olav Haugane6a0acd2012-04-05 09:29:12 -0700331 select MSM_MULTIMEDIA_USE_ION
Shiv Maliyappanahalli9ec55e92012-01-09 14:44:59 -0800332 select MSM_QDSP6_APR
333 select MSM_AUDIO_QDSP6 if SND_SOC
Rohit Vaswaniead426f2012-01-05 20:24:52 -0800334 select FIQ
Laura Abbottb14ed962012-01-30 14:18:08 -0800335 select ARM_HAS_SG_CHAIN
Matt Wagantall9274df92011-12-15 11:11:05 -0800336
Taniya Das43bcdd62011-12-02 17:33:27 +0530337config ARCH_MSM8625
338 bool "MSM8625"
339 select ARCH_MSM_CORTEX_A5
340 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700341 select GPIO_MSM_V1
Taniya Das43bcdd62011-12-02 17:33:27 +0530342 select MSM_GPIOMUX
343 select ARM_GIC
344 select ARCH_MSM_CORTEXMP
345 select MULTI_IRQ_HANDLER
Trilok Soni3a453992012-03-06 18:46:22 +0530346 select ARM_TICKET_LOCKS
Krishna Vankae2922052012-03-02 09:59:12 +0530347 select MSM_RUN_QUEUE_STATS
Trilok Sonib856ab92012-06-26 14:33:28 +0530348 select MIGHT_HAVE_CACHE_L2X0
Chintan Pandya3544e742012-08-30 19:39:59 +0530349 select ARM_HAS_SG_CHAIN
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700350
351config ARCH_MSM9625
352 bool "MSM9625"
353 select ARM_GIC
354 select GIC_SECURE
Abhimanyu Kapur490d20c2012-06-22 17:34:20 -0700355 select MIGHT_HAVE_CACHE_L2X0
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700356 select ARCH_MSM_CORTEX_A5
357 select SMP
358 select MSM_SMP
359 select CPU_V7
Abhimanyu Kapur4bb38622012-10-16 19:07:48 -0700360 select MSM_SCM if SMP
Jin Hong690e3352012-05-02 09:25:05 -0700361 select MSM_GPIOMUX
Girish Mahadevanf1c20a42012-09-19 11:44:36 -0600362 select MSM_RPM_SMD
Abhimanyu Kapur46e5e2b2012-10-02 20:45:37 -0700363 select MSM_NATIVE_RESTART
364 select MSM_RESTART_V2
Girish Mahadevan6e419562012-09-19 12:50:05 -0600365 select MSM_SPM_V2
366 select MSM_PM8X60 if PM
367 select MSM_SCM if SMP
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700368 select MULTI_IRQ_HANDLER
Rohit Vaswani61cf6ef2012-07-27 13:51:48 -0700369 select GPIO_MSM_V3
David Collins1cc6e402012-09-17 16:02:24 -0700370 select MAY_HAVE_SPARSE_IRQ
371 select SPARSE_IRQ
Mitchel Humpherys92e9b8a2012-10-08 18:12:47 -0700372 select MSM_MULTIMEDIA_USE_ION
Syed Rameez Mustafa9232e5b2012-09-21 18:22:49 -0700373
374config ARCH_MSM8910
375 bool "MSM8910"
376 select ARM_GIC
377 select GIC_SECURE
378 select SMP
379 select ARCH_MSM_CORTEXMP
380 select CPU_V7
381 select MSM_SCM if SMP
382 select MAY_HAVE_SPARSE_IRQ
383 select SPARSE_IRQ
384 select MULTI_IRQ_HANDLER
385 select GPIO_MSM_V3
386 select MSM_GPIOMUX
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -0700387endmenu
Daniel Walkerbf83de42010-03-16 16:29:44 -0700388
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700389choice
390 prompt "MSM SoC Revision"
391 default MSM_SOC_REV_NONE
392config MSM_SOC_REV_NONE
393 bool "N/A"
394 select EMULATE_DOMAIN_MANAGER_V7 if ARCH_QSD8X50
395 select VERIFY_PERMISSION_FAULT if ARCH_QSD8X50
Daniel Walkerbf83de42010-03-16 16:29:44 -0700396config MSM_SOC_REV_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700397 bool "Rev. A"
398 select ARCH_MSM7X27A if ARCH_MSM7X27
Daniel Walkerbf83de42010-03-16 16:29:44 -0700399endchoice
400
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700401config MSM_KRAIT_TBB_ABORT_HANDLER
402 bool "Krait TBB/TBH data abort handler"
403 depends on ARCH_MSM_KRAIT
404 depends on ARM_THUMB
405 help
406 Certain early samples of the Krait processor may generate data
407 aborts for TBB / TBH instructions that fail their condition code
408 checks. Enabling this option will ignore these erroneous data aborts,
409 at the expense of a very small performance penalty.
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800410
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700411 If unsure, say N.
Daniel Walkerbf83de42010-03-16 16:29:44 -0700412
413config ARCH_MSM_ARM11
414 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700415
Daniel Walkerbf83de42010-03-16 16:29:44 -0700416config ARCH_MSM_SCORPION
417 bool
418
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700419config ARCH_MSM_KRAIT
Daniel Walker46fe5f22010-08-18 11:00:25 -0700420 bool
Stephen Boyd51cabbe2011-12-02 13:28:56 -0800421 select ARM_L1_CACHE_SHIFT_6
Daniel Walker46fe5f22010-08-18 11:00:25 -0700422
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700423config MSM_SMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700424 select HAVE_SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700425 bool
426
427config ARCH_MSM_SCORPIONMP
428 select ARCH_MSM_SCORPION
429 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530430 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700431 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700432 bool
433
434config ARCH_MSM_KRAITMP
435 select ARCH_MSM_KRAIT
436 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530437 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700438 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700439 bool
440
Taniya Das43bcdd62011-12-02 17:33:27 +0530441config ARCH_MSM_CORTEXMP
442 select MSM_SMP
443 bool
444
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700445config MSM_KRAIT_WFE_FIXUP
446 bool
447
Stepan Moskovchenkoa000d132012-08-14 21:05:14 -0700448config MSM_RESTART_V2
449 bool
450
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700451config ARCH_MSM_CORTEX_A5
Bryan Huntsman239ef1e2011-11-23 15:09:13 -0800452 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700453
454config ARCH_MSM7X27A
455 bool
456 select MSM_DALRPC
Justin Pauporeb3a33b72011-08-23 15:30:32 -0700457 select MSM_PROC_COMM_REGULATOR
Taniya Das86e0e132011-10-19 11:32:00 +0530458 select MULTI_IRQ_HANDLER
Taniya Das43bcdd62011-12-02 17:33:27 +0530459 select ARM_GIC
460 select ARCH_MSM_CORTEXMP
Trilok Sonib856ab92012-06-26 14:33:28 +0530461 select MIGHT_HAVE_CACHE_L2X0
Chintan Pandya3544e742012-08-30 19:39:59 +0530462 select ARM_HAS_SG_CHAIN
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700463
Gregory Beanf9f3d312010-04-30 22:06:50 -0700464config MSM_VIC
465 bool
Daniel Walkerbf83de42010-03-16 16:29:44 -0700466
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700467config MSM_RPM
468 bool "Resource Power Manager"
469 select MSM_MPM
470
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600471config MSM_RPM_SMD
472 depends on MSM_SMD
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600473 select MSM_MPM_OF
474 bool "RPM driver using SMD protocol"
475 help
476 RPM is the dedicated hardware engine for managing shared SoC
477 resources. This config adds driver support for using SMD as a
478 transport layer communication with RPM hardware. It also selects
479 the MSM_MPM config that programs the MPM module to monitor interrupts
480 during sleep modes.
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600481
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700482config MSM_MPM
483 bool "Modem Power Manager"
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600484 help
485 MPM is a dedicated hardware resource responsible for entering and
486 waking up from a system wide low power mode. The MPM driver tracks
487 the wakeup interrupts and configures the MPM to monitor the wakeup
488 interrupts when going to a system wide sleep mode.
489
490config MSM_MPM_OF
491 bool "Modem Power Manager"
492 depends on CONFIG_OF
493 help
494 MPM is a dedicated hardware resource responsible for entering and
495 waking up from a system wide low power mode. The MPM driver tracks
496 the wakeup interrupts and configures the MPM to monitor the wakeup
497 interrupts when going to a system wide sleep mode. This config option
498 enables the MPM driver that supports initialization from a device
499 tree
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700500
501config MSM_XO
502 bool
503
504config MSM_REMOTE_SPINLOCK_DEKKERS
505 bool
506config MSM_REMOTE_SPINLOCK_SWP
507 bool
508config MSM_REMOTE_SPINLOCK_LDREX
509 bool
Eric Holmbergeab10732011-09-23 19:44:43 -0600510config MSM_REMOTE_SPINLOCK_SFPB
511 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700512config MSM_ADM3
513 bool
514
515menu "MSM Board Selection"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700516
517config MACH_HALIBUT
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700518 depends on ARCH_MSM7X01A
519 depends on MSM_STACKED_MEMORY
520 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700521 bool "Halibut Board (QCT SURF7201A)"
522 help
523 Support for the Qualcomm SURF7201A eval board.
524
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700525config MACH_MSM7201A_SURF
526 depends on ARCH_MSM7X01A
527 depends on MSM_STACKED_MEMORY
528 default y
529 bool "MSM7201A SURF"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700530 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700531 Support for the Qualcomm MSM7201A SURF eval board.
532
533config MACH_MSM7201A_FFA
534 depends on ARCH_MSM7X01A
535 depends on MSM_STACKED_MEMORY
536 default y
537 bool "MSM7201A FFA"
538 help
539 Support for the Qualcomm MSM7201A FFA eval board.
540
541config MACH_TROUT
542 depends on ARCH_MSM7X01A
543 depends on MSM_STACKED_MEMORY
544 default y
545 bool "Trout"
546
547config MACH_MSM7X27_SURF
548 depends on ARCH_MSM7X27
549 depends on !MSM_STACKED_MEMORY
550 default y
551 bool "MSM7x27 SURF"
552 help
553 Support for the Qualcomm MSM7x27 SURF eval board.
554
555config MACH_MSM7X27_FFA
556 depends on ARCH_MSM7X27
557 depends on !MSM_STACKED_MEMORY
558 default y
559 bool "MSM7x27 FFA"
560 help
561 Support for the Qualcomm MSM7x27 FFA eval board.
562
563config MACH_MSM7X27A_RUMI3
564 depends on ARCH_MSM7X27A
565 depends on !MSM_STACKED_MEMORY
566 default y
567 bool "MSM7x27A RUMI3"
568 help
569 Support for the Qualcomm MSM7x27A RUMI3 Emulation Platform.
570
571config MACH_MSM7X27A_SURF
572 depends on ARCH_MSM7X27A
573 depends on !MSM_STACKED_MEMORY
574 default y
575 bool "MSM7x27A SURF"
576 help
577 Support for the Qualcomm MSM7x27A SURF.
578
579config MACH_MSM7X27A_FFA
580 depends on ARCH_MSM7X27A
581 depends on !MSM_STACKED_MEMORY
582 default y
583 bool "MSM7x27A FFA"
584 help
585 Support for the Qualcomm MSM7x27A FFA.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700586
Trilok Soni3d0f6c52011-07-26 16:06:58 +0530587config MACH_MSM7625A_SURF
588 depends on ARCH_MSM7X27A
589 depends on !MSM_STACKED_MEMORY
590 default y
591 bool "MSM7625A SURF"
592 help
593 Support for the Qualcomm MSM7625A SURF.
594
595config MACH_MSM7625A_FFA
596 depends on ARCH_MSM7X27A
597 depends on !MSM_STACKED_MEMORY
598 default y
599 bool "MSM7625A FFA"
600 help
601 Support for the Qualcomm MSM7625A FFA.
602
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530603config MACH_MSM7627A_QRD1
604 depends on ARCH_MSM7X27A
605 depends on !MSM_STACKED_MEMORY
606 default y
607 bool "MSM7627A QRD1"
608 help
Chintan Pandyab1bad0e2012-02-06 19:04:51 +0530609 Support for the Qualcomm MSM7627A Reference Design.
610
611config MACH_MSM7627A_QRD3
612 depends on ARCH_MSM7X27A
613 depends on !MSM_STACKED_MEMORY
614 default y
615 bool "MSM7627A QRD3"
616 help
617 Support for the Qualcomm MSM7627A Reference Design.
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530618
Taniya Dasc868a2e2012-01-03 10:18:47 +0530619config MACH_MSM7627A_EVB
620 depends on ARCH_MSM7X27A
621 depends on !MSM_STACKED_MEMORY
622 default y
623 bool "MSM7627A EVB"
624 help
625 Support for the Qualcomm MSM7627A Reference Design.
626
Taniya Das43bcdd62011-12-02 17:33:27 +0530627config MACH_MSM8625_RUMI3
628 depends on ARCH_MSM8625
629 depends on !MSM_STACKED_MEMORY
630 default y
631 bool "MSM8625 RUMI3"
632 help
633 Support for the Qualcomm MSM8625 RUMI3 Emulation Platform.
634
Taniya Dase3027e22012-02-27 16:32:27 +0530635config MACH_MSM8625_SURF
636 depends on ARCH_MSM8625
637 depends on !MSM_STACKED_MEMORY
638 default y
639 bool "MSM8625 SURF"
640 help
641 Support for the Qualcomm MSM8625 SURF.
642
Aparna Mallavarapu9f000a72012-04-20 15:37:57 +0530643config MACH_MSM8625_FFA
644 depends on ARCH_MSM8625
645 depends on !MSM_STACKED_MEMORY
646 default y
647 bool "MSM8625 FFA"
648 help
649 Support for the Qualcomm MSM8625 FFA.
650
Chintan Pandyaf4ad4002012-02-28 19:49:03 +0530651config MACH_MSM8625_EVB
652 depends on ARCH_MSM8625
653 depends on !MSM_STACKED_MEMORY
654 default y
655 bool "MSM8625 EVB"
656 help
657 Support for the Qualcomm MSM8625 Reference Design.
658
Taniya Dasbd096542012-03-15 17:43:45 +0530659config MACH_MSM8625_QRD7
660 depends on ARCH_MSM8625
661 depends on !MSM_STACKED_MEMORY
662 default y
663 bool "MSM8625 QRD7"
664 help
665 Support for the Qualcomm MSM8625 Reference Design.
666
Aparna Mallavarapu5a326242012-05-09 19:49:02 +0530667config MACH_MSM8625_EVT
668 depends on ARCH_MSM8625
669 depends on !MSM_STACKED_MEMORY
670 default y
671 bool "MSM8625 EVT"
672 help
673 Support for the Qualcomm MSM8625 Reference Design.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700674
Channagoud Kadabi2bd65c82012-10-12 15:14:23 +0530675config MACH_QRD_SKUD_PRIME
676 depends on ARCH_MSM8625
677 depends on !MSM_STACKED_MEMORY
678 default y
679 bool "MSM8625 SKUD PRIME"
680 help
681 Support for the Qualcomm MSM8625 SKUD prime Reference Design.
682 Add support for a SKUD prime reference design based on MSM8x25
683 chipset. This device is much closer to a phone than regular form
684 factor devices, with new touch, display panel and other hardware
685 configurations.
686
Daniel Walker7b521612010-05-06 12:44:57 -0700687config MACH_MSM7X30_SURF
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700688 depends on ARCH_MSM7X30
689 depends on !MSM_STACKED_MEMORY
690 default y
691 bool "MSM7x30 SURF"
692 help
693 Support for the Qualcomm MSM7x30 SURF eval board.
694
695config MACH_MSM7X30_FFA
696 depends on ARCH_MSM7X30
697 depends on !MSM_STACKED_MEMORY
698 default y
699 bool "MSM7x30 FFA"
700 help
701 Support for the Qualcomm MSM7x30 FFA eval board.
702
703config MACH_MSM7X30_FLUID
704 depends on ARCH_MSM7X30
705 depends on !MSM_STACKED_MEMORY
706 default y
707 bool "MSM7x30 FLUID"
708 help
709 Support for the Qualcomm MSM7x30 FLUID eval board.
710
711config MACH_SAPPHIRE
712 depends on ARCH_MSM7X01A
713 default n
714 bool "Sapphire"
Daniel Walker7b521612010-05-06 12:44:57 -0700715
Daniel Walker4ad15e62010-05-06 13:54:17 -0700716config MACH_QSD8X50_SURF
717 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700718 depends on MSM_SOC_REV_NONE
719 depends on MSM_STACKED_MEMORY
720 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700721 bool "QSD8x50 SURF"
722 help
723 Support for the Qualcomm QSD8x50 SURF eval board.
724
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700725config MACH_QSD8X50_FFA
Daniel Walker4ad15e62010-05-06 13:54:17 -0700726 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700727 depends on MSM_SOC_REV_NONE
728 depends on MSM_STACKED_MEMORY
729 default y
730 bool "QSD8x50 FFA"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700731 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700732 Support for the Qualcomm QSD8x50 FFA eval board.
733
734config MACH_MSM7X25_SURF
735 depends on ARCH_MSM7X25
736 depends on !MSM_STACKED_MEMORY
737 default y
738 bool "MSM7x25 SURF"
739 help
740 Support for the Qualcomm MSM7x25 SURF eval board.
741
742config MACH_MSM7X25_FFA
743 depends on ARCH_MSM7X25
744 depends on !MSM_STACKED_MEMORY
745 default y
746 bool "MSM7x25 FFA"
747 help
748 Support for the Qualcomm MSM7x25 FFA eval board.
749
750config MACH_MSM8X55_SURF
751 depends on ARCH_MSM7X30
752 depends on !MSM_STACKED_MEMORY
753 default y
754 bool "MSM8X55 SURF"
755 help
756 Support for the Qualcomm MSM8x55 SURF eval board.
757
758config MACH_MSM8X55_FFA
759 depends on ARCH_MSM7X30
760 depends on !MSM_STACKED_MEMORY
761 default y
762 bool "MSM8X55 FFA"
763 help
764 Support for the Qualcomm MSM8x55 FFA eval board.
765
766config MACH_MSM8X55_SVLTE_FFA
767 depends on ARCH_MSM7X30
768 depends on !MSM_STACKED_MEMORY
769 default y
770 bool "MSM8X55 SVLTE FFA"
771 help
772 Support for the Qualcomm MSM8x55 SVLTE FFA eval board.
773
774config MACH_MSM8X55_SVLTE_SURF
775 depends on ARCH_MSM7X30
776 depends on !MSM_STACKED_MEMORY
777 default y
778 bool "MSM8X55 SVLTE SURF"
779 help
780 Support for the Qualcomm MSM8x55 SVLTE SURF eval board.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700781
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700782config MACH_MSM8X60_SURF
783 depends on ARCH_MSM8X60
784 default n
785 bool "MSM8x60 SURF"
786 help
787 Support for the Qualcomm MSM8x60 SURF eval board.
788
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700789config MACH_MSM8X60_FFA
790 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700791 default n
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700792 bool "MSM8x60 FFA"
793 help
794 Support for the Qualcomm MSM8x60 FFA eval board.
795
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700796config MACH_MSM8X60_FLUID
797 depends on ARCH_MSM8X60
798 default n
799 bool "MSM8x60 FLUID"
800 help
801 Support for the Qualcomm MSM8x60 FLUID platform. The FLUID is an
802 8x60 target which has a form factor that is much closer to that
803 of a phone than other targets. It also has a new display and
804 touchscreen controller.
805
806config MACH_MSM8X60_FUSION
807 depends on ARCH_MSM8X60
808 default n
809 bool "MSM8x60 FUSION"
810 help
811 Support for the Qualcomm MSM8x60 Fusion SURF device.
812
813config MACH_MSM8X60_FUSN_FFA
814 depends on ARCH_MSM8X60
815 default n
816 bool "MSM8x60 FUSN FFA"
817 help
818 Support for the Qualcomm MSM8x60 Fusion FFA device.
819
Zhang Chang Kenef05b172011-07-27 15:28:13 -0400820config MACH_MSM8X60_DRAGON
821 depends on ARCH_MSM8X60
822 default n
823 bool "MSM8x60 DRAGON"
824 help
825 Support for the Qualcomm MSM8x60 Dragon board.
826
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700827config MACH_MSM8960_CDP
828 depends on ARCH_MSM8960
829 bool "MSM8960 CDP"
830 help
831 Support for the Qualcomm MSM8960 CDP device.
832
833config MACH_MSM8960_MTP
834 depends on ARCH_MSM8960
835 bool "MSM8960 MTP"
836 help
837 Support for the Qualcomm MSM8960 MTP device.
838
839config MACH_MSM8960_FLUID
840 depends on ARCH_MSM8960
841 bool "MSM8960 FLUID"
842 help
843 Support for the Qualcomm MSM8960 FLUID device.
844
Amir Samuelov0d1f8ae2011-07-28 11:13:58 +0300845config MACH_MSM8960_LIQUID
846 depends on ARCH_MSM8960
847 bool "MSM8960 LIQUID"
848 help
849 Support for the Qualcomm MSM8960 LIQUID device.
850
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700851config MACH_MSM8930_CDP
852 depends on ARCH_MSM8930
853 bool "MSM8930 CDP"
854 help
855 Support for the Qualcomm MSM8930 CDP device.
856
857config MACH_MSM8930_MTP
858 depends on ARCH_MSM8930
859 bool "MSM8930 MTP"
860 help
861 Support for the Qualcomm MSM8930 MTP device.
862
863config MACH_MSM8930_FLUID
864 depends on ARCH_MSM8930
865 bool "MSM8930 FLUID"
866 help
867 Support for the Qualcomm MSM8930 FLUID device.
868
Stepan Moskovchenko8768eff2011-12-01 18:55:07 -0800869config MACH_MSM8627_CDP
870 depends on ARCH_MSM8930
871 bool "MSM8627 CDP"
872 help
873 Support for the Qualcomm MSM8627 CDP device.
874
875config MACH_MSM8627_MTP
876 depends on ARCH_MSM8930
877 bool "MSM8627 MTP"
878 help
879 Support for the Qualcomm MSM8627 MTP device.
880
Rohit Vaswania8e7a832011-09-28 21:00:05 -0700881config MACH_MSM9615_CDP
882 depends on ARCH_MSM9615
883 bool "MSM9615 CDP"
884 help
885 Support for the Qualcomm MSM9615 CDP device.
886
887config MACH_MSM9615_MTP
888 depends on ARCH_MSM9615
889 bool "MSM9615 MTP"
890 help
891 Support for the Qualcomm MSM9615 MTP device.
892
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700893config MSM_USE_TSIF1
894 depends on ARCH_MSM8X60
895 bool "MSM8x60 use TSIF1"
896 help
897 Selects TSIF1 core to be used rather than TSIF0.
898 The two TSIF cores share the same DM configuration
899 so they cannot be used simultaneously.
900
Joel King82b7e3f2012-01-05 10:03:27 -0800901config MACH_APQ8064_CDP
902 depends on ARCH_APQ8064
903 bool "APQ8064 CDP"
904 help
905 Support for the Qualcomm APQ8064 CDP device.
906
907config MACH_APQ8064_MTP
908 depends on ARCH_APQ8064
909 bool "APQ8064 MTP"
910 help
911 Support for the Qualcomm APQ8064 MTP device.
912
913config MACH_APQ8064_LIQUID
914 depends on ARCH_APQ8064
915 bool "APQ8064 LIQUID"
916 help
917 Support for the Qualcomm APQ8064 LIQUID device.
918
Joel King064bbf82012-04-01 13:23:39 -0700919config MACH_MPQ8064_CDP
920 depends on ARCH_APQ8064
921 bool "MPQ8064 CDP"
922 help
923 Support for the Qualcomm MPQ8064 CDP device.
924
Joel King11ca8202012-02-13 16:19:03 -0800925config MACH_MPQ8064_HRD
926 depends on ARCH_APQ8064
927 bool "MPQ8064 HRD"
928 help
929 Support for the Qualcomm MPQ8064 HRD device.
930
931config MACH_MPQ8064_DTV
932 depends on ARCH_APQ8064
933 bool "MPQ8064 DTV"
934 help
935 Support for the Qualcomm MPQ8064 DTV device.
936
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700937config MACH_FSM9XXX_SURF
938 depends on ARCH_FSM9XXX
939 depends on !MSM_STACKED_MEMORY
940 default y
941 bool "FSM9XXX SURF"
942 help
943 Support for the Qualcomm FSM9xxx femtocell
944 chipset based SURF evaluation board and
945 FFA board.
946
Daniel Walker4ad15e62010-05-06 13:54:17 -0700947endmenu
Brian Swetland9e73c842007-11-26 04:12:13 -0800948
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700949config MSM_STACKED_MEMORY
950 bool "Stacked Memory"
951 default y
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800952 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700953 This option is used to indicate the presence of on-die stacked
954 memory. When present this memory bank is used for a high speed
955 shared memory interface. When not present regular RAM is used.
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800956
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700957config PHYS_OFFSET
958 hex
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700959 default "0x40800000" if ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700960 default "0x80200000" if ARCH_APQ8064
961 default "0x80200000" if ARCH_MSM8960
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700962 default "0x80200000" if ARCH_MSM8930
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700963 default "0x00000000" if ARCH_MSM8974
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +0530964 default "0x00000000" if ARCH_MPQ8092
Syed Rameez Mustafa90f80502012-08-23 17:27:24 -0700965 default "0x00000000" if ARCH_MSM8226
Hanumant Singh8ceddee2012-10-12 11:45:39 -0700966 default "0x80200000" if ARCH_MSM8910
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700967 default "0x10000000" if ARCH_FSM9XXX
Abhimanyu Kapur20ac2ad2012-09-25 04:23:59 -0700968 default "0x00200000" if ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700969 default "0x00200000" if !MSM_STACKED_MEMORY
970 default "0x00000000" if ARCH_QSD8X50 && MSM_SOC_REV_A
971 default "0x20000000" if ARCH_QSD8X50
972 default "0x40200000" if ARCH_MSM8X60
973 default "0x10000000"
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800974
Mitchel Humpherys05e58812012-08-13 14:24:13 -0700975config KERNEL_MSM_CONTIG_MEM_REGION
976 bool "Enable in-kernel contiguous memory region"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700977 default y if ARCH_MSM8X60
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700978 depends on ANDROID_PMEM && (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700979 help
Mitchel Humpherys05e58812012-08-13 14:24:13 -0700980 Enable the in-kernel contiguous memory allocator. Sets up a
981 region of physically contiguous memory. This memory is
982 reserved during initialization, and can be used
983 generically.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700984
985config KERNEL_PMEM_SMI_REGION
986 bool "Enable in-kernel PMEM region for SMI"
987 default y if ARCH_MSM8X60
988 depends on ANDROID_PMEM && ((ARCH_QSD8X50 && !PMEM_GPU0) || (ARCH_MSM8X60 && !VCM))
989 help
990 Enable the in-kernel PMEM allocator to use SMI memory.
991
992config PMEM_GPU0
993 bool "Enable PMEM GPU0 region"
994 default y
995 depends on ARCH_QSD8X50 && ANDROID_PMEM
996 help
997 Enable the PMEM GPU0 device on SMI Memory.
998
999config MSM_AMSS_VERSION
1000 int
1001 default 6210 if MSM_AMSS_VERSION_6210
1002 default 6220 if MSM_AMSS_VERSION_6220
1003 default 6225 if MSM_AMSS_VERSION_6225
1004
1005choice
1006 prompt "AMSS modem firmware version"
1007
1008 default MSM_AMSS_VERSION_6225
1009
1010 config MSM_AMSS_VERSION_6210
1011 bool "6.2.10"
1012
1013 config MSM_AMSS_VERSION_6220
1014 bool "6.2.20"
1015
1016 config MSM_AMSS_VERSION_6225
1017 bool "6.2.20 + New ADSP"
1018endchoice
Stepan Moskovchenko2607b0a2010-11-15 17:46:10 -08001019
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001020config MSM_HAS_DEBUG_UART_HS
Daniel Walkerbf83de42010-03-16 16:29:44 -07001021 bool
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001022 help
1023 Say Y here if high speed MSM UART is present.
1024
1025config MSM_HAS_DEBUG_UART_HS_V14
1026 bool
1027 select MSM_HAS_DEBUG_UART_HS
1028 help
1029 Say Y here if high speed MSM UART v1.4 is present.
1030
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301031config MSM_DEBUG_UART_PHYS
1032 hex
1033 default 0xA9A00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART1
1034 default 0xACA00000 if ARCH_MSM7X30 && DEBUG_MSM_UART1
1035 default 0x94000000 if ARCH_FSM9XXX && DEBUG_MSM_UART1
1036 default 0xA9B00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART2
1037 default 0xACB00000 if ARCH_MSM7X30 && DEBUG_MSM_UART2
1038 default 0x94100000 if ARCH_FSM9XXX && DEBUG_MSM_UART2
1039 default 0xA9C00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART3
1040 default 0xACC00000 if ARCH_MSM7X30 && DEBUG_MSM_UART3
1041
Brian Swetland9e73c842007-11-26 04:12:13 -08001042choice
1043 prompt "Debug UART"
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001044 depends on DEBUG_LL
Brian Swetland9e73c842007-11-26 04:12:13 -08001045
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001046 config DEBUG_MSM_UART1
1047 bool "Kernel low-level debugging messages via MSM UART1"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301048 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001049 help
1050 Say Y here if you want the debug print routines to direct
1051 their output to the first serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001052
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001053 config DEBUG_MSM_UART2
1054 bool "Kernel low-level debugging messages via MSM UART2"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301055 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001056 help
1057 Say Y here if you want the debug print routines to direct
1058 their output to the second serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001059
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001060 config DEBUG_MSM_UART3
1061 bool "Kernel low-level debugging messages via MSM UART3"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301062 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001063 help
1064 Say Y here if you want the debug print routines to direct
1065 their output to the third serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001066
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001067 config DEBUG_MSM8660_UART
1068 bool "Kernel low-level debugging messages via MSM 8660 UART"
1069 depends on ARCH_MSM8X60
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001070 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001071 help
1072 Say Y here if you want the debug print routines to direct
1073 their output to the serial port on MSM 8660 devices.
Steve Mucklec8aabae2010-04-21 16:20:27 -07001074
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001075 config DEBUG_MSM8960_UART
1076 bool "Kernel low-level debugging messages via MSM 8960 UART"
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001077 depends on ARCH_MSM8960 && DEBUG_LL
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001078 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001079 help
1080 Say Y here if you want the debug print routines to direct
1081 their output to the serial port on MSM 8960 devices.
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001082
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001083 config DEBUG_MSM8930_UART
1084 bool "Kernel low-level debugging messages via MSM 8930 UART"
1085 depends on ARCH_MSM8930 && DEBUG_LL
1086 select MSM_HAS_DEBUG_UART_HS
1087 help
1088 Say Y here if you want the debug print routines to direct
1089 their output to the serial port on MSM 8930 devices.
1090
1091 config DEBUG_APQ8064_UART
1092 bool "Kernel low-level debugging messages via APQ 8064 UART"
1093 depends on ARCH_APQ8064 && DEBUG_LL
1094 select MSM_HAS_DEBUG_UART_HS
1095 help
1096 Say Y here if you want the debug print routines to direct
1097 their output to the serial port on APQ 8064 devices.
1098
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001099 config DEBUG_MSM8974_UART
1100 bool "Kernel low-level debugging messages via MSM 8974 UART"
1101 depends on ARCH_MSM8974
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001102 select MSM_HAS_DEBUG_UART_HS_V14
1103 help
1104 Say Y here if you want the debug print routines to direct
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001105 their output to the serial port on MSM 8974 devices.
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +05301106
1107 config DEBUG_MPQ8092_UART
1108 bool "Kernel low-level debugging messages via MPQ8092 UART"
1109 depends on ARCH_MPQ8092
1110 select MSM_HAS_DEBUG_UART_HS_V14
1111 help
1112 Say Y here if you want the debug print routines to direct
1113 their output to the serial port on MPQ8092 devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001114endchoice
Brian Swetland9e73c842007-11-26 04:12:13 -08001115
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001116choice
1117 prompt "Default Timer"
1118 default MSM7X00A_USE_GP_TIMER
1119
1120 config MSM7X00A_USE_GP_TIMER
1121 bool "GP Timer"
1122 help
1123 Low resolution timer that allows power collapse from idle.
1124
1125 config MSM7X00A_USE_DG_TIMER
1126 bool "DG Timer"
1127 help
1128 High resolution timer.
1129endchoice
1130
1131choice
1132 prompt "Suspend sleep mode"
1133 default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1134 help
1135 Allows overriding the sleep mode used. Leave at power
1136 collapse suspend unless the arm9 image has problems.
1137
1138 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1139 bool "Power collapse suspend"
1140 help
1141 Lowest sleep state. Returns through reset vector.
1142
1143 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1144 bool "Power collapse"
1145 help
1146 Sleep state that returns through reset vector.
1147
1148 config MSM7X00A_SLEEP_MODE_APPS_SLEEP
1149 bool "Apps Sleep"
1150
1151 config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1152 bool "Ramp down cpu clock and wait for interrupt"
1153
1154 config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1155 bool "Wait for interrupt"
1156endchoice
1157
1158config MSM7X00A_SLEEP_MODE
1159 int
1160 default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1161 default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1162 default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
1163 default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1164 default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1165
1166choice
1167 prompt "Idle sleep mode"
1168 default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1169 help
1170 Allows overriding the sleep mode used from idle. Leave at power
1171 collapse suspend unless the arm9 image has problems.
1172
1173 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1174 bool "Power collapse suspend"
1175 help
1176 Lowest sleep state. Returns through reset vector.
1177
1178 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1179 bool "Power collapse"
1180 help
1181 Sleep state that returns through reset vector.
1182
1183 config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1184 bool "Apps Sleep"
1185
1186 config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1187 bool "Ramp down cpu clock and wait for interrupt"
1188
1189 config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1190 bool "Wait for interrupt"
1191endchoice
1192
1193config MSM7X00A_IDLE_SLEEP_MODE
1194 int
1195 default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1196 default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1197 default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1198 default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1199 default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1200
1201config MSM7X00A_IDLE_SLEEP_MIN_TIME
1202 int "Minimum idle time before sleep"
1203 default 20000000
1204 help
1205 Minimum idle time in nanoseconds before entering low power mode.
1206
1207config MSM7X00A_IDLE_SPIN_TIME
1208 int "Idle spin time before cpu ramp down"
1209 default 80000
1210 help
1211 Spin time in nanoseconds before ramping down cpu clock and entering
1212 any low power state.
1213
1214menuconfig MSM_IDLE_STATS
1215 bool "Collect idle statistics"
1216 default y
1217 help
1218 Collect idle statistics and export them in proc/msm_pm_stats.
1219
1220if MSM_IDLE_STATS
1221
1222config MSM_IDLE_STATS_FIRST_BUCKET
1223 int "First bucket time"
1224 default 62500
1225 help
1226 Upper time limit in nanoseconds of first bucket.
1227
1228config MSM_IDLE_STATS_BUCKET_SHIFT
1229 int "Bucket shift"
1230 default 2
1231
1232config MSM_IDLE_STATS_BUCKET_COUNT
1233 int "Bucket count"
1234 default 10
1235
1236config MSM_SUSPEND_STATS_FIRST_BUCKET
1237 int "First bucket time for suspend"
1238 default 1000000000
1239 help
1240 Upper time limit in nanoseconds of first bucket of the
1241 histogram. This is for collecting statistics on suspend.
1242
1243endif # MSM_IDLE_STATS
1244
1245config CPU_HAS_L2_PMU
1246 bool "L2CC PMU Support"
1247 help
1248 Select this if the L2 cache controller has a Performance Monitoring Unit.
1249
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001250config HTC_HEADSET
1251 tristate "HTC 2 Wire detection driver"
1252 default n
1253 help
1254 Provides support for detecting HTC 2 wire devices, such as wired
1255 headset, on the trout platform. Can be used with the msm serial
1256 debugger, but not with serial console.
1257
1258config TROUT_BATTCHG
1259 depends on MACH_TROUT && POWER_SUPPLY
1260 default y
1261 bool "Trout battery / charger driver"
1262
1263config HTC_PWRSINK
1264 depends on MSM_SMD
1265 default n
1266 bool "HTC Power Sink Driver"
1267
1268config QSD_SVS
1269 bool "QSD Static Voltage Scaling"
1270 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1271 default y
1272 select TPS65023
1273 help
1274 Enables static voltage scaling using the TPS65023 PMIC.
1275
1276config QSD_PMIC_DEFAULT_DCDC1
1277 int "PMIC default output voltage"
1278 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1279 default 1250
1280 help
1281 This is the PMIC voltage at Linux kernel boot.
1282
1283config MSM_FIQ_SUPPORT
1284 default y
1285 bool "Enable installation of an FIQ handler."
1286
1287config MSM_SERIAL_DEBUGGER
1288 select MSM_FIQ_SUPPORT
1289 select KERNEL_DEBUGGER_CORE
1290 default n
1291 bool "FIQ Mode Serial Debugger"
1292 help
1293 The FIQ serial debugger can accept commands even when the
1294 kernel is unresponsive due to being stuck with interrupts
1295 disabled. Depends on the kernel debugger core in drivers/misc.
1296
1297config MSM_SERIAL_DEBUGGER_CONSOLE
1298 depends on MSM_SERIAL_DEBUGGER
1299 default n
1300 bool "Console on FIQ Serial Debugger port"
1301 help
1302 Enables a console so that printk messages are displayed on
1303 the debugger serial port as the occur.
Brian Swetland9e73c842007-11-26 04:12:13 -08001304
Gregory Beanab78cde2010-09-01 16:26:12 -07001305config MSM_PROC_COMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001306 default y
1307 bool "Proc-Comm RPC Interface"
1308 help
1309 Enables a lightweight communications interface to the
1310 baseband processor.
Gregory Beanab78cde2010-09-01 16:26:12 -07001311
Gregory Bean1963a2a2010-08-28 10:05:44 -07001312config MSM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001313 bool "MSM Shared Memory Driver (SMD)"
1314 help
1315 Support for the shared memory interface between the apps
1316 processor and the baseband processor. Provides access to
1317 the "shared heap", as well as virtual serial channels
1318 used to communicate with various services on the baseband
1319 processor.
1320
1321choice
1322 prompt "MSM Shared memory interface version"
1323 depends on MSM_SMD
1324 default MSM_SMD_PKG3 if ARCH_MSM_ARM11
1325 default MSM_SMD_PKG4 if ARCH_MSM_SCORPION
1326
1327 config MSM_SMD_PKG3
1328 bool
1329 prompt "Package 3"
1330
1331 config MSM_SMD_PKG4
1332 bool
1333 prompt "Package 4"
1334endchoice
1335
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -06001336config MSM_PCIE
1337 bool "MSM PCIe Controller driver"
1338 depends on PCI && PCI_MSI
1339 help
1340 Enables the PCIe functionality by configures PCIe core on
1341 MSM chipset and by enabling the ARM PCI framework extension.
1342
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001343config MSM_RPC_SDIO_XPRT
1344 depends on MSM_SDIO_AL
1345 default y
1346 bool "MSM SDIO XPRT Layer"
1347 help
1348 SDIO Transport Layer for RPC Rouer
1349
1350config MSM_RPC_SDIO_DEBUG
1351 depends on MSM_RPC_SDIO_XPRT
1352 default y
1353 bool "MSM SDIO XPRT debug support"
1354 help
1355 Support for debugging SDIO XPRT
1356
1357config MSM_SMD_DEBUG
1358 depends on MSM_SMD
1359 default y
1360 bool "MSM SMD debug support"
1361 help
1362 Support for debugging the SMD for communication
1363 between the ARM9 and ARM11
1364
1365config MSM_SDIO_AL
1366 depends on ((ARCH_MSM7X30 || MACH_MSM8X60_FUSN_FFA || MACH_TYPE_MSM8X60_FUSION) && HAS_WAKELOCK)
1367 default y
1368 tristate "SDIO-Abstraction-Layer"
1369 help
1370 Support MSM<->MDM Communication over SDIO bus.
1371 MDM SDIO-Client should have pipes support.
1372
1373config MSM_SDIO_DMUX
1374 bool "SDIO Data Mux Driver"
1375 depends on MSM_SDIO_AL
1376 default n
1377 help
1378 Support Muxed Data Channels over SDIO interface.
1379
1380config MSM_BAM_DMUX
1381 bool "BAM Data Mux Driver"
1382 depends on SPS
1383 default n
1384 help
1385 Support Muxed Data Channels over BAM interface.
1386 BAM has a limited number of pipes. This driver
1387 provides a means to support more logical channels
1388 via muxing than BAM could without muxing.
1389
1390config MSM_N_WAY_SMD
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001391 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001392 default y
1393 bool "MSM N-WAY SMD support"
1394 help
1395 Supports APPS-QDSP SMD communication along with
1396 normal APPS-MODEM SMD communication.
1397
1398config MSM_N_WAY_SMSM
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001399 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001400 default y
1401 bool "MSM N-WAY SMSM support"
1402 help
1403 Supports APPS-QDSP SMSM communication along with
1404 normal APPS-MODEM SMSM communication.
1405
1406config MSM_RESET_MODEM
1407 tristate "Reset Modem Driver"
1408 depends on MSM_SMD
1409 default m
1410 help
1411 Allows the user to reset the modem through a device node.
1412
1413config MSM_SMD_LOGGING
1414 depends on MSM_SMD
1415 default y
1416 bool "MSM Shared Memory Logger"
1417 help
1418 This option exposes the shared memory logger at /dev/smem_log
1419 and a debugfs node named smem_log.
1420
1421 If in doubt, say yes.
1422
Karthikeyan Ramasubramaniane1f4f732011-08-08 13:34:47 -06001423config MSM_IPC_LOGGING
1424 bool "MSM Debug Logging for IPC Drivers"
1425 help
1426 This option allows the debug logging for IPC Drivers.
1427
1428 If in doubt, say no.
1429
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001430config MSM_SMD_NMEA
1431 bool "NMEA GPS Driver"
1432 depends on MSM_SMD
1433 default y
1434 help
1435 Enable this to support the NMEA GPS device.
1436
1437 If in doubt, say yes.
1438
1439config MSM_SDIO_TTY
1440 bool "SDIO TTY Driver"
1441 depends on MSM_SDIO_AL
1442 default n
1443 help
1444 Provides a TTY driver SDIO TTY
1445 This driver can be used by user space
1446 applications for passing data through the
1447 SDIO interface.
1448
1449config MSM_SMD_TTY
1450 bool "SMD TTY Driver"
1451 depends on MSM_SMD
1452 default y
1453 help
1454 Provides TTY interfaces to interact with the modem.
1455
1456 If in doubt, say yes.
1457
1458config MSM_SMD_QMI
1459 bool "SMD QMI Driver"
1460 depends on MSM_SMD
1461 default y
1462 help
1463 Manages network data connections.
1464
1465 If in doubt, say yes.
1466
1467config MSM_SMD_PKT
1468 bool "SMD Packet Driver"
1469 depends on MSM_SMD
1470 default y
1471 help
1472 Provides a binary SMD non-muxed packet port interface.
1473
1474 If in doubt, say yes.
1475
1476config MSM_SDIO_CMUX
1477 bool "SDIO CMUX Driver"
1478 depends on MSM_SDIO_AL
1479 default n
1480 help
1481 Provides a Muxed port interface over SDIO QMI
1482
1483config MSM_DSPS
1484 bool "Sensors DSPS driver"
1485 depends on (MSM_PIL && (ARCH_MSM8X60 || ARCH_MSM8960))
1486 default n
1487 help
1488 Provides user-space interface to the sensors manager
1489 to turn on/off the Sensors Processor system clocks.
1490 It is the DSPS responsibility to turn on/off the sensors
1491 themself.
1492 The number of clocks and their name may vary between targets.
1493 It also triggers the PIL to load the DSPS firmware.
1494
1495config MSM_SDIO_CTL
1496 bool "SDIO CTL Driver"
1497 depends on MSM_SDIO_CMUX
1498 default n
1499 help
1500 Provides a binary SDIO control port interface.
1501
1502config MSM_ONCRPCROUTER
1503 depends on MSM_SMD
1504 default n
1505 bool "MSM ONCRPC router support"
1506 help
1507 Support for the MSM ONCRPC router for communication between
1508 the ARM9 and ARM11
1509
1510config MSM_IPC_ROUTER
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001511 depends on NET
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001512 default n
1513 bool "MSM IPC Router support"
1514 help
1515 Support for the MSM IPC Router for communication between
1516 the APPs and the MODEM
1517
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001518config MSM_IPC_ROUTER_SMD_XPRT
1519 depends on MSM_SMD
1520 depends on MSM_IPC_ROUTER
1521 default n
1522 bool "MSM SMD XPRT Layer"
1523 help
1524 SMD Transport Layer for IPC Router
1525
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001526config MSM_ONCRPCROUTER_DEBUG
1527 depends on MSM_ONCRPCROUTER
1528 default y
1529 bool "MSM debug ONCRPC router support"
1530 help
1531 Support for debugging the ONCRPC router for communication
1532 between the ARM9 and ARM11
1533
1534config MSM_RPC_LOOPBACK_XPRT
1535 depends on MSM_ONCRPCROUTER
1536 default n
1537 bool "MSM RPC local routing support"
1538 help
1539 Support for routing RPC messages between APPS clients
1540 and APPS servers. Helps in testing APPS RPC framework.
1541
1542config MSM_RPCSERVER_TIME_REMOTE
1543 depends on MSM_ONCRPCROUTER && RTC_HCTOSYS
1544 default y
1545 bool "Time remote RPC server"
1546 help
1547 The time remote server receives notification of time bases and
1548 reports these events to registered callback functions.
1549
1550config MSM_RPCSERVER_WATCHDOG
1551 depends on MSM_ONCRPCROUTER
1552 default y
1553 bool "Watchdog RPC server"
1554 help
1555 The dog_keepalive server handles watchdog events.
1556
1557config MSM_RPC_WATCHDOG
1558 depends on MSM_ONCRPCROUTER
1559 default n
1560 bool "Watchdog RPC client"
1561 help
1562 The dog_keepalive client module.
1563
1564config MSM_RPC_PING
1565 depends on MSM_ONCRPCROUTER && DEBUG_FS
1566 default m
1567 bool "MSM rpc ping"
1568 help
1569 Implements MSM rpc ping test module.
1570
1571config MSM_RPC_PROC_COMM_TEST
1572 depends on DEBUG_FS && MSM_PROC_COMM
1573 default m
1574 bool "MSM rpc proc comm test"
1575 help
1576 Implements MSM rpc proc comm test module.
1577
1578config MSM_RPC_OEM_RAPI
1579 depends on MSM_ONCRPCROUTER
1580 default m
1581 bool "MSM oem rapi"
1582 help
1583 Implements MSM oem rapi client module.
1584
1585config MSM_RPCSERVER_HANDSET
1586 depends on MSM_ONCRPCROUTER
1587 default y
1588 bool "Handset events RPC server"
1589 help
1590 Support for receiving handset events like headset detect,
1591 headset switch and clamshell state.
1592
1593config MSM_RMT_STORAGE_CLIENT
1594 depends on (ARCH_MSM && MSM_ONCRPCROUTER)
1595 default n
1596 bool "Remote Storage RPC client"
1597 help
1598 Provide RPC mechanism for remote processors to access storage
1599 device on apps processor.
1600
1601config MSM_RMT_STORAGE_CLIENT_STATS
1602 depends on (MSM_RMT_STORAGE_CLIENT && DEBUG_FS)
1603 default n
1604 bool "Remote storage RPC client performance statistics"
1605 help
1606 Collects performance statistics and shows this information
1607 through a debugfs file rmt_storage_stats.
1608
1609config MSM_SDIO_SMEM
1610 depends on MSM_SDIO_AL
1611 default n
1612 bool "SDIO SMEM for remote storage"
1613 help
1614 Copies data from remote MDM9K memory to local MSM8x60
1615 memory. Used by remote storage client to shadow
1616 MDM9K filesystem.
1617
1618config MSM_DALRPC
1619 bool "DAL RPC support"
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -08001620 default n
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001621 help
1622 Supports RPC calls to DAL devices on remote processor cores.
1623
1624config MSM_DALRPC_TEST
1625 tristate "DAL RPC test module"
1626 depends on (MSM_DALRPC && DEBUG_FS)
1627 default m
1628 help
1629 Exercises DAL RPC calls to QDSP6.
1630
1631if CPU_FREQ_MSM
1632
1633config MSM_CPU_FREQ_SET_MIN_MAX
1634 bool "Set Min/Max CPU frequencies."
1635 default n
1636 help
1637 Allow setting min and max CPU frequencies. Sysfs can be used
1638 to override these values.
1639
1640config MSM_CPU_FREQ_MAX
1641 int "Max CPU Frequency"
1642 depends on MSM_CPU_FREQ_SET_MIN_MAX
1643 default 384000
1644
1645config MSM_CPU_FREQ_MIN
1646 int "Min CPU Frequency"
1647 depends on MSM_CPU_FREQ_SET_MIN_MAX
1648 default 245760
1649
1650endif # CPU_FREQ_MSM
1651
1652config MSM_CPU_AVS
1653 bool "Enable software controlled Adaptive Voltage Scaling (AVS)"
1654 depends on (ARCH_MSM_SCORPION && QSD_SVS)
1655 depends on ARCH_QSD8X50
1656 default n
1657 select MSM_AVS_HW
1658 help
1659 This enables the s/w control of Adaptive Voltage Scaling feature
1660 in Qualcomm ARMv7 CPUs. It adjusts the voltage for each frequency
1661 based on feedback from three ring oscillators in the CPU.
1662
1663config MSM_AVS_HW
1664 bool "Enable Adaptive Voltage Scaling (AVS)"
1665 default n
1666 help
1667 Enable AVS hardware to fine tune voltage at each frequency. The
1668 AVS hardware blocks associated with each Qualcomm ARMv7 cores can
1669 fine tune the voltages based on the feedback from the ring
1670 oscillators.
1671
1672config MSM_HW3D
1673 tristate "MSM Hardware 3D Register Driver"
1674 depends on ANDROID_PMEM
1675 default y
1676 help
1677 Provides access to registers needed by the userspace OpenGL|ES
1678 library.
1679
1680config MSM_ADSP
1681 depends on (ARCH_MSM7X01A || ARCH_MSM7X25 || ARCH_MSM7X27)
1682 tristate "MSM ADSP driver"
1683 depends on ANDROID_PMEM
1684 default y
1685 help
1686 Provides access to registers needed by the userspace aDSP library.
1687
1688config ADSP_RPC_VER
1689 hex
1690 default 0x30002 if (ARCH_MSM7X27 || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2009))
1691 default 0x30001 if (ARCH_MSM7X01A || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2008))
1692 depends on MSM_ADSP
1693 help
1694 Select proper ADSP RPC version
1695choice
1696 prompt "ADSP RPC version"
1697
1698 default AMSS_7X25_VERSION_2009
1699
1700 config AMSS_7X25_VERSION_2009
1701 bool "2.0.09"
1702
1703 config AMSS_7X25_VERSION_2008
1704 bool "2.0.08"
1705endchoice
1706
1707config MSM7KV2_AUDIO
1708 bool "MSM7K v2 audio"
1709 depends on (ARCH_MSM7X30 && ANDROID_PMEM)
1710 default y
1711 help
1712 Enables QDSP5V2-based audio drivers for audio playbacks and
1713 voice call.
1714
1715config MSM_ADSP_REPORT_EVENTS
1716 bool "Report modem events from the DSP"
1717 default y
1718 depends on (MSM_ADSP || MSM7KV2_AUDIO)
1719 help
1720 Normally, only messages from the aDSP are reported to userspace.
1721 With this option, we report events from the aDSP as well.
1722
1723config MSM_QDSP6
1724 tristate "QDSP6 support"
1725 depends on ARCH_QSD8X50 && ANDROID_PMEM
1726 default y
1727 help
1728 Enable support for qdsp6. This provides audio and video functionality.
1729
1730config MSM8X60_AUDIO
1731 tristate "MSM8X60 audio support"
1732 depends on ARCH_MSM8X60 && ANDROID_PMEM
1733 default y
1734 help
1735 Enable support for qdsp6v2. This provides audio functionality.
1736
1737config MSM8X60_FTM_AUDIO_DEVICES
1738 bool "MSM8X60 audio factory test mode support"
1739 depends on MSM8X60_AUDIO
1740 help
1741 Enable support audio factory test mode devices. This is used
1742 in a production line environment.
1743
Ben Romberger45b351c2011-07-20 22:37:27 -07001744config RTAC
1745 bool "MSM8K real-time audio calibration support"
1746 default y
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001747 help
Ben Romberger45b351c2011-07-20 22:37:27 -07001748 Enable support for rtac. This enables calibration during
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001749 audio operation
1750
1751config MSM7X27A_AUDIO
1752 bool "MSM7X27A audio support"
1753 depends on ARCH_MSM7X27A && MSM_ADSP
1754 default n
1755 help
1756 Enable support for 7x27a. This provides audio functionality.
1757
Justin Pauporea6cd2092011-06-22 16:19:45 -07001758config MSM_PROC_COMM_REGULATOR
Gregory Bean1963a2a2010-08-28 10:05:44 -07001759 bool
Justin Pauporea6cd2092011-06-22 16:19:45 -07001760 depends on MSM_PROC_COMM && REGULATOR
1761 help
1762 Enable regulator framework support for regulators managed by PMLIB
1763 on the modem, and controlled through proccomm calls.
1764
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001765config MSM_VREG_SWITCH_INVERTED
1766 bool "Reverse vreg switch polarity"
1767 default n
1768 help
1769 Reverses the enable and disable for vreg switch.
1770
1771config MSM_DMA_TEST
1772 tristate "MSM DMA test module"
1773 default m
1774 help
1775 Intended to be compiled as a module. Provides a device node
1776 and ioctls for testing the MSM dma system.
1777
1778config WIFI_CONTROL_FUNC
1779 bool "Enable WiFi control function abstraction"
1780 help
1781 Enables Power/Reset/Carddetect function abstraction
1782
1783config WIFI_MEM_PREALLOC
1784 depends on WIFI_CONTROL_FUNC
1785 bool "Preallocate memory for WiFi buffers"
1786 help
1787 Preallocates memory buffers for WiFi driver
1788
1789config QSD_AUDIO
1790 bool "QSD audio"
1791 depends on ARCH_MSM_SCORPION && MSM_DALRPC && ANDROID_PMEM && !MSM_SMP
1792 default y
1793 help
1794 Provides PCM, MP3, and AAC audio playback.
1795
1796config AUDIO_AAC_PLUS
1797 depends on (MSM_ADSP || QSD_AUDIO || MSM7KV2_AUDIO)
1798 bool "AAC+ Audio"
1799 default y
1800 help
1801 Provides AAC+ decoding
1802
1803config AUDIO_ENHANCED_AAC_PLUS
1804 depends on AUDIO_AAC_PLUS
1805 bool "Enhanced AAC+ Audio"
1806 default y
1807 help
1808 Provides Enhanced AAC+ decoding
1809
1810config SURF_FFA_GPIO_KEYPAD
1811 bool "MSM SURF/FFA GPIO keypad"
1812 depends on INPUT_GPIO = "y"
1813 default y
1814 help
1815 Select if the GPIO keypad is attached.
1816
1817config MSM_SLEEP_TIME_OVERRIDE
1818 bool "Allow overriding suspend/sleep time with PM module parameter"
1819 default y
1820 help
1821 Enable the module parameter sleep_time_override. Specified
1822 in units of seconds, it overwrites the normal sleep time of
1823 suspend. The feature is required for automated power management
1824 testing.
1825
1826config MSM_MEMORY_LOW_POWER_MODE
1827 bool "Control the low power modes of memory"
1828 default n
1829 help
1830 The application processor controls whether memory should enter
1831 which low power mode.
1832
1833choice
1834 prompt "Default Memory Low Power Mode during Idle"
1835 depends on MSM_MEMORY_LOW_POWER_MODE
1836 default MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1837 help
1838 Selects the default low power mode of the memory during idle
1839 sleep.
1840
1841 config MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1842 bool "Memory active"
1843
1844 config MSM_MEMORY_LOW_POWER_MODE_IDLE_RETENTION
1845 bool "Memory in retention"
1846
1847 config MSM_MEMORY_LOW_POWER_MODE_IDLE_DEEP_POWER_DOWN
1848 bool "Memory in deep power down"
1849endchoice
1850
1851choice
1852 prompt "Default Memory Low Power Mode during Suspend"
1853 depends on MSM_MEMORY_LOW_POWER_MODE
1854 default MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1855 help
1856 Selects the default low power mode of the memory during suspend
1857 sleep.
1858
1859 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1860 bool "Memory active"
1861
1862 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_RETENTION
1863 bool "Memory in retention"
1864
1865 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_DEEP_POWER_DOWN
1866 bool "Memory in deep power down"
1867endchoice
1868
1869choice
1870 prompt "Power management timeout action"
1871 default MSM_PM_TIMEOUT_HALT
1872 help
1873 Selects the Application Processor's action when Power Management
1874 times out waiting for Modem's handshake.
1875
1876 config MSM_PM_TIMEOUT_HALT
1877 bool "Halt the Application Processor"
1878
1879 config MSM_PM_TIMEOUT_RESET_MODEM
1880 bool "Reset the Modem Processor"
1881
1882 config MSM_PM_TIMEOUT_RESET_CHIP
1883 bool "Reset the entire chip"
1884endchoice
1885
1886config MSM_IDLE_WAIT_ON_MODEM
1887 int "Wait for Modem to become ready for idle power collapse"
1888 default 0
1889 help
1890 If Modem is not ready to handle Application Processor's request
1891 for idle power collapse, wait the number of microseconds in case
1892 Modem becomes ready soon.
1893
Matt Wagantall9274df92011-12-15 11:11:05 -08001894config MSM_RPM_REGULATOR
1895 bool "RPM regulator driver"
Matt Wagantall32dc71e2012-01-04 11:13:11 -08001896 depends on MSM_RPM && REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -08001897 help
1898 Compile in support for the RPM regulator driver, used for setting
1899 voltages and other parameters of the various power rails supplied
1900 by some Qualcomm PMICs.
1901
David Collinsc7642322012-04-04 10:19:12 -07001902config MSM_RPM_REGULATOR_SMD
1903 bool "SMD RPM regulator driver"
1904 depends on REGULATOR
1905 depends on OF
1906 depends on MSM_RPM_SMD
1907 help
1908 Compile in support for the SMD RPM regulator driver which is used for
1909 setting voltages and other parameters of the various power rails
1910 supplied by some Qualcomm PMICs. The SMD RPM regulator driver should
1911 be used on systems which contain an RPM which communicates with the
1912 application processor over SMD.
1913
Stephen Boyd01710582012-07-09 13:40:05 -07001914config MSM_SUBSYSTEM_RESTART
1915 bool "MSM Subsystem Restart"
1916 help
1917 This option enables the MSM subsystem restart framework.
1918
1919 The MSM subsystem restart framework provides support to boot,
1920 shutdown, and restart subsystems with a reference counted API.
1921 It also notifies userspace of transitions between these states via
1922 sysfs.
1923
1924config MSM_SYSMON_COMM
1925 bool "MSM System Monitor communication support"
1926 depends on MSM_SMD && MSM_SUBSYSTEM_RESTART
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_PIL
1933 bool "Peripheral image loading"
1934 select FW_LOADER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001935 default n
1936 help
1937 Some peripherals need to be loaded into memory before they can be
1938 brought out of reset.
1939
1940 Say yes to support these devices.
1941
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001942config MSM_PIL_MODEM
1943 tristate "Modem (ARM11) Boot Support"
Stephen Boyd3ac20732012-05-03 18:46:08 -07001944 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001945 help
1946 Support for booting and shutting down ARM11 Modem processors.
1947
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001948config MSM_PIL_QDSP6V3
1949 tristate "QDSP6v3 (Hexagon) Boot Support"
Stephen Boyd2e19d932012-05-09 17:36:04 -07001950 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001951 help
1952 Support for booting and shutting down QDSP6v3 processors (hexagon).
1953 The QDSP6 is a low power DSP used in audio software applications.
1954
Stephen Boydbdb53f32012-06-05 18:39:47 -07001955config MSM_PIL_LPASS_QDSP6V4
1956 tristate "LPASS QDSP6v4 (Hexagon) Boot Support"
Stephen Boyda1cf76b2012-06-13 12:05:35 -07001957 depends on MSM_SUBSYSTEM_RESTART
Stephen Boydeb819882011-08-29 14:46:30 -07001958 help
Stephen Boydbdb53f32012-06-05 18:39:47 -07001959 Support for booting and shutting down QDSP6v4 processors (hexagon)
1960 in low power audio subsystems. If you would like to record or
1961 play audio then say Y here.
1962
1963 If unsure, say N.
1964
1965config MSM_PIL_MODEM_QDSP6V4
1966 tristate "Modem QDSP6v4 (Hexagon) Boot Support"
Stephen Boyd2efa9962012-06-12 14:20:12 -07001967 depends on MSM_SUBSYSTEM_RESTART
Stephen Boydbdb53f32012-06-05 18:39:47 -07001968 help
1969 Support for booting and shutting down QDSP6v4 processors (hexagon)
1970 in modem subsystems. If you would like to make or receive phone
1971 calls then say Y here.
1972
1973 If unsure, say N.
Stephen Boydeb819882011-08-29 14:46:30 -07001974
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07001975config MSM_PIL_LPASS_QDSP6V5
Stephen Boyd633eb622012-06-13 12:05:35 -07001976 tristate "LPASS QDSP6v5 (Hexagon) Boot Support"
1977 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
1978 help
1979 Support for booting and shutting down QDSP6v5 (Hexagon) processors
1980 in low power audio subsystems. This driver also monitors the ADSP
1981 SMSM status bits and the ADSP's watchdog interrupt and restarts the
1982 ADSP if the processor encounters a fatal error.
Matt Wagantall4e2599e2012-03-21 22:31:35 -07001983
1984config MSM_PIL_MSS_QDSP6V5
1985 tristate "MSS QDSP6v5 (Hexagon) Boot Support"
1986 depends on MSM_PIL
1987 help
1988 Support for booting and shutting down QDSP6v5 (Hexagon) processors
1989 in modem subsystems.
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07001990
Matt Wagantalle6e00d52012-03-08 17:39:07 -08001991config MSM_PIL_MBA
1992 tristate "Support for modem self-authentication"
Stephen Boydf91f8862012-06-12 14:20:12 -07001993 depends on MSM_PIL_MSS_QDSP6V5 && MSM_SUBSYSTEM_RESTART
Matt Wagantalle6e00d52012-03-08 17:39:07 -08001994 help
1995 Support for booting self-authenticating modems using the Modem Boot
1996 Authenticator.
Stephen Boyd322a9922011-09-20 01:05:54 -07001997
1998config MSM_PIL_RIVA
Stephen Boydd89eebe2011-09-28 23:28:11 -07001999 tristate "RIVA (WCNSS) Boot Support"
Stephen Boydfdec00d2012-05-10 17:04:49 -07002000 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002001 help
2002 Support for booting and shutting down the RIVA processor (WCNSS).
2003 Riva is the wireless subsystem processor used in bluetooth, wireless
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08002004 LAN, and FM software applications.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002005
Stephen Boydd89eebe2011-09-28 23:28:11 -07002006config MSM_PIL_TZAPPS
2007 tristate "TZApps Boot Support"
2008 depends on MSM_PIL
2009 help
2010 Support for booting and shutting down TZApps.
2011
2012 TZApps is an image that runs in the secure processor state. It is
2013 used to decrypt data and perform secure operations on the behalf of
2014 the kernel.
2015
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07002016config MSM_PIL_DSPS
2017 tristate "DSPS Boot Support"
Stephen Boydf169b4b2012-05-10 17:55:55 -07002018 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07002019 help
2020 Support for booting and shutting down ARM7 DSPS processors.
2021
2022 DSPS is a sensors offloading processor used for applications such
2023 as rotation detection, temperature, etc.
2024
Stephen Boyd7b973de2012-03-09 12:26:16 -08002025config MSM_PIL_VIDC
2026 tristate "Video Core Secure Boot Support"
2027 depends on MSM_PIL
2028 help
2029 Support for authenticating the video core image.
2030
Tianyi Gou828798d2012-05-02 21:12:38 -07002031config MSM_PIL_VENUS
2032 tristate "VENUS (Video) Boot Support"
2033 depends on MSM_PIL
2034 help
2035 Support for booting and shutting down the VENUS processor (Video).
2036 Venus is the Video subsystem processor used for video codecs.
2037
Matt Wagantall292aace2012-01-26 19:12:34 -08002038config MSM_PIL_GSS
Stephen Boydd86214b2012-05-10 15:26:35 -07002039 tristate "GSS (Cortex A5) Boot Support"
2040 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Matt Wagantall292aace2012-01-26 19:12:34 -08002041 help
2042 Support for booting and shutting down Cortex A5 processors which run
2043 GPS subsystem firmware.
2044
Tianyi Gouc1e049f82011-11-23 14:20:16 -08002045config MSM_PIL_PRONTO
2046 tristate "PRONTO (WCNSS) Boot Support"
Stephen Boyd581fe852012-06-13 12:05:35 -07002047 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Tianyi Gouc1e049f82011-11-23 14:20:16 -08002048 help
2049 Support for booting and shutting down the PRONTO processor (WCNSS).
2050 PRONTO is the wireless subsystem processor used in bluetooth, wireless
2051 LAN, and FM software applications.
2052
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002053config MSM_SCM
2054 bool "Secure Channel Manager (SCM) support"
2055 default n
2056
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002057config SCORPION_Uni_45nm_BUG
2058 bool "Scorpion Uni 45nm(SC45U): Workaround for ICIMVAU and BPIMVA"
2059 depends on ARCH_MSM7X30 || (ARCH_QSD8X50 && MSM_SOC_REV_A)
2060 default y
2061 help
2062 Invalidating the Instruction Cache by Modified Virtual Address to PoU and
2063 invalidating the Branch Predictor Array by Modified Virtual Address can
2064 create invalid entries in the TLB with the wrong ASID values on Scorpion
2065 Uniprocessor 45nm (SC45U) cores. This option enables the recommended software
2066 workaround for Scorpion Uniprocessor 45nm cores.
2067
2068 This bug is not applicable to any ScorpionMP or Scorpion Uni 65nm(SC65U) cores.
2069
Harini Jayaramanef7805f2011-09-28 12:45:31 -06002070config MSM_BUSPM_DEV
2071 tristate "MSM Bus Performance Monitor Kernel Module"
2072 depends on (ARCH_MSM8X60 || ARCH_MSM8960)
2073 default m
2074 help
2075 This kernel module is used to mmap() hardware registers for the
2076 performance monitors, counters, etc. The module can also be used to
2077 allocate physical memory which is used by bus performance hardware to
2078 dump performance data.
2079
Mona Hossain11c03ac2011-10-26 12:42:10 -07002080config MSM_TZ_LOG
2081 tristate "MSM Trust Zone (TZ) Log Driver"
2082 depends on DEBUG_FS
2083 help
2084 This option enables a driver with a debugfs interface for messages
2085 produced by the Secure code (Trust zone). These messages provide
2086 diagnostic information about TZ operation.
2087
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002088config MSM_RPM_LOG
2089 tristate "MSM Resource Power Manager Log Driver"
2090 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002091 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002092 default n
2093 help
2094 This option enables a driver which can read from a circular buffer
2095 of messages produced by the RPM. These messages provide diagnostic
2096 information about RPM operation. The driver outputs the messages
2097 via a debugfs node.
2098
2099config MSM_RPM_STATS_LOG
2100 tristate "MSM Resource Power Manager Stat Driver"
2101 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002102 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002103 default n
2104 help
2105 This option enables a driver which reads RPM messages from a shared
2106 memory location. These messages provide statistical information about
2107 the low power modes that RPM enters. The drivers outputs the message
2108 via a debugfs node.
2109
Girish Mahadevan898c56d2012-06-05 16:09:19 -06002110config MSM_RPM_RBCPR_STATS_LOG
2111 tristate "MSM Resource Power Manager RPBCPR Stat Driver"
2112 depends on DEBUG_FS
2113 depends on MSM_RPM
2114 help
2115 This option enables a driver which reads RPM messages from a shared
2116 memory location. These messages provide statistical information about
2117 RBCPR (Rapid Bridge Core Power Reduction) information . The drivers
2118 outputs the message via a debugfs node.
2119
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002120config MSM_DIRECT_SCLK_ACCESS
2121 bool "Direct access to the SCLK timer"
2122 default n
2123
2124config IOMMU_API
2125 bool
Gregory Bean1963a2a2010-08-28 10:05:44 -07002126
Brian Swetland9e73c842007-11-26 04:12:13 -08002127config MSM_GPIOMUX
2128 bool
2129
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002130config MSM_SECURE_IO
Brian Swetland9e73c842007-11-26 04:12:13 -08002131 bool
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002132
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002133config MSM_NATIVE_RESTART
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002134 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002135
Taniya Dascd1d0232012-07-03 17:50:47 +05302136config MSM_MODEM_RESTART
2137 bool
2138
Matt Wagantall88b86312012-01-31 16:53:03 -08002139config MSM_PM2
2140 depends on PM
2141 bool
2142
2143config MSM_PM8X60
2144 depends on PM
2145 bool
2146
Girish Mahadevan388c3082012-09-10 15:30:36 -06002147config MSM_EVENT_TIMER
2148 bool "Event timer"
2149 help
2150 This option enables a modules that manages a list of event timers that
2151 need to be monitored by the PM. The enables the PM code to monitor
2152 events that require the core to be awake and ready to handle the
2153 event.
2154
Matt Wagantall88b86312012-01-31 16:53:03 -08002155config MSM_NOPM
2156 default y if !PM
2157 bool
2158
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002159config MSM_BUS_SCALING
2160 bool "Bus scaling driver"
2161 default n
2162
Gagan Mac85c70492011-06-10 16:07:47 -06002163config MSM_BUS_RPM_MULTI_TIER_ENABLED
2164 bool "RPM Multi-tiering Configuration"
2165 depends on MSM_BUS_SCALING
2166
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002167config MSM_WATCHDOG
2168 bool "MSM Watchdog Support"
Rohit Vaswanie897f842012-03-19 14:19:34 -07002169 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_FSM9XXX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002170 help
2171 This enables the watchdog as is present on 8x60. Currently we use
2172 core 0's watchdog, and reset the entire SoC if it times out. It does
2173 not run during the bootup process, so it will not catch any early
2174 lockups.
2175
Hanumant Singhd1f01022012-07-05 14:21:53 -07002176config MSM_WATCHDOG_V2
2177 bool "MSM Watchdog Support"
2178 help
2179 This enables the watchdog module. It causes kernel panic if the
2180 watchdog times out. It allows for detection of cpu hangs and
2181 deadlocks. It does not run during the bootup process, so it will
2182 not catch any early lockups.
2183
Hanumant Singh5e2541c2012-07-31 14:41:14 -07002184config MSM_MEMORY_DUMP
2185 bool "MSM Memory Dump Support"
2186 help
2187 This enables memory dump feature. It allows various client
2188 subsystems to register respective dump regions. At the time
2189 of deadlocks or cpu hangs these dump regions are captured to
2190 give a snapshot of the system at the time of the crash.
2191
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002192config MSM_DLOAD_MODE
2193 bool "Enable download mode on crashes"
Abhimanyu Kapurdd7f2692012-10-22 13:43:52 -07002194 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_MSM8974 || ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002195 default n
2196 help
2197 This makes the SoC enter download mode when it resets
2198 due to a kernel panic. Note that this doesn't by itself
2199 make the kernel reboot on a kernel panic - that must be
2200 enabled via another mechanism.
2201
Pratik Patel17f3b822011-11-21 12:41:47 -08002202config MSM_JTAG
Pratik Patel2963de42012-05-17 12:43:40 -07002203 bool "JTAG and kernel debug and trace support across power collapse"
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002204 help
Pratik Patel2963de42012-05-17 12:43:40 -07002205 Enables support for kernel debugging (specifically breakpoints) and
2206 processor tracing across power collapse both for JTag and OS hosted
2207 software running on the target. Enabling this will ensure debug
2208 and ETM registers are saved and restored across power collapse.
2209
2210 For production builds, you should probably say 'N' here to avoid
2211 potential power, performance and memory penalty.
Pratik Patel7831c082011-06-08 21:44:37 -07002212
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002213config MSM_ETM
2214 tristate "Enable MSM ETM and ETB"
Pratik Patel17f3b822011-11-21 12:41:47 -08002215 depends on ARCH_MSM8X60
2216 select MSM_JTAG
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002217 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002218 Enables embedded trace collection on MSM8660
Pratik Patel7831c082011-06-08 21:44:37 -07002219
Lynus Vazdde09ee2012-01-05 13:28:22 +05302220config MSM_SLEEP_STATS_DEVICE
2221 bool "Enable exporting of MSM sleep device stats to userspace"
2222
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302223config MSM_RUN_QUEUE_STATS
2224 bool "Enable collection and exporting of MSM Run Queue stats to userspace"
Krishna Vankae2922052012-03-02 09:59:12 +05302225 depends on (MSM_SOC_REV_A || ARCH_MSM8X60 || ARCH_MSM8960)
2226 help
2227 This option enalbes statistics collection on Run Queue. A daemon
2228 in user mode, called MPDecision will be using this data to decide
2229 on when to switch off/on the other cores.
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302230
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002231config MSM_STANDALONE_POWER_COLLAPSE
2232 bool "Enable standalone power collapse"
2233 default n
2234
2235config MSM_GSBI9_UART
2236 bool "Enable GSBI9 UART device"
2237 default n
2238 help
2239 This enables GSBI9 configured into UART.
2240
2241config MSM_SHARED_GPIO_FOR_UART2DM
2242 bool "Use shared GPIOs into UART mode"
2243 depends on (ARCH_MSM7X27A && !MMC_MSM_SDC3_8_BIT_SUPPORT && !MMC_MSM_SDC4_SUPPORT)
2244 help
2245 This option configures GPIO muxed with SDC4/MMC3
2246 8-bit mode into UART mode. It is used for serial
2247 console on UART2DM. Say Y if you want to have
2248 serial console on UART2DM.
2249
2250config MSM_SHOW_RESUME_IRQ
2251 bool "Enable logging of interrupts that could have caused resume"
Bryan Huntsmancc147032011-11-23 13:03:56 -08002252 depends on (ARM_GIC || PMIC8058)
2253 default y if PMIC8058
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002254 default n
2255 help
2256 This option logs wake up interrupts that have triggered just before
2257 the resume loop unrolls. Say Y if you want to debug why the system
2258 resumed.
2259
2260config BT_MSM_PINTEST
2261 tristate "MSM Bluetooth Pin Connectivity Test"
2262 depends on ((ARCH_MSM8X60 || ARCH_MSM7X27A) && DEBUG_FS)
2263 default n
2264 help
2265 Bluetooth MSM Pin Connectivity test module.
2266 This driver provides support for verifying the MSM to BT pin
2267 connectivity.
2268
2269config MSM_FAKE_BATTERY
2270 depends on POWER_SUPPLY
2271 default n
2272 bool "MSM Fake Battery"
2273 help
2274 Enables MSM fake battery driver.
2275
2276config MSM_QDSP6_APR
2277 bool "Audio QDSP6 APR support"
2278 depends on MSM_SMD
2279 default n
2280 help
2281 Enable APR IPC protocol support between
2282 application processor and QDSP6. APR is
2283 used by audio driver to configure QDSP6's
2284 ASM, ADM and AFE.
2285
Joonwoo Park91d95462012-08-02 10:55:54 -07002286config MSM_QDSP6_APRV2
2287 bool "Audio QDSP6 APRv2 support"
2288 depends on MSM_SMD
2289 default n
2290 help
2291 Enable APRv2 IPC protocol support between
2292 application processor and QDSP6. APR is
2293 used by audio driver to configure QDSP6's
2294 ASM, ADM and AFE.
2295
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -07002296config MSM_QDSP6_CODECS
2297 bool "Audio Codecs on QDSP6 APR "
2298 depends on MSM_SMD
2299 default n
2300 help
2301 Enable Audio codecs with APR IPC protocol support between
2302 application processor and QDSP6. APR is
2303 used by audio driver to configure QDSP6's
2304 ASM, ADM and AFE.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002305
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002306config MSM_QDSP6V2_CODECS
2307 bool "Audio QDSP6V2 APR support"
2308 depends on MSM_SMD
2309 help
2310 Enable Audio codecs with APR IPC protocol support between
2311 application processor and QDSP6 for B-family. APR is
2312 used by audio driver to configure QDSP6's
2313 ASM, ADM and AFE.
2314
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002315config MSM_AUDIO_QDSP6
2316 bool "QDSP6 HW Audio support"
2317 select SND_SOC_MSM_QDSP6_INTF
2318 default n
2319 help
2320 Enable HW audio support in QDSP6.
2321 QDSP6 can support HW encoder & decoder and audio processing
2322
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002323config MSM_AUDIO_QDSP6V2
2324 bool "QDSP6V2 HW Audio support"
2325 select SND_SOC_MSM_QDSP6V2_INTF
2326 help
2327 Enable HW audio support in QDSP6V2.
2328 QDSP6V2 can support HW encoder & decoder and
2329 audio processing. It will enable support for
2330 AAC, AMRNB, AMRWB, EVRC, MP3, QCELP among
2331 others.
2332
Joonwoo Park4a14a552012-08-02 11:03:21 -07002333config MSM_ADSP_LOADER
2334 tristate "ADSP loader support"
2335 select SND_SOC_MSM_APRV2_INTF
2336 depends on MSM_AUDIO_QDSP6V2 && m
2337 help
2338 Enable ADSP image loader.
2339 The ADSP loader brings ADSP out of reset
2340 for the platforms that use APRv2.
2341 Say M if you want to enable this module.
2342
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +02002343config MSM_ULTRASOUND_A
2344 bool "QDSP6 HW Ultrasound support"
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002345 help
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +02002346 Enable HW ultrasound support in QDSP6.
2347 QDSP6 can support HW encoder & decoder and
2348 ultrasound processing. It will enable
2349 ultrasound data paths between
2350 HW and services, calculating input events
2351 upon the ultrasound data.
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002352
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002353config MSM_RPC_VIBRATOR
2354 bool "RPC based MSM Vibrator Support"
2355 depends on MSM_ONCRPCROUTER
2356 help
2357 Enable the vibrator support on MSM over RPC. The vibrator
2358 is connected on the PMIC. Say Y if you want to enable this
2359 feature.
2360
2361config PM8XXX_RPC_VIBRATOR
2362 bool "RPC based Vibrator on PM8xxx PMICs"
2363 depends on MSM_RPC_VIBRATOR
2364 help
2365 Enable the vibrator support on MSM over RPC. The vibrator
2366 is connected on the PM8XXX PMIC. Say Y if you want to enable
2367 this feature.
2368
2369config MSM_SPM_V1
2370 bool "Driver support for SPM Version 1"
2371 help
2372 Enables the support for Version 1 of the SPM driver. SPM hardware is
2373 used to manage the processor power during sleep. The driver allows
2374 configuring SPM to allow different power modes.
2375
2376config MSM_SPM_V2
2377 bool "Driver support for SPM Version 2"
2378 help
2379 Enables the support for Version 2 of the SPM driver. SPM hardware is
2380 used to manage the processor power during sleep. The driver allows
2381 configuring SPM to allow different power modes.
2382
2383config MSM_L2_SPM
2384 bool "SPM support for L2 cache"
2385 depends on MSM_SPM_V2
2386 help
2387 Enable SPM driver support for L2 cache. Some MSM chipsets allow
2388 control of L2 cache low power mode with a Subsystem Power manager.
2389 Enabling this driver allows configuring L2 SPM for low power modes
2390 on supported chipsets.
2391
Laura Abbott2d1760b2011-09-29 21:31:24 -07002392config MSM_MULTIMEDIA_USE_ION
2393 bool "Multimedia suport using Ion"
2394 depends on ION_MSM
2395 help
2396 Enable support for multimedia drivers using Ion for buffer management
2397 instead of pmem. Selecting this may also involve userspace
2398 dependencies as well.
2399
Naveen Ramaraj51f5e8b2012-04-09 15:58:40 -07002400config MSM_OCMEM
2401 bool "MSM On-Chip memory driver (OCMEM)"
2402 help
2403 Enable support for On-Chip Memory available on certain MSM chipsets.
2404 OCMEM is a low latency, high performance pool shared by subsystems.
2405
Naveen Ramaraj99b07562012-05-28 20:57:09 -07002406config MSM_OCMEM_LOCAL_POWER_CTRL
2407 bool "OCMEM Local Power Control"
2408 depends on MSM_OCMEM
2409 help
2410 Enable direct power management of the OCMEM core by the
2411 OCMEM driver. By default power management is delegated to
2412 the RPM. Selecting this option causes the OCMEM driver to
2413 directly handle the various macro power transitions.
2414
2415config MSM_OCMEM_DEBUG
2416 bool "OCMEM Debug Support"
2417 depends on MSM_OCMEM
2418 help
2419 Enable debug options for On-chip Memory (OCMEM) driver.
2420 Various debug options include memory, power and latency.
2421 Choosing one of these options allows debugging of each
2422 individual subsystem separately.
2423
Naveen Ramarajc71b2de2012-08-20 12:35:52 -07002424config MSM_OCMEM_NONSECURE
2425 bool "OCMEM Non Secure Mode"
2426 depends on MSM_OCMEM_DEBUG
2427 help
2428 Disable OCMEM interaction with secure processor.
2429 By default OCMEM is secured and accesses for each master
2430 is requested by the OCMEM driver. Selecting this option
2431 causes the OCMEM memory to be in non-secure state unless
2432 its locked down by the secure processor.
2433
Naveen Ramaraj99b07562012-05-28 20:57:09 -07002434config MSM_OCMEM_POWER_DEBUG
2435 bool "OCMEM Power Debug Support"
2436 depends on MSM_OCMEM_DEBUG
2437 help
2438 Enable debug support for OCMEM power management.
2439 This adds support for verifying all power management
2440 related operations of OCMEM. Both local power management
2441 and RPM assisted power management operations are supported.
2442
Naveen Ramaraj4b1d9392012-08-06 21:05:14 -07002443config MSM_OCMEM_POWER_DISABLE
2444 bool "OCMEM Disable Power Control"
2445 depends on MSM_OCMEM_DEBUG
2446 help
2447 Disable all OCMEM power management.
2448 This keeps all OCMEM macros turned ON at all times thus
2449 never allowing them to be turned OFF. Both local power
2450 management and RPM assisted power modes are supported.
2451
Laura Abbottad340ff2012-01-04 14:23:48 -08002452config MSM_RTB
2453 bool "Register tracing"
2454 help
2455 Add support for logging different events to a small uncached
2456 region. This is designed to aid in debugging reset cases where the
2457 caches may not be flushed before the target resets.
2458
2459config MSM_RTB_SEPARATE_CPUS
2460 bool "Separate entries for each cpu"
2461 depends on MSM_RTB
Laura Abbott9959f982012-02-28 11:30:50 -08002462 depends on SMP
Laura Abbottad340ff2012-01-04 14:23:48 -08002463 help
2464 Under some circumstances, it may be beneficial to give dedicated space
2465 for each cpu to log accesses. Selecting this option will log each cpu
2466 separately. This will guarantee that the last acesses for each cpu
2467 will be logged but there will be fewer entries per cpu
2468
Stepan Moskovchenko57884842012-06-07 17:35:49 -07002469config MSM_EBI_ERP
2470 bool "External Bus Interface (EBI) error reporting"
2471 help
2472 Say 'Y' here to enable reporting of external bus interface errors to
2473 the kernel log. Information such as the offending address and
2474 transaction type will be logged. This may be useful for debugging
2475 seemingly broken memory accesses.
2476
2477 For production builds, you should probably say 'N' here.
2478
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002479config MSM_CACHE_ERP
2480 bool "Cache / CPU error reporting"
2481 depends on ARCH_MSM_KRAIT
2482 help
2483 Say 'Y' here to enable reporting of cache and TLB errors to the kernel
2484 log. Enabling this feature can be used as a system debugging technique
2485 if cache corruption is suspected. Cache error statistics will also be
2486 reported in /proc/cpu/msm_cache_erp.
2487
2488 For production builds, you should probably say 'N' here.
2489
2490config MSM_L1_ERR_PANIC
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002491 bool "Panic on L1 cache errors"
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002492 depends on MSM_CACHE_ERP
2493 help
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002494 To cause the kernel to panic whenever an L1 cache error is detected, say
2495 'Y' here. This may be useful as a debugging technique if general system
2496 instability is suspected.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002497
2498 For production builds, you should probably say 'N' here.
2499
Stepan Moskovchenko7035f652012-05-31 17:48:01 -07002500config MSM_L1_ERR_LOG
2501 bool "Log CPU ERP events to system memory"
2502 depends on MSM_CACHE_ERP
2503 help
2504 Enable logging CPU ERP events to an area of memory that will be
2505 preserved across a system reset. This may be useful for detecting and
2506 troubleshooting ERP-related system crashes in the field.
2507
2508 For production builds, you may want to say 'Y' here.
2509
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002510config MSM_L2_ERP_PRINT_ACCESS_ERRORS
2511 bool "Report L2 master port slave/decode errors in kernel log"
2512 depends on MSM_CACHE_ERP
2513 help
2514 Master port errors can occur when a memory request is not properly
2515 handled by the destination slave. This can occur if the destination
2516 register does not exist or is inaccessible due to security
2517 restrictions or (in some cases) clock configuration. Enabling this
2518 option will cause a backtrace to be printed to the kernel log whenever
2519 such an error is encountered. Note that the error is reported as an
2520 interrupt rather than as an exception, meaning that the backtrace may
2521 have some skid. This option may help with debugging, though production
2522 builds should probably say 'N' here.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002523
2524config MSM_L2_ERP_PORT_PANIC
2525 bool "Panic on L2 master port errors"
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002526 depends on MSM_CACHE_ERP && MSM_L2_ERP_PRINT_ACCESS_ERRORS
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002527 help
2528 Master port errors can occur when a memory request is not properly
2529 handled by the destination slave. Enable this option to catch drivers
2530 which attempt to access bad areas of the address space, or access
2531 hardware registers in an improper state (such as certain clocks not
2532 being on). This option may help with debugging, though production
2533 builds should probably say 'N' here.
2534
2535config MSM_L2_ERP_1BIT_PANIC
2536 bool "Panic on recoverable L2 soft errors"
2537 depends on MSM_CACHE_ERP
2538 help
2539 Enable this option to cause a kernel panic whenever the L2 cache
2540 encounters a single-bit (correctable) soft error. This option should
2541 only be enabled when doing low-level debugging where cache corruption
2542 is suspected.
2543
2544 For production builds, you should definitely say 'N' here.
2545
2546config MSM_L2_ERP_2BIT_PANIC
2547 bool "Panic on unrecoverable L2 soft errors"
2548 depends on MSM_CACHE_ERP
2549 help
2550 Enable this option to cause a kernel panic whenever the L2 cache
2551 encounters a double-bit (non-correctable) soft error. Debug builds
2552 will likely benefit from having this option enabled to catch cache
2553 problems as soon as possible.
2554
2555 For production builds, it may be acceptable to say 'N' here, since
2556 an uncorrectable error might not necessarily cause further problems.
Laura Abbottad340ff2012-01-04 14:23:48 -08002557
Praveen Chidambaramf53ef1b2011-12-06 08:27:49 -07002558config MSM_DCVS
2559 bool "Use MSM DCVS for CPU/GPU Frequency control"
2560 depends on MSM_SCM
2561 help
2562 Enable support for MSM DCVS to control all CPU and GPU core frequencies.
2563 The DCVS manager allows idle driver to feed the idle information to the
2564 algorithm and the algorithm returns a frequency for the core which is
2565 passed to the frequency change driver.
2566
Pankaj Kumar32ce1ea2012-04-04 20:29:29 +05302567config MSM_CPR
2568 tristate "Use MSM CPR in S/W mode"
2569 help
2570 Enable CPR (core power reduction) in S/W mode, where the processor
2571 get's the notification from CPR block and programs the PMIC.
2572
2573config MSM_VP_REGULATOR
2574 tristate "Use MSM PMIC8029 C2 regulator"
2575 depends on ARCH_MSM8625
2576 help
2577 Enable MSM PMIC8029 C2 regulator support using APC_PLEVEL access
2578 for MSMs like 8625.
2579
Taniya Dasc43e6872012-03-21 16:41:14 +05302580config HAVE_ARCH_HAS_CURRENT_TIMER
2581 bool
Laura Abbott306bcc22012-03-08 11:24:53 -08002582
2583config MSM_CACHE_DUMP
2584 bool "Cache dumping support"
2585 help
2586 Add infrastructure to dump the L1 and L2 caches to an allocated buffer.
2587 This allows for analysis of the caches in case cache corruption is
2588 suspected.
2589
Laura Abbott7b637362012-03-29 16:43:49 -07002590config MSM_CACHE_DUMP_ON_PANIC
2591 bool "Dump caches on panic"
2592 depends on MSM_CACHE_DUMP
2593 help
2594 By default, the caches are flushed on panic. This means that trying to
2595 look at them in a RAM dump will give useless data. Select this if you
2596 want to dump the L1 and L2 caches on panic before any flush occurs.
2597 If unsure, say N
2598
Jack Phamccbbfab2012-04-09 19:50:20 -07002599config MSM_HSIC_SYSMON
2600 tristate "MSM HSIC system monitor driver"
2601 depends on USB
2602 help
2603 Add support for bridging with the system monitor interface of MDM
2604 over HSIC. This driver allows the local system monitor to
2605 communicate with the remote system monitor interface.
2606
2607config MSM_HSIC_SYSMON_TEST
2608 tristate "MSM HSIC system monitor bridge test"
2609 depends on USB && MSM_HSIC_SYSMON && DEBUG_FS
2610 help
2611 Enable the test hook for the Qualcomm system monitor HSIC driver.
2612 This will create a debugfs file entry named "hsic_sysmon_test" which
2613 can be read and written to send character data to the sysmon port of
2614 the modem over USB.
2615
Anirudh Ghayal0d2291a2012-09-20 21:31:41 +05302616config MSM_RPC_PMIC
2617 tristate "MSM RPC PMIC driver"
2618 depends on MSM_ONCRPCROUTER
2619 help
2620 This driver supports the PMIC functionality over RPC for those MSM's
2621 which do not have a direct access to PMIC. It supports ability to
2622 configure MPP, GPIO and all the other supported peripherals of the
2623 PMIC.
2624
Anirudh Ghayald3a63732012-09-20 22:13:13 +05302625config MSM_RPC_USB
2626 tristate "MSM RPC USB driver"
2627 depends on MSM_ONCRPCROUTER
2628 help
2629 This driver supports the USB configuration support over the RPC
2630 interface. It support the HS USB module connected to the MSM
2631 and FS USB which is connected over the PMIC. This support is
2632 required for MSMs on which the APPS does not have a direct access
2633 to the PMIC.
2634
2635config MSM_RPC_PMAPP
2636 tristate "MSM RPC PMIC APP driver"
2637 depends on MSM_ONCRPCROUTER
2638 help
2639 This driver supports the configuration of various PMIC APP modules
2640 such as display backlight, vreg pin-ctrl, smps clock over the RPC
2641 interface. This support is required for MSMs on which the APPS
2642 does not have a direct access to the PMIC.
Pushkar Joshi0fc73462012-09-26 17:59:31 -07002643
2644config MSM_ENABLE_WDOG_DEBUG_CONTROL
2645 bool "MSM Watchdog driver to disable debug Image"
2646 help
2647 This driver supports the configuration of the GCC_WDOG_DEBUG register
2648 used to control debug image.
2649 This support is currently required for MSM8974 to disable debug image
2650 on PS HOLD reset
Taniya Dasea4263f92012-08-22 18:52:51 +05302651
2652config MSM_FIQ
2653 bool "Enable FIQ for debugging"
2654 depends on ARCH_MSM8625
2655 select FIQ
Taniya Das36e4aa12012-07-04 18:27:16 +05302656 select GIC_SECURE
Taniya Dasea4263f92012-08-22 18:52:51 +05302657 help
2658 Enable any line to be used as an FIQ. This will help debugging
2659 if apps is not responding and holding lock with irqs disabled.
2660 Modem will then generate an raise a FIQ on this line before sending
2661 SMSM reset.
Brian Swetland9e73c842007-11-26 04:12:13 -08002662endif