blob: 3f222218bef997e195c6e597476c1853733db65d [file] [log] [blame]
Brian Swetland1637de02008-09-09 07:13:33 -07001if ARCH_MSM
Brian Swetland9e73c842007-11-26 04:12:13 -08002
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -07003menu "MSM SoC Type"
Daniel Walkerbf83de42010-03-16 16:29:44 -07004
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07005config ARCH_MSM7X01A
Daniel Walkerbf83de42010-03-16 16:29:44 -07006 bool "MSM7x00A / MSM7x01A"
7 select ARCH_MSM_ARM11
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07008 select MSM_VIC
Daniel Walkerbf83de42010-03-16 16:29:44 -07009 select CPU_V6
David Brown74d10d72011-05-16 13:57:39 -070010 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070011 select MSM_REMOTE_SPINLOCK_SWP
12
13config ARCH_MSM7X25
14 bool "MSM7x25"
15 select ARCH_MSM_ARM11
16 select MSM_VIC
17 select CPU_V6
Steve Mucklef132c6c2012-06-06 18:30:57 -070018 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070019 select MSM_REMOTE_SPINLOCK_SWP
Taniya Dasbe561a02011-10-12 09:53:11 +053020 select MULTI_IRQ_HANDLER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070021
22config ARCH_MSM7X27
23 bool "MSM7x27"
24 select ARCH_MSM_ARM11 if MSM_SOC_REV_NONE
Trilok Soni7ff06e02012-10-15 01:05:24 +053025 select ARCH_HAS_BARRIERS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070026 select ARCH_MSM_CORTEX_A5 if MSM_SOC_REV_A
27 select MSM_VIC
28 select CPU_V6 if MSM_SOC_REV_NONE
29 select CPU_V7 if MSM_SOC_REV_A
Steve Mucklef132c6c2012-06-06 18:30:57 -070030 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070031 select MSM_REMOTE_SPINLOCK_SWP if MSM_SOC_REV_NONE
32 select MSM_GPIOMUX
33 select REGULATOR
Taniya Dasbe561a02011-10-12 09:53:11 +053034 select MULTI_IRQ_HANDLER
Pankaj Kumar75c86fd2011-10-01 18:51:09 +053035 select MSM_PROC_COMM_REGULATOR
Laura Abbott1fbd2e62011-12-18 10:26:46 -080036 select CLEANCACHE
37 select QCACHE
Matt Wagantall88b86312012-01-31 16:53:03 -080038 select MSM_PM2 if PM
Krishna Vankae2922052012-03-02 09:59:12 +053039 select MSM_RUN_QUEUE_STATS if MSM_SOC_REV_A
Taniya Dasd4c39f92012-05-14 17:41:49 +053040 select DONT_MAP_HOLE_AFTER_MEMBANK0
Trilok Sonib856ab92012-06-26 14:33:28 +053041 select MIGHT_HAVE_CACHE_L2X0
Taniya Dascd1d0232012-07-03 17:50:47 +053042 select MSM_MODEM_RESTART
Daniel Walkerbf83de42010-03-16 16:29:44 -070043
Daniel Walker7b521612010-05-06 12:44:57 -070044config ARCH_MSM7X30
45 bool "MSM7x30"
46 select ARCH_MSM_SCORPION
Daniel Walker7b521612010-05-06 12:44:57 -070047 select MSM_VIC
48 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070049 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070050 select MSM_REMOTE_SPINLOCK_DEKKERS
51 select ARCH_SPARSEMEM_ENABLE
Laura Abbott78593b52011-09-26 18:48:14 -070052 select ARCH_HAS_HOLES_MEMORYMODEL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070053 select MEMORY_HOTPLUG
54 select MEMORY_HOTREMOVE
Bryan Huntsmanea439642011-11-23 12:34:05 -080055 select ARCH_ENABLE_MEMORY_HOTPLUG
56 select ARCH_ENABLE_MEMORY_HOTREMOVE
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070057 select MIGRATION
58 select ARCH_MEMORY_PROBE
59 select ARCH_MEMORY_REMOVE
Gregory Beanab78cde2010-09-01 16:26:12 -070060 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070061 select RESERVE_FIRST_PAGE
62 select MSM_DALRPC
63 select MSM_SPM_V1
64 select REGULATOR
Justin Paupore637a25d2011-07-14 17:11:04 -070065 select MSM_PROC_COMM_REGULATOR
Taniya Dasbae99fb2011-10-12 09:55:13 +053066 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -080067 select MSM_PM2 if PM
Chintan Pandyabb021762012-06-21 15:03:29 +053068 select HOLES_IN_ZONE if SPARSEMEM
Taniya Dascd1d0232012-07-03 17:50:47 +053069 select MSM_MODEM_RESTART
Chintan Pandya62a2f7c2012-10-30 12:00:40 +053070 select ARM_HAS_SG_CHAIN
Daniel Walker7b521612010-05-06 12:44:57 -070071
Daniel Walker4ad15e62010-05-06 13:54:17 -070072config ARCH_QSD8X50
73 bool "QSD8X50"
74 select ARCH_MSM_SCORPION
Daniel Walker4ad15e62010-05-06 13:54:17 -070075 select MSM_VIC
76 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070077 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070078 select MSM_REMOTE_SPINLOCK_LDREX
79 select CPU_USE_DOMAINS
80 select EMULATE_DOMAIN_MANAGER_V7
Gregory Beanab78cde2010-09-01 16:26:12 -070081 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070082 select MSM_DALRPC
Matt Wagantall88b86312012-01-31 16:53:03 -080083 select MSM_PM2 if PM
Taniya Dascd1d0232012-07-03 17:50:47 +053084 select MSM_MODEM_RESTART
Daniel Walker46fe5f22010-08-18 11:00:25 -070085
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070086config ARCH_MSM8X60
87 bool "MSM8X60"
Jeff Ohlsteine14411d2010-11-30 13:06:36 -080088 select ARCH_MSM_SCORPIONMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070089 select SMP_PARALLEL_START if SMP
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070090 select ARM_GIC
91 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070092 select MSM_REMOTE_SPINLOCK_LDREX
93 select ARCH_REQUIRE_GPIOLIB
94 select MSM_ADM3
95 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -080096 select MSM_RPM_REGULATOR
David Brown1a5ab4b2011-05-16 15:53:38 -070097 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070098 select MSM_PIL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070099 select ARCH_HAS_CPU_IDLE_WAIT
100 select MSM_DIRECT_SCLK_ACCESS
101 select MSM_RPM
102 select MSM_XO
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700103 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700104 select MSM_BUS_SCALING
105 select MSM_SECURE_IO
106 select MSM_DALRPC
107 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700108 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700109 select MSM_NATIVE_RESTART
110 select ARCH_INLINE_SPIN_TRYLOCK
111 select ARCH_INLINE_SPIN_TRYLOCK_BH
112 select ARCH_INLINE_SPIN_LOCK
113 select ARCH_INLINE_SPIN_LOCK_BH
114 select ARCH_INLINE_SPIN_LOCK_IRQ
115 select ARCH_INLINE_SPIN_LOCK_IRQSAVE
116 select ARCH_INLINE_SPIN_UNLOCK
117 select ARCH_INLINE_SPIN_UNLOCK_BH
118 select ARCH_INLINE_SPIN_UNLOCK_IRQ
119 select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
120 select ARCH_INLINE_READ_TRYLOCK
121 select ARCH_INLINE_READ_LOCK
122 select ARCH_INLINE_READ_LOCK_BH
123 select ARCH_INLINE_READ_LOCK_IRQ
124 select ARCH_INLINE_READ_LOCK_IRQSAVE
125 select ARCH_INLINE_READ_UNLOCK
126 select ARCH_INLINE_READ_UNLOCK_BH
127 select ARCH_INLINE_READ_UNLOCK_IRQ
128 select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
129 select ARCH_INLINE_WRITE_TRYLOCK
130 select ARCH_INLINE_WRITE_LOCK
131 select ARCH_INLINE_WRITE_LOCK_BH
132 select ARCH_INLINE_WRITE_LOCK_IRQ
133 select ARCH_INLINE_WRITE_LOCK_IRQSAVE
134 select ARCH_INLINE_WRITE_UNLOCK
135 select ARCH_INLINE_WRITE_UNLOCK_BH
136 select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
137 select CPU_HAS_L2_PMU
138 select MSM_SPM_V1
Stephen Boyd2a1eb582010-08-27 10:01:23 -0700139 select MSM_SCM if SMP
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530140 select MULTI_IRQ_HANDLER
Laura Abbott46505f62011-11-02 18:06:55 -0700141 select MSM_MULTIMEDIA_USE_ION
Matt Wagantall88b86312012-01-31 16:53:03 -0800142 select MSM_PM8X60 if PM
Krishna Vankae2922052012-03-02 09:59:12 +0530143 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800144 select ARM_HAS_SG_CHAIN
Sidipotu Ashokbf84d4d2012-11-06 17:13:28 +0530145 select USE_DEV_CTRL_VOLUME
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700146
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800147config ARCH_MSM8960
148 bool "MSM8960"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700149 select ARCH_MSM_KRAITMP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800150 select ARM_GIC
151 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700152 select GPIO_MSM_V2
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800153 select MSM_GPIOMUX
154 select MSM_SCM if SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700155 select MSM_DIRECT_SCLK_ACCESS
156 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -0800157 select MSM_RPM_REGULATOR
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700158 select MSM_RPM
159 select MSM_XO
160 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700161 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700162 select MSM_PIL
163 select MSM_AUDIO_QDSP6 if SND_SOC
164 select CPU_HAS_L2_PMU
165 select MSM_SPM_V2
166 select MSM_L2_SPM
167 select MSM_NATIVE_RESTART
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700168 select DONT_MAP_HOLE_AFTER_MEMBANK0
169 select MSM_REMOTE_SPINLOCK_SFPB
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700170 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basseld4d82c92011-12-07 09:52:49 -0800171 select CLEANCACHE
172 select QCACHE
Laura Abbott6d61a912011-10-27 16:44:14 -0700173 select MSM_MULTIMEDIA_USE_ION
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530174 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800175 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700176 select HOLES_IN_ZONE if SPARSEMEM
Krishna Vankae2922052012-03-02 09:59:12 +0530177 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800178 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700179 select MSM_KRAIT_WFE_FIXUP
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200180 select MSM_ULTRASOUND_A
Olav Haugan5e728722012-11-05 17:45:26 -0800181 select MSM_IOMMU_GPU_SYNC
Greg Reidb1d240a2012-10-12 12:20:31 -0400182 select GENERIC_TIME_VSYSCALL
183 select USE_USER_ACCESSIBLE_TIMERS
184 select ARM_USE_USER_ACCESSIBLE_TIMERS
185 select MSM_USE_USER_ACCESSIBLE_TIMERS
Jay Chokshi06e444f2012-12-06 20:48:23 -0800186 select MSM_CPU_PWRCTL
Priyanka Mathurdcaaaa9f2012-12-05 18:51:03 -0800187 select MSM_LPM_TEST
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800188
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700189config ARCH_MSM8930
190 bool "MSM8930"
191 select ARCH_MSM_KRAITMP
192 select ARM_GIC
193 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700194 select GPIO_MSM_V2
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700195 select MSM_GPIOMUX
196 select MSM_SCM if SMP
197 select MSM_DIRECT_SCLK_ACCESS
198 select REGULATOR
David Collins5779cea2012-01-05 15:09:21 -0800199 select MSM_RPM_REGULATOR
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700200 select MSM_RPM
201 select MSM_XO
202 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700203 select MSM_QDSP6_CODECS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700204 select MSM_PIL
205 select MSM_AUDIO_QDSP6 if SND_SOC
206 select CPU_HAS_L2_PMU
207 select MSM_SPM_V2
208 select MSM_L2_SPM
209 select MSM_NATIVE_RESTART
210 select DONT_MAP_HOLE_AFTER_MEMBANK0
Eric Holmbergeab10732011-09-23 19:44:43 -0600211 select MSM_REMOTE_SPINLOCK_SFPB
Larry Basself74479e2011-09-08 11:07:52 -0700212 select ARCH_HAS_HOLES_MEMORYMODEL
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200213 select MSM_ULTRASOUND_A
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530214 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800215 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700216 select HOLES_IN_ZONE if SPARSEMEM
Laura Abbottb14ed962012-01-30 14:18:08 -0800217 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700218 select MSM_KRAIT_WFE_FIXUP
Olav Haugan5e728722012-11-05 17:45:26 -0800219 select MSM_IOMMU_GPU_SYNC
Greg Reidb1d240a2012-10-12 12:20:31 -0400220 select GENERIC_TIME_VSYSCALL
221 select USE_USER_ACCESSIBLE_TIMERS
222 select ARM_USE_USER_ACCESSIBLE_TIMERS
223 select MSM_USE_USER_ACCESSIBLE_TIMERS
Jay Chokshi06e444f2012-12-06 20:48:23 -0800224 select MSM_CPU_PWRCTL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700225
226config ARCH_APQ8064
227 bool "APQ8064"
228 select ARCH_MSM_KRAITMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700229 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700230 select ARM_GIC
231 select CPU_V7
232 select MSM_SCM if SMP
Joel King4ebccc62011-07-22 09:43:22 -0700233 select MSM_GPIOMUX
Eric Holmberg40d21882011-09-27 09:42:03 -0600234 select MSM_REMOTE_SPINLOCK_SFPB
Swaminathan Sathappan47e5d932011-12-05 14:48:07 -0800235 select MSM_PIL
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800236 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700237 select MSM_QDSP6_CODECS
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800238 select MSM_AUDIO_QDSP6 if SND_SOC
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530239 select MULTI_IRQ_HANDLER
Praveen Chidambaram78499012011-11-01 17:15:17 -0600240 select MSM_RPM
241 select MSM_SPM_V2
242 select MSM_L2_SPM
Matt Wagantall88b86312012-01-31 16:53:03 -0800243 select MSM_PM8X60 if PM
Neil Leeder814d3d32012-01-19 17:21:43 -0500244 select CPU_HAS_L2_PMU
Laura Abbott085dd202012-03-30 14:02:34 -0700245 select HOLES_IN_ZONE if SPARSEMEM
Larry Bassel67b921d2012-04-06 10:23:27 -0700246 select CLEANCACHE
247 select QCACHE
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -0600248 select MIGHT_HAVE_PCI
249 select ARCH_SUPPORTS_MSI
Laura Abbottb14ed962012-01-30 14:18:08 -0800250 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700251 select MSM_KRAIT_WFE_FIXUP
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +0200252 select MSM_ULTRASOUND_A
Olav Haugan5e728722012-11-05 17:45:26 -0800253 select MSM_IOMMU_GPU_SYNC
Greg Reidb1d240a2012-10-12 12:20:31 -0400254 select GENERIC_TIME_VSYSCALL
255 select USE_USER_ACCESSIBLE_TIMERS
256 select ARM_USE_USER_ACCESSIBLE_TIMERS
257 select MSM_USE_USER_ACCESSIBLE_TIMERS
Jay Chokshi06e444f2012-12-06 20:48:23 -0800258 select MSM_CPU_PWRCTL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700259
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700260config ARCH_MSM8974
261 bool "MSM8974"
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700262 select ARCH_MSM_KRAITMP
Sathish Ambley4149e842012-03-23 11:53:55 -0700263 select GPIO_MSM_V3
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700264 select ARM_GIC
265 select CPU_V7
266 select MSM_SCM if SMP
267 select MSM_GPIOMUX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530268 select MULTI_IRQ_HANDLER
Olav Hauganb800c8c2012-01-30 08:50:45 -0800269 select MSM_MULTIMEDIA_USE_ION
Matt Wagantallc2bbdc32012-03-21 19:44:50 -0700270 select MSM_PIL
Praveen Chidambaramaa9d52b2012-04-02 11:09:47 -0600271 select MSM_SPM_V2
272 select MSM_L2_SPM
Stepan Moskovchenkoa000d132012-08-14 21:05:14 -0700273 select MSM_NATIVE_RESTART
274 select MSM_RESTART_V2
Praveen Chidambaram85b7b282012-04-16 13:45:15 -0600275 select MSM_PM8X60 if PM
Steve Mucklef132c6c2012-06-06 18:30:57 -0700276 select MAY_HAVE_SPARSE_IRQ
277 select SPARSE_IRQ
Mahesh Sivasubramaniancb668712012-04-04 13:03:25 -0600278 select MSM_RPM_SMD
David Collinsc7642322012-04-04 10:19:12 -0700279 select REGULATOR
Joonwoo Park91d95462012-08-02 10:55:54 -0700280 select MSM_QDSP6_APRV2
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -0700281 select MSM_QDSP6V2_CODECS
282 select MSM_AUDIO_QDSP6V2 if SND_SOC
David Collins1c91ea72012-05-03 16:17:35 -0700283 select MSM_RPM_REGULATOR_SMD
Laura Abbottb14ed962012-01-30 14:18:08 -0800284 select ARM_HAS_SG_CHAIN
Karthik Parsha404fb8f2012-07-30 19:14:05 -0700285 select MSM_RUN_QUEUE_STATS
Neeti Desai92eab922012-10-22 15:14:48 -0700286 select MEMORY_HOLE_CARVEOUT
Priyanka Mathur1af9d4b2012-10-30 14:55:44 -0700287 select MSM_RPM_STATS_LOG
Karthikeyan Ramasubramanian1edce9e2012-11-08 18:26:10 -0700288 select QMI_ENCDEC
Neeti Desai1b2cb552012-11-01 21:57:36 -0700289 select DONT_MAP_HOLE_AFTER_MEMBANK0
Naveen Ramarajf56e9af2012-12-10 17:07:38 -0800290 select SENSORS_ADSP
Baruch Eruchimovitch8c3f7802013-01-05 22:48:04 +0200291 select MSM_ULTRASOUND_B
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700292
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +0530293config ARCH_MPQ8092
294 bool "MPQ8092"
295 select ARCH_MSM_KRAITMP
296 select GPIO_MSM_V3
297 select ARM_GIC
298 select MULTI_IRQ_HANDLER
299 select CPU_V7
300 select MSM_GPIOMUX
301 select MAY_HAVE_SPARSE_IRQ
302 select SPARSE_IRQ
303 select MSM_NOPM
304
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700305config ARCH_FSM9XXX
306 bool "FSM9XXX"
307 select ARCH_MSM_SCORPION
308 select MSM_VIC
309 select CPU_V7
310 select MSM_REMOTE_SPINLOCK_LDREX
Steve Mucklef132c6c2012-06-06 18:30:57 -0700311 select GPIO_FSM9XXX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530312 select MULTI_IRQ_HANDLER
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -0800313 select MSM_DALRPC
Daniel Walker4ad15e62010-05-06 13:54:17 -0700314
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700315config ARCH_MSM9615
316 bool "MSM9615"
317 select ARM_GIC
Taniya Dasb241bd82012-03-19 17:58:06 +0530318 select GIC_SECURE
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700319 select ARCH_MSM_CORTEX_A5
320 select CPU_V7
Rohit Vaswani4307c842012-10-11 15:50:05 -0700321 select MIGHT_HAVE_CACHE_L2X0
Steve Mucklef132c6c2012-06-06 18:30:57 -0700322 select GPIO_MSM_V2
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700323 select MSM_GPIOMUX
Praveen Chidambaramab3b1c42011-08-25 08:44:05 -0600324 select MSM_RPM
Maheshkumar Sivasubramanian738b4582011-09-06 17:26:24 -0600325 select MSM_SPM_V2
Rohit Vaswanif688fa62011-10-13 18:13:10 -0700326 select MSM_NATIVE_RESTART
Matt Wagantall9274df92011-12-15 11:11:05 -0800327 select REGULATOR
328 select MSM_RPM_REGULATOR
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530329 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800330 select MSM_PM8X60 if PM
Vikram Mulukutla2021c002011-12-16 12:32:59 -0800331 select MSM_XO
Olav Haugane6a0acd2012-04-05 09:29:12 -0700332 select MSM_MULTIMEDIA_USE_ION
Shiv Maliyappanahalli9ec55e92012-01-09 14:44:59 -0800333 select MSM_QDSP6_APR
334 select MSM_AUDIO_QDSP6 if SND_SOC
Rohit Vaswaniead426f2012-01-05 20:24:52 -0800335 select FIQ
Laura Abbottb14ed962012-01-30 14:18:08 -0800336 select ARM_HAS_SG_CHAIN
Matt Wagantall9274df92011-12-15 11:11:05 -0800337
Taniya Das43bcdd62011-12-02 17:33:27 +0530338config ARCH_MSM8625
339 bool "MSM8625"
340 select ARCH_MSM_CORTEX_A5
341 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700342 select GPIO_MSM_V1
Taniya Das43bcdd62011-12-02 17:33:27 +0530343 select MSM_GPIOMUX
344 select ARM_GIC
345 select ARCH_MSM_CORTEXMP
346 select MULTI_IRQ_HANDLER
Trilok Soni3a453992012-03-06 18:46:22 +0530347 select ARM_TICKET_LOCKS
Krishna Vankae2922052012-03-02 09:59:12 +0530348 select MSM_RUN_QUEUE_STATS
Trilok Sonib856ab92012-06-26 14:33:28 +0530349 select MIGHT_HAVE_CACHE_L2X0
Chintan Pandya3544e742012-08-30 19:39:59 +0530350 select ARM_HAS_SG_CHAIN
Ashwin Chaugule3deb6b82012-12-21 13:09:48 -0500351 select CPU_HAS_L2_PMU
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700352
353config ARCH_MSM9625
354 bool "MSM9625"
355 select ARM_GIC
Abhimanyu Kapur490d20c2012-06-22 17:34:20 -0700356 select MIGHT_HAVE_CACHE_L2X0
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700357 select ARCH_MSM_CORTEX_A5
358 select SMP
359 select MSM_SMP
360 select CPU_V7
Abhimanyu Kapur4bb38622012-10-16 19:07:48 -0700361 select MSM_SCM if SMP
Jin Hong690e3352012-05-02 09:25:05 -0700362 select MSM_GPIOMUX
Girish Mahadevanf1c20a42012-09-19 11:44:36 -0600363 select MSM_RPM_SMD
Abhimanyu Kapur46e5e2b2012-10-02 20:45:37 -0700364 select MSM_NATIVE_RESTART
365 select MSM_RESTART_V2
Girish Mahadevan6e419562012-09-19 12:50:05 -0600366 select MSM_SPM_V2
367 select MSM_PM8X60 if PM
368 select MSM_SCM if SMP
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700369 select MULTI_IRQ_HANDLER
Rohit Vaswani61cf6ef2012-07-27 13:51:48 -0700370 select GPIO_MSM_V3
David Collins1cc6e402012-09-17 16:02:24 -0700371 select MAY_HAVE_SPARSE_IRQ
372 select SPARSE_IRQ
Mitchel Humpherys92e9b8a2012-10-08 18:12:47 -0700373 select MSM_MULTIMEDIA_USE_ION
Girish Mahadevane3be9302012-11-07 16:21:52 -0700374 select MSM_RPM_STATS_LOG
Venkat Sudhir0620e982012-11-15 16:04:36 -0800375 select MSM_QDSP6_APRV2
376 select MSM_QDSP6V2_CODECS
377 select MSM_AUDIO_QDSP6V2 if SND_SOC
Ashwin Chaugule8b459cc2012-11-26 15:20:54 -0500378 select CPU_HAS_L2_PMU
Pushkar Joshi64cae782012-12-15 18:59:03 -0800379 select MSM_JTAG_MM if MSM_QDSS
Syed Rameez Mustafa9232e5b2012-09-21 18:22:49 -0700380
381config ARCH_MSM8910
382 bool "MSM8910"
383 select ARM_GIC
384 select GIC_SECURE
Syed Rameez Mustafa9232e5b2012-09-21 18:22:49 -0700385 select ARCH_MSM_CORTEXMP
386 select CPU_V7
387 select MSM_SCM if SMP
388 select MAY_HAVE_SPARSE_IRQ
389 select SPARSE_IRQ
390 select MULTI_IRQ_HANDLER
391 select GPIO_MSM_V3
392 select MSM_GPIOMUX
Hanumant Singhe4271312012-10-24 13:27:57 -0700393 select MSM_NATIVE_RESTART
394 select MSM_RESTART_V2
Syed Rameez Mustafa9ee80102012-11-02 14:41:04 -0700395
396config ARCH_MSM8226
397 bool "MSM8226"
398 select ARM_GIC
399 select GIC_SECURE
Syed Rameez Mustafa9ee80102012-11-02 14:41:04 -0700400 select ARCH_MSM_CORTEXMP
401 select CPU_V7
402 select MSM_SCM if SMP
403 select MAY_HAVE_SPARSE_IRQ
404 select SPARSE_IRQ
405 select MULTI_IRQ_HANDLER
406 select GPIO_MSM_V3
407 select MSM_GPIOMUX
Syed Rameez Mustafaf1bdd712012-11-20 14:56:44 -0800408 select MSM_NATIVE_RESTART
409 select MSM_RESTART_V2
Bhalchandra Gajare4e08f632012-12-18 11:54:35 -0800410 select MSM_QDSP6_APRV2
411 select MSM_QDSP6V2_CODECS
412 select MSM_AUDIO_QDSP6V2 if SND_SOC
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -0700413endmenu
Daniel Walkerbf83de42010-03-16 16:29:44 -0700414
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700415choice
416 prompt "MSM SoC Revision"
417 default MSM_SOC_REV_NONE
418config MSM_SOC_REV_NONE
419 bool "N/A"
420 select EMULATE_DOMAIN_MANAGER_V7 if ARCH_QSD8X50
421 select VERIFY_PERMISSION_FAULT if ARCH_QSD8X50
Daniel Walkerbf83de42010-03-16 16:29:44 -0700422config MSM_SOC_REV_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700423 bool "Rev. A"
424 select ARCH_MSM7X27A if ARCH_MSM7X27
Daniel Walkerbf83de42010-03-16 16:29:44 -0700425endchoice
426
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700427config MSM_KRAIT_TBB_ABORT_HANDLER
428 bool "Krait TBB/TBH data abort handler"
429 depends on ARCH_MSM_KRAIT
430 depends on ARM_THUMB
431 help
432 Certain early samples of the Krait processor may generate data
433 aborts for TBB / TBH instructions that fail their condition code
434 checks. Enabling this option will ignore these erroneous data aborts,
435 at the expense of a very small performance penalty.
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800436
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700437 If unsure, say N.
Daniel Walkerbf83de42010-03-16 16:29:44 -0700438
439config ARCH_MSM_ARM11
440 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700441
Daniel Walkerbf83de42010-03-16 16:29:44 -0700442config ARCH_MSM_SCORPION
443 bool
444
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700445config ARCH_MSM_KRAIT
Daniel Walker46fe5f22010-08-18 11:00:25 -0700446 bool
Stephen Boyd51cabbe2011-12-02 13:28:56 -0800447 select ARM_L1_CACHE_SHIFT_6
Daniel Walker46fe5f22010-08-18 11:00:25 -0700448
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700449config MSM_SMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700450 select HAVE_SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700451 bool
452
453config ARCH_MSM_SCORPIONMP
454 select ARCH_MSM_SCORPION
455 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530456 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700457 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700458 bool
459
460config ARCH_MSM_KRAITMP
461 select ARCH_MSM_KRAIT
462 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530463 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700464 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700465 bool
466
Taniya Das43bcdd62011-12-02 17:33:27 +0530467config ARCH_MSM_CORTEXMP
468 select MSM_SMP
469 bool
470
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700471config MSM_KRAIT_WFE_FIXUP
472 bool
473
Stepan Moskovchenkoa000d132012-08-14 21:05:14 -0700474config MSM_RESTART_V2
475 bool
476
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700477config ARCH_MSM_CORTEX_A5
Bryan Huntsman239ef1e2011-11-23 15:09:13 -0800478 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700479
480config ARCH_MSM7X27A
481 bool
482 select MSM_DALRPC
Justin Pauporeb3a33b72011-08-23 15:30:32 -0700483 select MSM_PROC_COMM_REGULATOR
Taniya Das86e0e132011-10-19 11:32:00 +0530484 select MULTI_IRQ_HANDLER
Taniya Das43bcdd62011-12-02 17:33:27 +0530485 select ARM_GIC
486 select ARCH_MSM_CORTEXMP
Trilok Sonib856ab92012-06-26 14:33:28 +0530487 select MIGHT_HAVE_CACHE_L2X0
Chintan Pandya3544e742012-08-30 19:39:59 +0530488 select ARM_HAS_SG_CHAIN
Ashwin Chaugule3deb6b82012-12-21 13:09:48 -0500489 select CPU_HAS_L2_PMU
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700490
Gregory Beanf9f3d312010-04-30 22:06:50 -0700491config MSM_VIC
492 bool
Daniel Walkerbf83de42010-03-16 16:29:44 -0700493
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700494config MSM_RPM
495 bool "Resource Power Manager"
496 select MSM_MPM
497
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600498config MSM_RPM_SMD
499 depends on MSM_SMD
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600500 select MSM_MPM_OF
501 bool "RPM driver using SMD protocol"
502 help
503 RPM is the dedicated hardware engine for managing shared SoC
504 resources. This config adds driver support for using SMD as a
505 transport layer communication with RPM hardware. It also selects
506 the MSM_MPM config that programs the MPM module to monitor interrupts
507 during sleep modes.
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600508
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700509config MSM_MPM
510 bool "Modem Power Manager"
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600511 help
512 MPM is a dedicated hardware resource responsible for entering and
513 waking up from a system wide low power mode. The MPM driver tracks
514 the wakeup interrupts and configures the MPM to monitor the wakeup
515 interrupts when going to a system wide sleep mode.
516
517config MSM_MPM_OF
518 bool "Modem Power Manager"
Subbaraman Narayanamurthy0b148fc2012-11-28 12:14:12 -0800519 depends on OF
Mahesh Sivasubramanian102e5962012-06-20 13:12:11 -0600520 help
521 MPM is a dedicated hardware resource responsible for entering and
522 waking up from a system wide low power mode. The MPM driver tracks
523 the wakeup interrupts and configures the MPM to monitor the wakeup
524 interrupts when going to a system wide sleep mode. This config option
525 enables the MPM driver that supports initialization from a device
526 tree
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700527
Priyanka Mathur9a75ec52012-12-07 16:02:40 -0800528config MSM_LPM_TEST
529 bool "Low Power Mode test framework"
530 depends on MSM_RPM
531 depends on MSM_PM8X60
532 help
533 LPM_TEST is a test framework that assists in exercising the low
534 power mode algorithm on MSM targets. This test framework tracks
535 notifications sent during entry/exit of the low power modes and
536 processes them to measure various stats including latency
537 measurement.
538
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700539config MSM_XO
540 bool
541
542config MSM_REMOTE_SPINLOCK_DEKKERS
543 bool
544config MSM_REMOTE_SPINLOCK_SWP
545 bool
546config MSM_REMOTE_SPINLOCK_LDREX
547 bool
Eric Holmbergeab10732011-09-23 19:44:43 -0600548config MSM_REMOTE_SPINLOCK_SFPB
549 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700550config MSM_ADM3
551 bool
552
553menu "MSM Board Selection"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700554
555config MACH_HALIBUT
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700556 depends on ARCH_MSM7X01A
557 depends on MSM_STACKED_MEMORY
558 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700559 bool "Halibut Board (QCT SURF7201A)"
560 help
561 Support for the Qualcomm SURF7201A eval board.
562
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700563config MACH_MSM7201A_SURF
564 depends on ARCH_MSM7X01A
565 depends on MSM_STACKED_MEMORY
566 default y
567 bool "MSM7201A SURF"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700568 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700569 Support for the Qualcomm MSM7201A SURF eval board.
570
571config MACH_MSM7201A_FFA
572 depends on ARCH_MSM7X01A
573 depends on MSM_STACKED_MEMORY
574 default y
575 bool "MSM7201A FFA"
576 help
577 Support for the Qualcomm MSM7201A FFA eval board.
578
579config MACH_TROUT
580 depends on ARCH_MSM7X01A
581 depends on MSM_STACKED_MEMORY
582 default y
583 bool "Trout"
584
585config MACH_MSM7X27_SURF
586 depends on ARCH_MSM7X27
587 depends on !MSM_STACKED_MEMORY
588 default y
589 bool "MSM7x27 SURF"
590 help
591 Support for the Qualcomm MSM7x27 SURF eval board.
592
593config MACH_MSM7X27_FFA
594 depends on ARCH_MSM7X27
595 depends on !MSM_STACKED_MEMORY
596 default y
597 bool "MSM7x27 FFA"
598 help
599 Support for the Qualcomm MSM7x27 FFA eval board.
600
601config MACH_MSM7X27A_RUMI3
602 depends on ARCH_MSM7X27A
603 depends on !MSM_STACKED_MEMORY
604 default y
605 bool "MSM7x27A RUMI3"
606 help
607 Support for the Qualcomm MSM7x27A RUMI3 Emulation Platform.
608
609config MACH_MSM7X27A_SURF
610 depends on ARCH_MSM7X27A
611 depends on !MSM_STACKED_MEMORY
612 default y
613 bool "MSM7x27A SURF"
614 help
615 Support for the Qualcomm MSM7x27A SURF.
616
617config MACH_MSM7X27A_FFA
618 depends on ARCH_MSM7X27A
619 depends on !MSM_STACKED_MEMORY
620 default y
621 bool "MSM7x27A FFA"
622 help
623 Support for the Qualcomm MSM7x27A FFA.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700624
Trilok Soni3d0f6c52011-07-26 16:06:58 +0530625config MACH_MSM7625A_SURF
626 depends on ARCH_MSM7X27A
627 depends on !MSM_STACKED_MEMORY
628 default y
629 bool "MSM7625A SURF"
630 help
631 Support for the Qualcomm MSM7625A SURF.
632
633config MACH_MSM7625A_FFA
634 depends on ARCH_MSM7X27A
635 depends on !MSM_STACKED_MEMORY
636 default y
637 bool "MSM7625A FFA"
638 help
639 Support for the Qualcomm MSM7625A FFA.
640
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530641config MACH_MSM7627A_QRD1
642 depends on ARCH_MSM7X27A
643 depends on !MSM_STACKED_MEMORY
644 default y
645 bool "MSM7627A QRD1"
646 help
Chintan Pandyab1bad0e2012-02-06 19:04:51 +0530647 Support for the Qualcomm MSM7627A Reference Design.
648
649config MACH_MSM7627A_QRD3
650 depends on ARCH_MSM7X27A
651 depends on !MSM_STACKED_MEMORY
652 default y
653 bool "MSM7627A QRD3"
654 help
655 Support for the Qualcomm MSM7627A Reference Design.
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530656
Taniya Dasc868a2e2012-01-03 10:18:47 +0530657config MACH_MSM7627A_EVB
658 depends on ARCH_MSM7X27A
659 depends on !MSM_STACKED_MEMORY
660 default y
661 bool "MSM7627A EVB"
662 help
663 Support for the Qualcomm MSM7627A Reference Design.
664
Taniya Das43bcdd62011-12-02 17:33:27 +0530665config MACH_MSM8625_RUMI3
666 depends on ARCH_MSM8625
667 depends on !MSM_STACKED_MEMORY
668 default y
669 bool "MSM8625 RUMI3"
670 help
671 Support for the Qualcomm MSM8625 RUMI3 Emulation Platform.
672
Taniya Dase3027e22012-02-27 16:32:27 +0530673config MACH_MSM8625_SURF
674 depends on ARCH_MSM8625
675 depends on !MSM_STACKED_MEMORY
676 default y
677 bool "MSM8625 SURF"
678 help
679 Support for the Qualcomm MSM8625 SURF.
680
Aparna Mallavarapu9f000a72012-04-20 15:37:57 +0530681config MACH_MSM8625_FFA
682 depends on ARCH_MSM8625
683 depends on !MSM_STACKED_MEMORY
684 default y
685 bool "MSM8625 FFA"
686 help
687 Support for the Qualcomm MSM8625 FFA.
688
Chintan Pandyaf4ad4002012-02-28 19:49:03 +0530689config MACH_MSM8625_EVB
690 depends on ARCH_MSM8625
691 depends on !MSM_STACKED_MEMORY
692 default y
693 bool "MSM8625 EVB"
694 help
695 Support for the Qualcomm MSM8625 Reference Design.
696
Taniya Dasbd096542012-03-15 17:43:45 +0530697config MACH_MSM8625_QRD7
698 depends on ARCH_MSM8625
699 depends on !MSM_STACKED_MEMORY
700 default y
701 bool "MSM8625 QRD7"
702 help
703 Support for the Qualcomm MSM8625 Reference Design.
704
Aparna Mallavarapu5a326242012-05-09 19:49:02 +0530705config MACH_MSM8625_EVT
706 depends on ARCH_MSM8625
707 depends on !MSM_STACKED_MEMORY
708 default y
709 bool "MSM8625 EVT"
710 help
711 Support for the Qualcomm MSM8625 Reference Design.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700712
Channagoud Kadabi2bd65c82012-10-12 15:14:23 +0530713config MACH_QRD_SKUD_PRIME
714 depends on ARCH_MSM8625
715 depends on !MSM_STACKED_MEMORY
716 default y
717 bool "MSM8625 SKUD PRIME"
718 help
719 Support for the Qualcomm MSM8625 SKUD prime Reference Design.
720 Add support for a SKUD prime reference design based on MSM8x25
721 chipset. This device is much closer to a phone than regular form
722 factor devices, with new touch, display panel and other hardware
723 configurations.
724
Daniel Walker7b521612010-05-06 12:44:57 -0700725config MACH_MSM7X30_SURF
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700726 depends on ARCH_MSM7X30
727 depends on !MSM_STACKED_MEMORY
728 default y
729 bool "MSM7x30 SURF"
730 help
731 Support for the Qualcomm MSM7x30 SURF eval board.
732
733config MACH_MSM7X30_FFA
734 depends on ARCH_MSM7X30
735 depends on !MSM_STACKED_MEMORY
736 default y
737 bool "MSM7x30 FFA"
738 help
739 Support for the Qualcomm MSM7x30 FFA eval board.
740
741config MACH_MSM7X30_FLUID
742 depends on ARCH_MSM7X30
743 depends on !MSM_STACKED_MEMORY
744 default y
745 bool "MSM7x30 FLUID"
746 help
747 Support for the Qualcomm MSM7x30 FLUID eval board.
748
749config MACH_SAPPHIRE
750 depends on ARCH_MSM7X01A
751 default n
752 bool "Sapphire"
Daniel Walker7b521612010-05-06 12:44:57 -0700753
Daniel Walker4ad15e62010-05-06 13:54:17 -0700754config MACH_QSD8X50_SURF
755 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700756 depends on MSM_SOC_REV_NONE
757 depends on MSM_STACKED_MEMORY
758 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700759 bool "QSD8x50 SURF"
760 help
761 Support for the Qualcomm QSD8x50 SURF eval board.
762
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700763config MACH_QSD8X50_FFA
Daniel Walker4ad15e62010-05-06 13:54:17 -0700764 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700765 depends on MSM_SOC_REV_NONE
766 depends on MSM_STACKED_MEMORY
767 default y
768 bool "QSD8x50 FFA"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700769 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700770 Support for the Qualcomm QSD8x50 FFA eval board.
771
772config MACH_MSM7X25_SURF
773 depends on ARCH_MSM7X25
774 depends on !MSM_STACKED_MEMORY
775 default y
776 bool "MSM7x25 SURF"
777 help
778 Support for the Qualcomm MSM7x25 SURF eval board.
779
780config MACH_MSM7X25_FFA
781 depends on ARCH_MSM7X25
782 depends on !MSM_STACKED_MEMORY
783 default y
784 bool "MSM7x25 FFA"
785 help
786 Support for the Qualcomm MSM7x25 FFA eval board.
787
788config MACH_MSM8X55_SURF
789 depends on ARCH_MSM7X30
790 depends on !MSM_STACKED_MEMORY
791 default y
792 bool "MSM8X55 SURF"
793 help
794 Support for the Qualcomm MSM8x55 SURF eval board.
795
796config MACH_MSM8X55_FFA
797 depends on ARCH_MSM7X30
798 depends on !MSM_STACKED_MEMORY
799 default y
800 bool "MSM8X55 FFA"
801 help
802 Support for the Qualcomm MSM8x55 FFA eval board.
803
804config MACH_MSM8X55_SVLTE_FFA
805 depends on ARCH_MSM7X30
806 depends on !MSM_STACKED_MEMORY
807 default y
808 bool "MSM8X55 SVLTE FFA"
809 help
810 Support for the Qualcomm MSM8x55 SVLTE FFA eval board.
811
812config MACH_MSM8X55_SVLTE_SURF
813 depends on ARCH_MSM7X30
814 depends on !MSM_STACKED_MEMORY
815 default y
816 bool "MSM8X55 SVLTE SURF"
817 help
818 Support for the Qualcomm MSM8x55 SVLTE SURF eval board.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700819
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700820config MACH_MSM8X60_SURF
821 depends on ARCH_MSM8X60
822 default n
823 bool "MSM8x60 SURF"
824 help
825 Support for the Qualcomm MSM8x60 SURF eval board.
826
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700827config MACH_MSM8X60_FFA
828 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700829 default n
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700830 bool "MSM8x60 FFA"
831 help
832 Support for the Qualcomm MSM8x60 FFA eval board.
833
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700834config MACH_MSM8X60_FLUID
835 depends on ARCH_MSM8X60
836 default n
837 bool "MSM8x60 FLUID"
838 help
839 Support for the Qualcomm MSM8x60 FLUID platform. The FLUID is an
840 8x60 target which has a form factor that is much closer to that
841 of a phone than other targets. It also has a new display and
842 touchscreen controller.
843
844config MACH_MSM8X60_FUSION
845 depends on ARCH_MSM8X60
846 default n
847 bool "MSM8x60 FUSION"
848 help
849 Support for the Qualcomm MSM8x60 Fusion SURF device.
850
851config MACH_MSM8X60_FUSN_FFA
852 depends on ARCH_MSM8X60
853 default n
854 bool "MSM8x60 FUSN FFA"
855 help
856 Support for the Qualcomm MSM8x60 Fusion FFA device.
857
Zhang Chang Kenef05b172011-07-27 15:28:13 -0400858config MACH_MSM8X60_DRAGON
859 depends on ARCH_MSM8X60
860 default n
861 bool "MSM8x60 DRAGON"
862 help
863 Support for the Qualcomm MSM8x60 Dragon board.
864
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700865config MACH_MSM8960_CDP
866 depends on ARCH_MSM8960
867 bool "MSM8960 CDP"
868 help
869 Support for the Qualcomm MSM8960 CDP device.
870
871config MACH_MSM8960_MTP
872 depends on ARCH_MSM8960
873 bool "MSM8960 MTP"
874 help
875 Support for the Qualcomm MSM8960 MTP device.
876
877config MACH_MSM8960_FLUID
878 depends on ARCH_MSM8960
879 bool "MSM8960 FLUID"
880 help
881 Support for the Qualcomm MSM8960 FLUID device.
882
Amir Samuelov0d1f8ae2011-07-28 11:13:58 +0300883config MACH_MSM8960_LIQUID
884 depends on ARCH_MSM8960
885 bool "MSM8960 LIQUID"
886 help
887 Support for the Qualcomm MSM8960 LIQUID device.
888
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700889config MACH_MSM8930_CDP
890 depends on ARCH_MSM8930
891 bool "MSM8930 CDP"
892 help
893 Support for the Qualcomm MSM8930 CDP device.
894
895config MACH_MSM8930_MTP
896 depends on ARCH_MSM8930
897 bool "MSM8930 MTP"
898 help
899 Support for the Qualcomm MSM8930 MTP device.
900
901config MACH_MSM8930_FLUID
902 depends on ARCH_MSM8930
903 bool "MSM8930 FLUID"
904 help
905 Support for the Qualcomm MSM8930 FLUID device.
906
Stepan Moskovchenko8768eff2011-12-01 18:55:07 -0800907config MACH_MSM8627_CDP
908 depends on ARCH_MSM8930
909 bool "MSM8627 CDP"
910 help
911 Support for the Qualcomm MSM8627 CDP device.
912
913config MACH_MSM8627_MTP
914 depends on ARCH_MSM8930
915 bool "MSM8627 MTP"
916 help
917 Support for the Qualcomm MSM8627 MTP device.
918
Rohit Vaswania8e7a832011-09-28 21:00:05 -0700919config MACH_MSM9615_CDP
920 depends on ARCH_MSM9615
921 bool "MSM9615 CDP"
922 help
923 Support for the Qualcomm MSM9615 CDP device.
924
925config MACH_MSM9615_MTP
926 depends on ARCH_MSM9615
927 bool "MSM9615 MTP"
928 help
929 Support for the Qualcomm MSM9615 MTP device.
930
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700931config MSM_USE_TSIF1
932 depends on ARCH_MSM8X60
933 bool "MSM8x60 use TSIF1"
934 help
935 Selects TSIF1 core to be used rather than TSIF0.
936 The two TSIF cores share the same DM configuration
937 so they cannot be used simultaneously.
938
Joel King82b7e3f2012-01-05 10:03:27 -0800939config MACH_APQ8064_CDP
940 depends on ARCH_APQ8064
941 bool "APQ8064 CDP"
942 help
943 Support for the Qualcomm APQ8064 CDP device.
944
945config MACH_APQ8064_MTP
946 depends on ARCH_APQ8064
947 bool "APQ8064 MTP"
948 help
949 Support for the Qualcomm APQ8064 MTP device.
950
951config MACH_APQ8064_LIQUID
952 depends on ARCH_APQ8064
953 bool "APQ8064 LIQUID"
954 help
955 Support for the Qualcomm APQ8064 LIQUID device.
956
Joel King064bbf82012-04-01 13:23:39 -0700957config MACH_MPQ8064_CDP
958 depends on ARCH_APQ8064
959 bool "MPQ8064 CDP"
960 help
961 Support for the Qualcomm MPQ8064 CDP device.
962
Joel King11ca8202012-02-13 16:19:03 -0800963config MACH_MPQ8064_HRD
964 depends on ARCH_APQ8064
965 bool "MPQ8064 HRD"
966 help
967 Support for the Qualcomm MPQ8064 HRD device.
968
969config MACH_MPQ8064_DTV
970 depends on ARCH_APQ8064
971 bool "MPQ8064 DTV"
972 help
973 Support for the Qualcomm MPQ8064 DTV device.
974
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700975config MACH_FSM9XXX_SURF
976 depends on ARCH_FSM9XXX
977 depends on !MSM_STACKED_MEMORY
978 default y
979 bool "FSM9XXX SURF"
980 help
981 Support for the Qualcomm FSM9xxx femtocell
982 chipset based SURF evaluation board and
983 FFA board.
984
Daniel Walker4ad15e62010-05-06 13:54:17 -0700985endmenu
Brian Swetland9e73c842007-11-26 04:12:13 -0800986
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700987config MSM_STACKED_MEMORY
988 bool "Stacked Memory"
989 default y
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800990 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700991 This option is used to indicate the presence of on-die stacked
992 memory. When present this memory bank is used for a high speed
993 shared memory interface. When not present regular RAM is used.
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800994
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700995config PHYS_OFFSET
996 hex
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700997 default "0x40800000" if ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700998 default "0x80200000" if ARCH_APQ8064
999 default "0x80200000" if ARCH_MSM8960
Stepan Moskovchenko082952d2011-10-18 17:27:08 -07001000 default "0x80200000" if ARCH_MSM8930
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001001 default "0x00000000" if ARCH_MSM8974
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +05301002 default "0x00000000" if ARCH_MPQ8092
Syed Rameez Mustafa90f80502012-08-23 17:27:24 -07001003 default "0x00000000" if ARCH_MSM8226
Syed Rameez Mustafa02dd1a32012-10-26 11:02:26 -07001004 default "0x00000000" if ARCH_MSM8910
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001005 default "0x10000000" if ARCH_FSM9XXX
Abhimanyu Kapur20ac2ad2012-09-25 04:23:59 -07001006 default "0x00200000" if ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001007 default "0x00200000" if !MSM_STACKED_MEMORY
1008 default "0x00000000" if ARCH_QSD8X50 && MSM_SOC_REV_A
1009 default "0x20000000" if ARCH_QSD8X50
1010 default "0x40200000" if ARCH_MSM8X60
1011 default "0x10000000"
Stepan Moskovchenko24f61732011-02-11 12:28:16 -08001012
Mitchel Humpherys05e58812012-08-13 14:24:13 -07001013config KERNEL_MSM_CONTIG_MEM_REGION
1014 bool "Enable in-kernel contiguous memory region"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001015 default y if ARCH_MSM8X60
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001016 depends on ANDROID_PMEM && (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001017 help
Mitchel Humpherys05e58812012-08-13 14:24:13 -07001018 Enable the in-kernel contiguous memory allocator. Sets up a
1019 region of physically contiguous memory. This memory is
1020 reserved during initialization, and can be used
1021 generically.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001022
1023config KERNEL_PMEM_SMI_REGION
1024 bool "Enable in-kernel PMEM region for SMI"
1025 default y if ARCH_MSM8X60
1026 depends on ANDROID_PMEM && ((ARCH_QSD8X50 && !PMEM_GPU0) || (ARCH_MSM8X60 && !VCM))
1027 help
1028 Enable the in-kernel PMEM allocator to use SMI memory.
1029
1030config PMEM_GPU0
1031 bool "Enable PMEM GPU0 region"
1032 default y
1033 depends on ARCH_QSD8X50 && ANDROID_PMEM
1034 help
1035 Enable the PMEM GPU0 device on SMI Memory.
1036
1037config MSM_AMSS_VERSION
1038 int
1039 default 6210 if MSM_AMSS_VERSION_6210
1040 default 6220 if MSM_AMSS_VERSION_6220
1041 default 6225 if MSM_AMSS_VERSION_6225
1042
1043choice
1044 prompt "AMSS modem firmware version"
1045
1046 default MSM_AMSS_VERSION_6225
1047
1048 config MSM_AMSS_VERSION_6210
1049 bool "6.2.10"
1050
1051 config MSM_AMSS_VERSION_6220
1052 bool "6.2.20"
1053
1054 config MSM_AMSS_VERSION_6225
1055 bool "6.2.20 + New ADSP"
1056endchoice
Stepan Moskovchenko2607b0a2010-11-15 17:46:10 -08001057
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001058config MSM_HAS_DEBUG_UART_HS
Daniel Walkerbf83de42010-03-16 16:29:44 -07001059 bool
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001060 help
1061 Say Y here if high speed MSM UART is present.
1062
1063config MSM_HAS_DEBUG_UART_HS_V14
1064 bool
1065 select MSM_HAS_DEBUG_UART_HS
1066 help
1067 Say Y here if high speed MSM UART v1.4 is present.
1068
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301069config MSM_DEBUG_UART_PHYS
1070 hex
1071 default 0xA9A00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART1
1072 default 0xACA00000 if ARCH_MSM7X30 && DEBUG_MSM_UART1
1073 default 0x94000000 if ARCH_FSM9XXX && DEBUG_MSM_UART1
1074 default 0xA9B00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART2
1075 default 0xACB00000 if ARCH_MSM7X30 && DEBUG_MSM_UART2
1076 default 0x94100000 if ARCH_FSM9XXX && DEBUG_MSM_UART2
1077 default 0xA9C00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART3
1078 default 0xACC00000 if ARCH_MSM7X30 && DEBUG_MSM_UART3
1079
Brian Swetland9e73c842007-11-26 04:12:13 -08001080choice
1081 prompt "Debug UART"
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001082 depends on DEBUG_LL
Brian Swetland9e73c842007-11-26 04:12:13 -08001083
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001084 config DEBUG_MSM_UART1
1085 bool "Kernel low-level debugging messages via MSM UART1"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301086 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001087 help
1088 Say Y here if you want the debug print routines to direct
1089 their output to the first serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001090
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001091 config DEBUG_MSM_UART2
1092 bool "Kernel low-level debugging messages via MSM UART2"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301093 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001094 help
1095 Say Y here if you want the debug print routines to direct
1096 their output to the second serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001097
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001098 config DEBUG_MSM_UART3
1099 bool "Kernel low-level debugging messages via MSM UART3"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +05301100 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001101 help
1102 Say Y here if you want the debug print routines to direct
1103 their output to the third serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001104
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001105 config DEBUG_MSM8660_UART
1106 bool "Kernel low-level debugging messages via MSM 8660 UART"
1107 depends on ARCH_MSM8X60
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001108 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001109 help
1110 Say Y here if you want the debug print routines to direct
1111 their output to the serial port on MSM 8660 devices.
Steve Mucklec8aabae2010-04-21 16:20:27 -07001112
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001113 config DEBUG_MSM8960_UART
1114 bool "Kernel low-level debugging messages via MSM 8960 UART"
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001115 depends on ARCH_MSM8960 && DEBUG_LL
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001116 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001117 help
1118 Say Y here if you want the debug print routines to direct
1119 their output to the serial port on MSM 8960 devices.
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001120
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001121 config DEBUG_MSM8930_UART
1122 bool "Kernel low-level debugging messages via MSM 8930 UART"
1123 depends on ARCH_MSM8930 && DEBUG_LL
1124 select MSM_HAS_DEBUG_UART_HS
1125 help
1126 Say Y here if you want the debug print routines to direct
1127 their output to the serial port on MSM 8930 devices.
1128
1129 config DEBUG_APQ8064_UART
1130 bool "Kernel low-level debugging messages via APQ 8064 UART"
1131 depends on ARCH_APQ8064 && DEBUG_LL
1132 select MSM_HAS_DEBUG_UART_HS
1133 help
1134 Say Y here if you want the debug print routines to direct
1135 their output to the serial port on APQ 8064 devices.
1136
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001137 config DEBUG_MSM8974_UART
1138 bool "Kernel low-level debugging messages via MSM 8974 UART"
1139 depends on ARCH_MSM8974
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001140 select MSM_HAS_DEBUG_UART_HS_V14
1141 help
1142 Say Y here if you want the debug print routines to direct
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001143 their output to the serial port on MSM 8974 devices.
Ravi Kumar Vb31dbba2012-08-31 22:40:22 +05301144
1145 config DEBUG_MPQ8092_UART
1146 bool "Kernel low-level debugging messages via MPQ8092 UART"
1147 depends on ARCH_MPQ8092
1148 select MSM_HAS_DEBUG_UART_HS_V14
1149 help
1150 Say Y here if you want the debug print routines to direct
1151 their output to the serial port on MPQ8092 devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001152endchoice
Brian Swetland9e73c842007-11-26 04:12:13 -08001153
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001154choice
1155 prompt "Default Timer"
1156 default MSM7X00A_USE_GP_TIMER
1157
1158 config MSM7X00A_USE_GP_TIMER
1159 bool "GP Timer"
1160 help
1161 Low resolution timer that allows power collapse from idle.
1162
1163 config MSM7X00A_USE_DG_TIMER
1164 bool "DG Timer"
1165 help
1166 High resolution timer.
1167endchoice
1168
1169choice
1170 prompt "Suspend sleep mode"
1171 default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1172 help
1173 Allows overriding the sleep mode used. Leave at power
1174 collapse suspend unless the arm9 image has problems.
1175
1176 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1177 bool "Power collapse suspend"
1178 help
1179 Lowest sleep state. Returns through reset vector.
1180
1181 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1182 bool "Power collapse"
1183 help
1184 Sleep state that returns through reset vector.
1185
1186 config MSM7X00A_SLEEP_MODE_APPS_SLEEP
1187 bool "Apps Sleep"
1188
1189 config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1190 bool "Ramp down cpu clock and wait for interrupt"
1191
1192 config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1193 bool "Wait for interrupt"
1194endchoice
1195
1196config MSM7X00A_SLEEP_MODE
1197 int
1198 default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1199 default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1200 default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
1201 default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1202 default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1203
1204choice
1205 prompt "Idle sleep mode"
1206 default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1207 help
1208 Allows overriding the sleep mode used from idle. Leave at power
1209 collapse suspend unless the arm9 image has problems.
1210
1211 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1212 bool "Power collapse suspend"
1213 help
1214 Lowest sleep state. Returns through reset vector.
1215
1216 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1217 bool "Power collapse"
1218 help
1219 Sleep state that returns through reset vector.
1220
1221 config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1222 bool "Apps Sleep"
1223
1224 config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1225 bool "Ramp down cpu clock and wait for interrupt"
1226
1227 config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1228 bool "Wait for interrupt"
1229endchoice
1230
1231config MSM7X00A_IDLE_SLEEP_MODE
1232 int
1233 default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1234 default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1235 default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1236 default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1237 default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1238
1239config MSM7X00A_IDLE_SLEEP_MIN_TIME
1240 int "Minimum idle time before sleep"
1241 default 20000000
1242 help
1243 Minimum idle time in nanoseconds before entering low power mode.
1244
1245config MSM7X00A_IDLE_SPIN_TIME
1246 int "Idle spin time before cpu ramp down"
1247 default 80000
1248 help
1249 Spin time in nanoseconds before ramping down cpu clock and entering
1250 any low power state.
1251
1252menuconfig MSM_IDLE_STATS
1253 bool "Collect idle statistics"
1254 default y
1255 help
1256 Collect idle statistics and export them in proc/msm_pm_stats.
1257
1258if MSM_IDLE_STATS
1259
1260config MSM_IDLE_STATS_FIRST_BUCKET
1261 int "First bucket time"
1262 default 62500
1263 help
1264 Upper time limit in nanoseconds of first bucket.
1265
1266config MSM_IDLE_STATS_BUCKET_SHIFT
1267 int "Bucket shift"
1268 default 2
1269
1270config MSM_IDLE_STATS_BUCKET_COUNT
1271 int "Bucket count"
1272 default 10
1273
1274config MSM_SUSPEND_STATS_FIRST_BUCKET
1275 int "First bucket time for suspend"
1276 default 1000000000
1277 help
1278 Upper time limit in nanoseconds of first bucket of the
1279 histogram. This is for collecting statistics on suspend.
1280
1281endif # MSM_IDLE_STATS
1282
1283config CPU_HAS_L2_PMU
1284 bool "L2CC PMU Support"
1285 help
1286 Select this if the L2 cache controller has a Performance Monitoring Unit.
1287
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001288config HTC_HEADSET
1289 tristate "HTC 2 Wire detection driver"
1290 default n
1291 help
1292 Provides support for detecting HTC 2 wire devices, such as wired
1293 headset, on the trout platform. Can be used with the msm serial
1294 debugger, but not with serial console.
1295
1296config TROUT_BATTCHG
1297 depends on MACH_TROUT && POWER_SUPPLY
1298 default y
1299 bool "Trout battery / charger driver"
1300
1301config HTC_PWRSINK
1302 depends on MSM_SMD
1303 default n
1304 bool "HTC Power Sink Driver"
1305
1306config QSD_SVS
1307 bool "QSD Static Voltage Scaling"
1308 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1309 default y
1310 select TPS65023
1311 help
1312 Enables static voltage scaling using the TPS65023 PMIC.
1313
1314config QSD_PMIC_DEFAULT_DCDC1
1315 int "PMIC default output voltage"
1316 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1317 default 1250
1318 help
1319 This is the PMIC voltage at Linux kernel boot.
1320
1321config MSM_FIQ_SUPPORT
1322 default y
1323 bool "Enable installation of an FIQ handler."
1324
1325config MSM_SERIAL_DEBUGGER
1326 select MSM_FIQ_SUPPORT
1327 select KERNEL_DEBUGGER_CORE
1328 default n
1329 bool "FIQ Mode Serial Debugger"
1330 help
1331 The FIQ serial debugger can accept commands even when the
1332 kernel is unresponsive due to being stuck with interrupts
1333 disabled. Depends on the kernel debugger core in drivers/misc.
1334
1335config MSM_SERIAL_DEBUGGER_CONSOLE
1336 depends on MSM_SERIAL_DEBUGGER
1337 default n
1338 bool "Console on FIQ Serial Debugger port"
1339 help
1340 Enables a console so that printk messages are displayed on
1341 the debugger serial port as the occur.
Brian Swetland9e73c842007-11-26 04:12:13 -08001342
Gregory Beanab78cde2010-09-01 16:26:12 -07001343config MSM_PROC_COMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001344 default y
1345 bool "Proc-Comm RPC Interface"
1346 help
1347 Enables a lightweight communications interface to the
1348 baseband processor.
Gregory Beanab78cde2010-09-01 16:26:12 -07001349
Gregory Bean1963a2a2010-08-28 10:05:44 -07001350config MSM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001351 bool "MSM Shared Memory Driver (SMD)"
1352 help
1353 Support for the shared memory interface between the apps
1354 processor and the baseband processor. Provides access to
1355 the "shared heap", as well as virtual serial channels
1356 used to communicate with various services on the baseband
1357 processor.
1358
1359choice
1360 prompt "MSM Shared memory interface version"
1361 depends on MSM_SMD
1362 default MSM_SMD_PKG3 if ARCH_MSM_ARM11
1363 default MSM_SMD_PKG4 if ARCH_MSM_SCORPION
1364
1365 config MSM_SMD_PKG3
1366 bool
1367 prompt "Package 3"
1368
1369 config MSM_SMD_PKG4
1370 bool
1371 prompt "Package 4"
1372endchoice
1373
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -06001374config MSM_PCIE
1375 bool "MSM PCIe Controller driver"
1376 depends on PCI && PCI_MSI
1377 help
1378 Enables the PCIe functionality by configures PCIe core on
1379 MSM chipset and by enabling the ARM PCI framework extension.
1380
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001381config MSM_RPC_SDIO_XPRT
1382 depends on MSM_SDIO_AL
1383 default y
1384 bool "MSM SDIO XPRT Layer"
1385 help
1386 SDIO Transport Layer for RPC Rouer
1387
1388config MSM_RPC_SDIO_DEBUG
1389 depends on MSM_RPC_SDIO_XPRT
1390 default y
1391 bool "MSM SDIO XPRT debug support"
1392 help
1393 Support for debugging SDIO XPRT
1394
1395config MSM_SMD_DEBUG
1396 depends on MSM_SMD
1397 default y
1398 bool "MSM SMD debug support"
1399 help
1400 Support for debugging the SMD for communication
1401 between the ARM9 and ARM11
1402
1403config MSM_SDIO_AL
1404 depends on ((ARCH_MSM7X30 || MACH_MSM8X60_FUSN_FFA || MACH_TYPE_MSM8X60_FUSION) && HAS_WAKELOCK)
1405 default y
1406 tristate "SDIO-Abstraction-Layer"
1407 help
1408 Support MSM<->MDM Communication over SDIO bus.
1409 MDM SDIO-Client should have pipes support.
1410
1411config MSM_SDIO_DMUX
1412 bool "SDIO Data Mux Driver"
1413 depends on MSM_SDIO_AL
1414 default n
1415 help
1416 Support Muxed Data Channels over SDIO interface.
1417
1418config MSM_BAM_DMUX
1419 bool "BAM Data Mux Driver"
1420 depends on SPS
1421 default n
1422 help
1423 Support Muxed Data Channels over BAM interface.
1424 BAM has a limited number of pipes. This driver
1425 provides a means to support more logical channels
1426 via muxing than BAM could without muxing.
1427
1428config MSM_N_WAY_SMD
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001429 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001430 default y
1431 bool "MSM N-WAY SMD support"
1432 help
1433 Supports APPS-QDSP SMD communication along with
1434 normal APPS-MODEM SMD communication.
1435
1436config MSM_N_WAY_SMSM
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001437 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001438 default y
1439 bool "MSM N-WAY SMSM support"
1440 help
1441 Supports APPS-QDSP SMSM communication along with
1442 normal APPS-MODEM SMSM communication.
1443
1444config MSM_RESET_MODEM
1445 tristate "Reset Modem Driver"
1446 depends on MSM_SMD
1447 default m
1448 help
1449 Allows the user to reset the modem through a device node.
1450
1451config MSM_SMD_LOGGING
1452 depends on MSM_SMD
1453 default y
1454 bool "MSM Shared Memory Logger"
1455 help
1456 This option exposes the shared memory logger at /dev/smem_log
1457 and a debugfs node named smem_log.
1458
1459 If in doubt, say yes.
1460
Karthikeyan Ramasubramaniane1f4f732011-08-08 13:34:47 -06001461config MSM_IPC_LOGGING
1462 bool "MSM Debug Logging for IPC Drivers"
1463 help
1464 This option allows the debug logging for IPC Drivers.
1465
1466 If in doubt, say no.
1467
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001468config MSM_SMD_NMEA
1469 bool "NMEA GPS Driver"
1470 depends on MSM_SMD
1471 default y
1472 help
1473 Enable this to support the NMEA GPS device.
1474
1475 If in doubt, say yes.
1476
1477config MSM_SDIO_TTY
1478 bool "SDIO TTY Driver"
1479 depends on MSM_SDIO_AL
1480 default n
1481 help
1482 Provides a TTY driver SDIO TTY
1483 This driver can be used by user space
1484 applications for passing data through the
1485 SDIO interface.
1486
1487config MSM_SMD_TTY
1488 bool "SMD TTY Driver"
1489 depends on MSM_SMD
1490 default y
1491 help
1492 Provides TTY interfaces to interact with the modem.
1493
1494 If in doubt, say yes.
1495
1496config MSM_SMD_QMI
1497 bool "SMD QMI Driver"
1498 depends on MSM_SMD
1499 default y
1500 help
1501 Manages network data connections.
1502
1503 If in doubt, say yes.
1504
1505config MSM_SMD_PKT
1506 bool "SMD Packet Driver"
1507 depends on MSM_SMD
1508 default y
1509 help
1510 Provides a binary SMD non-muxed packet port interface.
1511
1512 If in doubt, say yes.
1513
1514config MSM_SDIO_CMUX
1515 bool "SDIO CMUX Driver"
1516 depends on MSM_SDIO_AL
1517 default n
1518 help
1519 Provides a Muxed port interface over SDIO QMI
1520
1521config MSM_DSPS
1522 bool "Sensors DSPS driver"
1523 depends on (MSM_PIL && (ARCH_MSM8X60 || ARCH_MSM8960))
1524 default n
1525 help
1526 Provides user-space interface to the sensors manager
1527 to turn on/off the Sensors Processor system clocks.
1528 It is the DSPS responsibility to turn on/off the sensors
1529 themself.
1530 The number of clocks and their name may vary between targets.
1531 It also triggers the PIL to load the DSPS firmware.
1532
1533config MSM_SDIO_CTL
1534 bool "SDIO CTL Driver"
1535 depends on MSM_SDIO_CMUX
1536 default n
1537 help
1538 Provides a binary SDIO control port interface.
1539
1540config MSM_ONCRPCROUTER
1541 depends on MSM_SMD
1542 default n
1543 bool "MSM ONCRPC router support"
1544 help
1545 Support for the MSM ONCRPC router for communication between
1546 the ARM9 and ARM11
1547
1548config MSM_IPC_ROUTER
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001549 depends on NET
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001550 default n
1551 bool "MSM IPC Router support"
1552 help
1553 Support for the MSM IPC Router for communication between
1554 the APPs and the MODEM
1555
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001556config MSM_IPC_ROUTER_SMD_XPRT
1557 depends on MSM_SMD
1558 depends on MSM_IPC_ROUTER
1559 default n
1560 bool "MSM SMD XPRT Layer"
1561 help
1562 SMD Transport Layer for IPC Router
1563
Karthikeyan Ramasubramanian5b502d3642012-09-23 22:23:36 -06001564config MSM_IPC_ROUTER_SECURITY
1565 depends on MSM_IPC_ROUTER
1566 bool "MSM IPC Router Security support"
1567 help
1568 This feature of IPC Router will enforce security rules
1569 configured by a security script from the user-space. IPC Router
1570 once configured with the security rules will ensure that the
1571 sender of the message to a service belongs to the relevant
1572 Linux group as configured by the security script.
1573
Karthikeyan Ramasubramanianfec77ff2012-10-26 20:03:26 -06001574config MSM_QMI_INTERFACE
1575 depends on MSM_IPC_ROUTER
1576 depends on QMI_ENCDEC
1577 default n
1578 bool "MSM QMI Interface Library"
1579 help
1580 Library to send and receive QMI messages over IPC Router.
1581 This library provides interface functions to the kernel drivers
1582 to perform QMI message marshaling and transport them over IPC
1583 Router.
1584
Karthikeyan Ramasubramaniana9859e82012-07-12 13:10:42 -06001585config MSM_TEST_QMI_CLIENT
1586 depends on MSM_QMI_INTERFACE
1587 bool "MSM TEST QMI CLIENT"
1588 help
1589 The sample QMI client provides a test code for QMI usage. The
1590 test_service client driver uses QMI interface library to send
1591 and receive QMI messages over IPC Router. The test code sends
1592 a synchronous QMI request to the test_service and handles the
1593 QMI responses.
1594
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001595config MSM_ONCRPCROUTER_DEBUG
1596 depends on MSM_ONCRPCROUTER
1597 default y
1598 bool "MSM debug ONCRPC router support"
1599 help
1600 Support for debugging the ONCRPC router for communication
1601 between the ARM9 and ARM11
1602
1603config MSM_RPC_LOOPBACK_XPRT
1604 depends on MSM_ONCRPCROUTER
1605 default n
1606 bool "MSM RPC local routing support"
1607 help
1608 Support for routing RPC messages between APPS clients
1609 and APPS servers. Helps in testing APPS RPC framework.
1610
1611config MSM_RPCSERVER_TIME_REMOTE
1612 depends on MSM_ONCRPCROUTER && RTC_HCTOSYS
1613 default y
1614 bool "Time remote RPC server"
1615 help
1616 The time remote server receives notification of time bases and
1617 reports these events to registered callback functions.
1618
1619config MSM_RPCSERVER_WATCHDOG
1620 depends on MSM_ONCRPCROUTER
1621 default y
1622 bool "Watchdog RPC server"
1623 help
1624 The dog_keepalive server handles watchdog events.
1625
1626config MSM_RPC_WATCHDOG
1627 depends on MSM_ONCRPCROUTER
1628 default n
1629 bool "Watchdog RPC client"
1630 help
1631 The dog_keepalive client module.
1632
1633config MSM_RPC_PING
1634 depends on MSM_ONCRPCROUTER && DEBUG_FS
1635 default m
1636 bool "MSM rpc ping"
1637 help
1638 Implements MSM rpc ping test module.
1639
1640config MSM_RPC_PROC_COMM_TEST
1641 depends on DEBUG_FS && MSM_PROC_COMM
1642 default m
1643 bool "MSM rpc proc comm test"
1644 help
1645 Implements MSM rpc proc comm test module.
1646
1647config MSM_RPC_OEM_RAPI
1648 depends on MSM_ONCRPCROUTER
1649 default m
1650 bool "MSM oem rapi"
1651 help
1652 Implements MSM oem rapi client module.
1653
1654config MSM_RPCSERVER_HANDSET
1655 depends on MSM_ONCRPCROUTER
1656 default y
1657 bool "Handset events RPC server"
1658 help
1659 Support for receiving handset events like headset detect,
1660 headset switch and clamshell state.
1661
1662config MSM_RMT_STORAGE_CLIENT
1663 depends on (ARCH_MSM && MSM_ONCRPCROUTER)
1664 default n
1665 bool "Remote Storage RPC client"
1666 help
1667 Provide RPC mechanism for remote processors to access storage
1668 device on apps processor.
1669
1670config MSM_RMT_STORAGE_CLIENT_STATS
1671 depends on (MSM_RMT_STORAGE_CLIENT && DEBUG_FS)
1672 default n
1673 bool "Remote storage RPC client performance statistics"
1674 help
1675 Collects performance statistics and shows this information
1676 through a debugfs file rmt_storage_stats.
1677
1678config MSM_SDIO_SMEM
1679 depends on MSM_SDIO_AL
1680 default n
1681 bool "SDIO SMEM for remote storage"
1682 help
1683 Copies data from remote MDM9K memory to local MSM8x60
1684 memory. Used by remote storage client to shadow
1685 MDM9K filesystem.
1686
1687config MSM_DALRPC
1688 bool "DAL RPC support"
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -08001689 default n
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001690 help
1691 Supports RPC calls to DAL devices on remote processor cores.
1692
1693config MSM_DALRPC_TEST
1694 tristate "DAL RPC test module"
1695 depends on (MSM_DALRPC && DEBUG_FS)
1696 default m
1697 help
1698 Exercises DAL RPC calls to QDSP6.
1699
1700if CPU_FREQ_MSM
1701
1702config MSM_CPU_FREQ_SET_MIN_MAX
1703 bool "Set Min/Max CPU frequencies."
1704 default n
1705 help
1706 Allow setting min and max CPU frequencies. Sysfs can be used
1707 to override these values.
1708
1709config MSM_CPU_FREQ_MAX
1710 int "Max CPU Frequency"
1711 depends on MSM_CPU_FREQ_SET_MIN_MAX
1712 default 384000
1713
1714config MSM_CPU_FREQ_MIN
1715 int "Min CPU Frequency"
1716 depends on MSM_CPU_FREQ_SET_MIN_MAX
1717 default 245760
1718
1719endif # CPU_FREQ_MSM
1720
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001721config MSM_AVS_HW
1722 bool "Enable Adaptive Voltage Scaling (AVS)"
1723 default n
1724 help
1725 Enable AVS hardware to fine tune voltage at each frequency. The
1726 AVS hardware blocks associated with each Qualcomm ARMv7 cores can
1727 fine tune the voltages based on the feedback from the ring
1728 oscillators.
1729
1730config MSM_HW3D
1731 tristate "MSM Hardware 3D Register Driver"
1732 depends on ANDROID_PMEM
1733 default y
1734 help
1735 Provides access to registers needed by the userspace OpenGL|ES
1736 library.
1737
1738config MSM_ADSP
1739 depends on (ARCH_MSM7X01A || ARCH_MSM7X25 || ARCH_MSM7X27)
1740 tristate "MSM ADSP driver"
1741 depends on ANDROID_PMEM
1742 default y
1743 help
1744 Provides access to registers needed by the userspace aDSP library.
1745
1746config ADSP_RPC_VER
1747 hex
1748 default 0x30002 if (ARCH_MSM7X27 || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2009))
1749 default 0x30001 if (ARCH_MSM7X01A || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2008))
1750 depends on MSM_ADSP
1751 help
1752 Select proper ADSP RPC version
1753choice
1754 prompt "ADSP RPC version"
1755
1756 default AMSS_7X25_VERSION_2009
1757
1758 config AMSS_7X25_VERSION_2009
1759 bool "2.0.09"
1760
1761 config AMSS_7X25_VERSION_2008
1762 bool "2.0.08"
1763endchoice
1764
1765config MSM7KV2_AUDIO
1766 bool "MSM7K v2 audio"
1767 depends on (ARCH_MSM7X30 && ANDROID_PMEM)
1768 default y
1769 help
1770 Enables QDSP5V2-based audio drivers for audio playbacks and
1771 voice call.
1772
1773config MSM_ADSP_REPORT_EVENTS
1774 bool "Report modem events from the DSP"
1775 default y
1776 depends on (MSM_ADSP || MSM7KV2_AUDIO)
1777 help
1778 Normally, only messages from the aDSP are reported to userspace.
1779 With this option, we report events from the aDSP as well.
1780
1781config MSM_QDSP6
1782 tristate "QDSP6 support"
1783 depends on ARCH_QSD8X50 && ANDROID_PMEM
1784 default y
1785 help
1786 Enable support for qdsp6. This provides audio and video functionality.
1787
1788config MSM8X60_AUDIO
1789 tristate "MSM8X60 audio support"
1790 depends on ARCH_MSM8X60 && ANDROID_PMEM
1791 default y
1792 help
1793 Enable support for qdsp6v2. This provides audio functionality.
1794
1795config MSM8X60_FTM_AUDIO_DEVICES
1796 bool "MSM8X60 audio factory test mode support"
1797 depends on MSM8X60_AUDIO
1798 help
1799 Enable support audio factory test mode devices. This is used
1800 in a production line environment.
1801
Ben Romberger45b351c2011-07-20 22:37:27 -07001802config RTAC
1803 bool "MSM8K real-time audio calibration support"
1804 default y
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001805 help
Ben Romberger45b351c2011-07-20 22:37:27 -07001806 Enable support for rtac. This enables calibration during
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001807 audio operation
1808
1809config MSM7X27A_AUDIO
1810 bool "MSM7X27A audio support"
1811 depends on ARCH_MSM7X27A && MSM_ADSP
1812 default n
1813 help
1814 Enable support for 7x27a. This provides audio functionality.
1815
Justin Pauporea6cd2092011-06-22 16:19:45 -07001816config MSM_PROC_COMM_REGULATOR
Gregory Bean1963a2a2010-08-28 10:05:44 -07001817 bool
Justin Pauporea6cd2092011-06-22 16:19:45 -07001818 depends on MSM_PROC_COMM && REGULATOR
1819 help
1820 Enable regulator framework support for regulators managed by PMLIB
1821 on the modem, and controlled through proccomm calls.
1822
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001823config MSM_VREG_SWITCH_INVERTED
1824 bool "Reverse vreg switch polarity"
1825 default n
1826 help
1827 Reverses the enable and disable for vreg switch.
1828
1829config MSM_DMA_TEST
1830 tristate "MSM DMA test module"
1831 default m
1832 help
1833 Intended to be compiled as a module. Provides a device node
1834 and ioctls for testing the MSM dma system.
1835
1836config WIFI_CONTROL_FUNC
1837 bool "Enable WiFi control function abstraction"
1838 help
1839 Enables Power/Reset/Carddetect function abstraction
1840
1841config WIFI_MEM_PREALLOC
1842 depends on WIFI_CONTROL_FUNC
1843 bool "Preallocate memory for WiFi buffers"
1844 help
1845 Preallocates memory buffers for WiFi driver
1846
1847config QSD_AUDIO
1848 bool "QSD audio"
1849 depends on ARCH_MSM_SCORPION && MSM_DALRPC && ANDROID_PMEM && !MSM_SMP
1850 default y
1851 help
1852 Provides PCM, MP3, and AAC audio playback.
1853
1854config AUDIO_AAC_PLUS
1855 depends on (MSM_ADSP || QSD_AUDIO || MSM7KV2_AUDIO)
1856 bool "AAC+ Audio"
1857 default y
1858 help
1859 Provides AAC+ decoding
1860
1861config AUDIO_ENHANCED_AAC_PLUS
1862 depends on AUDIO_AAC_PLUS
1863 bool "Enhanced AAC+ Audio"
1864 default y
1865 help
1866 Provides Enhanced AAC+ decoding
1867
1868config SURF_FFA_GPIO_KEYPAD
1869 bool "MSM SURF/FFA GPIO keypad"
1870 depends on INPUT_GPIO = "y"
1871 default y
1872 help
1873 Select if the GPIO keypad is attached.
1874
1875config MSM_SLEEP_TIME_OVERRIDE
1876 bool "Allow overriding suspend/sleep time with PM module parameter"
1877 default y
1878 help
1879 Enable the module parameter sleep_time_override. Specified
1880 in units of seconds, it overwrites the normal sleep time of
1881 suspend. The feature is required for automated power management
1882 testing.
1883
1884config MSM_MEMORY_LOW_POWER_MODE
1885 bool "Control the low power modes of memory"
1886 default n
1887 help
1888 The application processor controls whether memory should enter
1889 which low power mode.
1890
1891choice
1892 prompt "Default Memory Low Power Mode during Idle"
1893 depends on MSM_MEMORY_LOW_POWER_MODE
1894 default MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1895 help
1896 Selects the default low power mode of the memory during idle
1897 sleep.
1898
1899 config MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1900 bool "Memory active"
1901
1902 config MSM_MEMORY_LOW_POWER_MODE_IDLE_RETENTION
1903 bool "Memory in retention"
1904
1905 config MSM_MEMORY_LOW_POWER_MODE_IDLE_DEEP_POWER_DOWN
1906 bool "Memory in deep power down"
1907endchoice
1908
1909choice
1910 prompt "Default Memory Low Power Mode during Suspend"
1911 depends on MSM_MEMORY_LOW_POWER_MODE
1912 default MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1913 help
1914 Selects the default low power mode of the memory during suspend
1915 sleep.
1916
1917 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1918 bool "Memory active"
1919
1920 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_RETENTION
1921 bool "Memory in retention"
1922
1923 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_DEEP_POWER_DOWN
1924 bool "Memory in deep power down"
1925endchoice
1926
1927choice
1928 prompt "Power management timeout action"
1929 default MSM_PM_TIMEOUT_HALT
1930 help
1931 Selects the Application Processor's action when Power Management
1932 times out waiting for Modem's handshake.
1933
1934 config MSM_PM_TIMEOUT_HALT
1935 bool "Halt the Application Processor"
1936
1937 config MSM_PM_TIMEOUT_RESET_MODEM
1938 bool "Reset the Modem Processor"
1939
1940 config MSM_PM_TIMEOUT_RESET_CHIP
1941 bool "Reset the entire chip"
1942endchoice
1943
1944config MSM_IDLE_WAIT_ON_MODEM
1945 int "Wait for Modem to become ready for idle power collapse"
1946 default 0
1947 help
1948 If Modem is not ready to handle Application Processor's request
1949 for idle power collapse, wait the number of microseconds in case
1950 Modem becomes ready soon.
1951
Matt Wagantall9274df92011-12-15 11:11:05 -08001952config MSM_RPM_REGULATOR
1953 bool "RPM regulator driver"
Matt Wagantall32dc71e2012-01-04 11:13:11 -08001954 depends on MSM_RPM && REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -08001955 help
1956 Compile in support for the RPM regulator driver, used for setting
1957 voltages and other parameters of the various power rails supplied
1958 by some Qualcomm PMICs.
1959
David Collinsc7642322012-04-04 10:19:12 -07001960config MSM_RPM_REGULATOR_SMD
1961 bool "SMD RPM regulator driver"
1962 depends on REGULATOR
1963 depends on OF
1964 depends on MSM_RPM_SMD
1965 help
1966 Compile in support for the SMD RPM regulator driver which is used for
1967 setting voltages and other parameters of the various power rails
1968 supplied by some Qualcomm PMICs. The SMD RPM regulator driver should
1969 be used on systems which contain an RPM which communicates with the
1970 application processor over SMD.
1971
Rohit Vaswani5fd759e2012-11-07 07:05:08 -08001972config MSM_SMCMOD
1973 tristate "Secure Monitor Call (SMC) Module"
1974 default n
1975 depends on (ARCH_FSM9XXX && ION && ION_MSM && MSM_SCM)
1976 help
1977 Enable support for smcmod driver. This driver provides a mechanism
1978 to execute the Secure Monitor Call (SMC) to switch from non-secure
1979 to secure execution in the fsm9xxx targets. This module utilizes Ion
1980 for buffer management.
1981
Stephen Boyd01710582012-07-09 13:40:05 -07001982config MSM_SUBSYSTEM_RESTART
1983 bool "MSM Subsystem Restart"
1984 help
1985 This option enables the MSM subsystem restart framework.
1986
1987 The MSM subsystem restart framework provides support to boot,
1988 shutdown, and restart subsystems with a reference counted API.
1989 It also notifies userspace of transitions between these states via
1990 sysfs.
1991
1992config MSM_SYSMON_COMM
1993 bool "MSM System Monitor communication support"
1994 depends on MSM_SMD && MSM_SUBSYSTEM_RESTART
1995 help
1996 This option adds support for MSM System Monitor library, which
1997 provides an API that may be used for notifying subsystems within
1998 the SoC about other subsystems' power-up/down state-changes.
1999
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002000config MSM_PIL
2001 bool "Peripheral image loading"
2002 select FW_LOADER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002003 default n
2004 help
2005 Some peripherals need to be loaded into memory before they can be
2006 brought out of reset.
2007
2008 Say yes to support these devices.
2009
Stephen Boyd4eb885b2011-09-29 01:16:03 -07002010config MSM_PIL_MODEM
2011 tristate "Modem (ARM11) Boot Support"
Stephen Boyd3ac20732012-05-03 18:46:08 -07002012 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd4eb885b2011-09-29 01:16:03 -07002013 help
2014 Support for booting and shutting down ARM11 Modem processors.
2015
Stephen Boyd3acc9e42011-09-28 16:46:40 -07002016config MSM_PIL_QDSP6V3
2017 tristate "QDSP6v3 (Hexagon) Boot Support"
Stephen Boyd2e19d932012-05-09 17:36:04 -07002018 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd3acc9e42011-09-28 16:46:40 -07002019 help
2020 Support for booting and shutting down QDSP6v3 processors (hexagon).
2021 The QDSP6 is a low power DSP used in audio software applications.
2022
Stephen Boydbdb53f32012-06-05 18:39:47 -07002023config MSM_PIL_LPASS_QDSP6V4
2024 tristate "LPASS QDSP6v4 (Hexagon) Boot Support"
Stephen Boyda1cf76b2012-06-13 12:05:35 -07002025 depends on MSM_SUBSYSTEM_RESTART
Stephen Boydeb819882011-08-29 14:46:30 -07002026 help
Stephen Boydbdb53f32012-06-05 18:39:47 -07002027 Support for booting and shutting down QDSP6v4 processors (hexagon)
2028 in low power audio subsystems. If you would like to record or
2029 play audio then say Y here.
2030
2031 If unsure, say N.
2032
2033config MSM_PIL_MODEM_QDSP6V4
2034 tristate "Modem QDSP6v4 (Hexagon) Boot Support"
Stephen Boyd2efa9962012-06-12 14:20:12 -07002035 depends on MSM_SUBSYSTEM_RESTART
Stephen Boydbdb53f32012-06-05 18:39:47 -07002036 help
2037 Support for booting and shutting down QDSP6v4 processors (hexagon)
2038 in modem subsystems. If you would like to make or receive phone
2039 calls then say Y here.
2040
2041 If unsure, say N.
Stephen Boydeb819882011-08-29 14:46:30 -07002042
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07002043config MSM_PIL_LPASS_QDSP6V5
Stephen Boyd633eb622012-06-13 12:05:35 -07002044 tristate "LPASS QDSP6v5 (Hexagon) Boot Support"
2045 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
2046 help
2047 Support for booting and shutting down QDSP6v5 (Hexagon) processors
2048 in low power audio subsystems. This driver also monitors the ADSP
2049 SMSM status bits and the ADSP's watchdog interrupt and restarts the
2050 ADSP if the processor encounters a fatal error.
Matt Wagantall4e2599e2012-03-21 22:31:35 -07002051
2052config MSM_PIL_MSS_QDSP6V5
Stephen Boyd3da4fd02012-07-06 10:00:12 -07002053 tristate "MSS QDSP6v5 (Hexagon) Boot Support"
2054 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Matt Wagantalle6e00d52012-03-08 17:39:07 -08002055 help
Stephen Boyd3da4fd02012-07-06 10:00:12 -07002056 Support for booting and shutting down QDSP6v5 (Hexagon) processors
2057 in modem subsystems. If you would like to make or receive phone
2058 calls then say Y here.
2059
2060 If unsure, say N.
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07002061
Stephen Boyd322a9922011-09-20 01:05:54 -07002062config MSM_PIL_RIVA
2063 tristate "RIVA (WCNSS) Boot Support"
Stephen Boydfdec00d2012-05-10 17:04:49 -07002064 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd322a9922011-09-20 01:05:54 -07002065 help
2066 Support for booting and shutting down the RIVA processor (WCNSS).
2067 Riva is the wireless subsystem processor used in bluetooth, wireless
2068 LAN, and FM software applications.
2069
Stephen Boydd89eebe2011-09-28 23:28:11 -07002070config MSM_PIL_TZAPPS
2071 tristate "TZApps Boot Support"
Stephen Boyd046013f2012-06-28 20:24:17 -07002072 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boydd89eebe2011-09-28 23:28:11 -07002073 help
2074 Support for booting and shutting down TZApps.
2075
2076 TZApps is an image that runs in the secure processor state. It is
2077 used to decrypt data and perform secure operations on the behalf of
2078 the kernel.
2079
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07002080config MSM_PIL_DSPS
2081 tristate "DSPS Boot Support"
Stephen Boydf169b4b2012-05-10 17:55:55 -07002082 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07002083 help
2084 Support for booting and shutting down ARM7 DSPS processors.
2085
2086 DSPS is a sensors offloading processor used for applications such
2087 as rotation detection, temperature, etc.
2088
Stephen Boyd7b973de2012-03-09 12:26:16 -08002089config MSM_PIL_VIDC
2090 tristate "Video Core Secure Boot Support"
Stephen Boyd046013f2012-06-28 20:24:17 -07002091 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Stephen Boyd7b973de2012-03-09 12:26:16 -08002092 help
2093 Support for authenticating the video core image.
2094
Tianyi Gou828798d2012-05-02 21:12:38 -07002095config MSM_PIL_VENUS
2096 tristate "VENUS (Video) Boot Support"
Stephen Boyd046013f2012-06-28 20:24:17 -07002097 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Tianyi Gou828798d2012-05-02 21:12:38 -07002098 help
2099 Support for booting and shutting down the VENUS processor (Video).
2100 Venus is the Video subsystem processor used for video codecs.
2101
Matt Wagantall292aace2012-01-26 19:12:34 -08002102config MSM_PIL_GSS
Stephen Boydd86214b2012-05-10 15:26:35 -07002103 tristate "GSS (Cortex A5) Boot Support"
2104 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Matt Wagantall292aace2012-01-26 19:12:34 -08002105 help
2106 Support for booting and shutting down Cortex A5 processors which run
2107 GPS subsystem firmware.
2108
Tianyi Gouc1e049f82011-11-23 14:20:16 -08002109config MSM_PIL_PRONTO
2110 tristate "PRONTO (WCNSS) Boot Support"
Stephen Boyd581fe852012-06-13 12:05:35 -07002111 depends on MSM_PIL && MSM_SUBSYSTEM_RESTART
Tianyi Gouc1e049f82011-11-23 14:20:16 -08002112 help
2113 Support for booting and shutting down the PRONTO processor (WCNSS).
2114 PRONTO is the wireless subsystem processor used in bluetooth, wireless
2115 LAN, and FM software applications.
2116
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002117config MSM_SCM
2118 bool "Secure Channel Manager (SCM) support"
2119 default n
2120
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002121config SCORPION_Uni_45nm_BUG
2122 bool "Scorpion Uni 45nm(SC45U): Workaround for ICIMVAU and BPIMVA"
2123 depends on ARCH_MSM7X30 || (ARCH_QSD8X50 && MSM_SOC_REV_A)
2124 default y
2125 help
2126 Invalidating the Instruction Cache by Modified Virtual Address to PoU and
2127 invalidating the Branch Predictor Array by Modified Virtual Address can
2128 create invalid entries in the TLB with the wrong ASID values on Scorpion
2129 Uniprocessor 45nm (SC45U) cores. This option enables the recommended software
2130 workaround for Scorpion Uniprocessor 45nm cores.
2131
2132 This bug is not applicable to any ScorpionMP or Scorpion Uni 65nm(SC65U) cores.
2133
Harini Jayaramanef7805f2011-09-28 12:45:31 -06002134config MSM_BUSPM_DEV
2135 tristate "MSM Bus Performance Monitor Kernel Module"
Gagan Mac0d5d49e2012-08-28 19:41:37 -06002136 depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
Harini Jayaramanef7805f2011-09-28 12:45:31 -06002137 default m
2138 help
2139 This kernel module is used to mmap() hardware registers for the
2140 performance monitors, counters, etc. The module can also be used to
2141 allocate physical memory which is used by bus performance hardware to
2142 dump performance data.
2143
Mona Hossain11c03ac2011-10-26 12:42:10 -07002144config MSM_TZ_LOG
2145 tristate "MSM Trust Zone (TZ) Log Driver"
2146 depends on DEBUG_FS
2147 help
2148 This option enables a driver with a debugfs interface for messages
2149 produced by the Secure code (Trust zone). These messages provide
2150 diagnostic information about TZ operation.
2151
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002152config MSM_RPM_LOG
2153 tristate "MSM Resource Power Manager Log Driver"
2154 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002155 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002156 default n
2157 help
2158 This option enables a driver which can read from a circular buffer
2159 of messages produced by the RPM. These messages provide diagnostic
2160 information about RPM operation. The driver outputs the messages
2161 via a debugfs node.
2162
2163config MSM_RPM_STATS_LOG
2164 tristate "MSM Resource Power Manager Stat Driver"
2165 depends on DEBUG_FS
Priyanka Mathur1af9d4b2012-10-30 14:55:44 -07002166 depends on MSM_RPM || MSM_RPM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002167 default n
2168 help
2169 This option enables a driver which reads RPM messages from a shared
2170 memory location. These messages provide statistical information about
2171 the low power modes that RPM enters. The drivers outputs the message
2172 via a debugfs node.
2173
Girish Mahadevan898c56d2012-06-05 16:09:19 -06002174config MSM_RPM_RBCPR_STATS_LOG
2175 tristate "MSM Resource Power Manager RPBCPR Stat Driver"
2176 depends on DEBUG_FS
2177 depends on MSM_RPM
2178 help
2179 This option enables a driver which reads RPM messages from a shared
2180 memory location. These messages provide statistical information about
2181 RBCPR (Rapid Bridge Core Power Reduction) information . The drivers
2182 outputs the message via a debugfs node.
2183
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002184config MSM_DIRECT_SCLK_ACCESS
2185 bool "Direct access to the SCLK timer"
2186 default n
2187
2188config IOMMU_API
2189 bool
Gregory Bean1963a2a2010-08-28 10:05:44 -07002190
Brian Swetland9e73c842007-11-26 04:12:13 -08002191config MSM_GPIOMUX
2192 bool
2193
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002194config MSM_SECURE_IO
Brian Swetland9e73c842007-11-26 04:12:13 -08002195 bool
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002196
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002197config MSM_NATIVE_RESTART
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002198 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002199
Taniya Dascd1d0232012-07-03 17:50:47 +05302200config MSM_MODEM_RESTART
2201 bool
2202
Matt Wagantall88b86312012-01-31 16:53:03 -08002203config MSM_PM2
2204 depends on PM
2205 bool
2206
2207config MSM_PM8X60
2208 depends on PM
2209 bool
2210
Girish Mahadevan388c3082012-09-10 15:30:36 -06002211config MSM_EVENT_TIMER
2212 bool "Event timer"
2213 help
2214 This option enables a modules that manages a list of event timers that
2215 need to be monitored by the PM. The enables the PM code to monitor
2216 events that require the core to be awake and ready to handle the
2217 event.
2218
Matt Wagantall88b86312012-01-31 16:53:03 -08002219config MSM_NOPM
2220 default y if !PM
2221 bool
2222
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002223config MSM_BUS_SCALING
2224 bool "Bus scaling driver"
2225 default n
2226
Gagan Mac85c70492011-06-10 16:07:47 -06002227config MSM_BUS_RPM_MULTI_TIER_ENABLED
2228 bool "RPM Multi-tiering Configuration"
2229 depends on MSM_BUS_SCALING
2230
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002231config MSM_WATCHDOG
2232 bool "MSM Watchdog Support"
Rohit Vaswanie897f842012-03-19 14:19:34 -07002233 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_FSM9XXX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002234 help
2235 This enables the watchdog as is present on 8x60. Currently we use
2236 core 0's watchdog, and reset the entire SoC if it times out. It does
2237 not run during the bootup process, so it will not catch any early
2238 lockups.
2239
Hanumant Singhd1f01022012-07-05 14:21:53 -07002240config MSM_WATCHDOG_V2
2241 bool "MSM Watchdog Support"
2242 help
2243 This enables the watchdog module. It causes kernel panic if the
2244 watchdog times out. It allows for detection of cpu hangs and
2245 deadlocks. It does not run during the bootup process, so it will
2246 not catch any early lockups.
2247
Hanumant Singh5e2541c2012-07-31 14:41:14 -07002248config MSM_MEMORY_DUMP
2249 bool "MSM Memory Dump Support"
2250 help
2251 This enables memory dump feature. It allows various client
2252 subsystems to register respective dump regions. At the time
2253 of deadlocks or cpu hangs these dump regions are captured to
2254 give a snapshot of the system at the time of the crash.
2255
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002256config MSM_DLOAD_MODE
2257 bool "Enable download mode on crashes"
Abhimanyu Kapurdd7f2692012-10-22 13:43:52 -07002258 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_MSM8974 || ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002259 default n
2260 help
2261 This makes the SoC enter download mode when it resets
2262 due to a kernel panic. Note that this doesn't by itself
2263 make the kernel reboot on a kernel panic - that must be
2264 enabled via another mechanism.
2265
Pratik Patel17f3b822011-11-21 12:41:47 -08002266config MSM_JTAG
Pratik Patel2963de42012-05-17 12:43:40 -07002267 bool "JTAG and kernel debug and trace support across power collapse"
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002268 help
Pratik Patel2963de42012-05-17 12:43:40 -07002269 Enables support for kernel debugging (specifically breakpoints) and
2270 processor tracing across power collapse both for JTag and OS hosted
2271 software running on the target. Enabling this will ensure debug
2272 and ETM registers are saved and restored across power collapse.
2273
2274 For production builds, you should probably say 'N' here to avoid
2275 potential power, performance and memory penalty.
Pratik Patel7831c082011-06-08 21:44:37 -07002276
Pushkar Joshi64cae782012-12-15 18:59:03 -08002277config MSM_JTAG_MM
2278 bool "ETM trace and debug support across power collapse using memory mapped access"
2279 help
2280 Enables support for kernel debugging (specifically breakpoints) and
2281 processor tracing using ETM across power collapse both for JTag and
2282 OS hosted software running on the target. Enabling this will ensure
2283 debug and ETM registers are saved and restored across power collapse.
2284 Needed on targets on which cp14 access to debug and ETM registers is
2285 not permitted and so memory mapped access is necessary.
2286
2287 For production builds, you should probably say 'N' here to avoid
2288 potential power, performance and memory penalty.
2289
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002290config MSM_ETM
2291 tristate "Enable MSM ETM and ETB"
Pratik Patel17f3b822011-11-21 12:41:47 -08002292 depends on ARCH_MSM8X60
2293 select MSM_JTAG
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002294 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002295 Enables embedded trace collection on MSM8660
Pratik Patel7831c082011-06-08 21:44:37 -07002296
Lynus Vazdde09ee2012-01-05 13:28:22 +05302297config MSM_SLEEP_STATS_DEVICE
2298 bool "Enable exporting of MSM sleep device stats to userspace"
2299
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302300config MSM_RUN_QUEUE_STATS
2301 bool "Enable collection and exporting of MSM Run Queue stats to userspace"
Subbaraman Narayanamurthy0b148fc2012-11-28 12:14:12 -08002302 default n
Krishna Vankae2922052012-03-02 09:59:12 +05302303 help
2304 This option enalbes statistics collection on Run Queue. A daemon
2305 in user mode, called MPDecision will be using this data to decide
2306 on when to switch off/on the other cores.
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302307
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002308config MSM_STANDALONE_POWER_COLLAPSE
2309 bool "Enable standalone power collapse"
2310 default n
2311
2312config MSM_GSBI9_UART
2313 bool "Enable GSBI9 UART device"
2314 default n
2315 help
2316 This enables GSBI9 configured into UART.
2317
2318config MSM_SHARED_GPIO_FOR_UART2DM
2319 bool "Use shared GPIOs into UART mode"
2320 depends on (ARCH_MSM7X27A && !MMC_MSM_SDC3_8_BIT_SUPPORT && !MMC_MSM_SDC4_SUPPORT)
2321 help
2322 This option configures GPIO muxed with SDC4/MMC3
2323 8-bit mode into UART mode. It is used for serial
2324 console on UART2DM. Say Y if you want to have
2325 serial console on UART2DM.
2326
2327config MSM_SHOW_RESUME_IRQ
2328 bool "Enable logging of interrupts that could have caused resume"
Bryan Huntsmancc147032011-11-23 13:03:56 -08002329 depends on (ARM_GIC || PMIC8058)
2330 default y if PMIC8058
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002331 default n
2332 help
2333 This option logs wake up interrupts that have triggered just before
2334 the resume loop unrolls. Say Y if you want to debug why the system
2335 resumed.
2336
2337config BT_MSM_PINTEST
2338 tristate "MSM Bluetooth Pin Connectivity Test"
2339 depends on ((ARCH_MSM8X60 || ARCH_MSM7X27A) && DEBUG_FS)
2340 default n
2341 help
2342 Bluetooth MSM Pin Connectivity test module.
2343 This driver provides support for verifying the MSM to BT pin
2344 connectivity.
2345
2346config MSM_FAKE_BATTERY
2347 depends on POWER_SUPPLY
2348 default n
2349 bool "MSM Fake Battery"
2350 help
2351 Enables MSM fake battery driver.
2352
2353config MSM_QDSP6_APR
2354 bool "Audio QDSP6 APR support"
2355 depends on MSM_SMD
2356 default n
2357 help
2358 Enable APR IPC protocol support between
2359 application processor and QDSP6. APR is
2360 used by audio driver to configure QDSP6's
2361 ASM, ADM and AFE.
2362
Joonwoo Park91d95462012-08-02 10:55:54 -07002363config MSM_QDSP6_APRV2
2364 bool "Audio QDSP6 APRv2 support"
2365 depends on MSM_SMD
2366 default n
2367 help
2368 Enable APRv2 IPC protocol support between
2369 application processor and QDSP6. APR is
2370 used by audio driver to configure QDSP6's
2371 ASM, ADM and AFE.
2372
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -07002373config MSM_QDSP6_CODECS
2374 bool "Audio Codecs on QDSP6 APR "
2375 depends on MSM_SMD
2376 default n
2377 help
2378 Enable Audio codecs with APR IPC protocol support between
2379 application processor and QDSP6. APR is
2380 used by audio driver to configure QDSP6's
2381 ASM, ADM and AFE.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002382
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002383config MSM_QDSP6V2_CODECS
2384 bool "Audio QDSP6V2 APR support"
2385 depends on MSM_SMD
2386 help
2387 Enable Audio codecs with APR IPC protocol support between
2388 application processor and QDSP6 for B-family. APR is
2389 used by audio driver to configure QDSP6's
2390 ASM, ADM and AFE.
2391
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002392config MSM_AUDIO_QDSP6
2393 bool "QDSP6 HW Audio support"
2394 select SND_SOC_MSM_QDSP6_INTF
2395 default n
2396 help
2397 Enable HW audio support in QDSP6.
2398 QDSP6 can support HW encoder & decoder and audio processing
2399
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002400config MSM_AUDIO_QDSP6V2
2401 bool "QDSP6V2 HW Audio support"
2402 select SND_SOC_MSM_QDSP6V2_INTF
2403 help
2404 Enable HW audio support in QDSP6V2.
2405 QDSP6V2 can support HW encoder & decoder and
2406 audio processing. It will enable support for
2407 AAC, AMRNB, AMRWB, EVRC, MP3, QCELP among
2408 others.
2409
Joonwoo Park4a14a552012-08-02 11:03:21 -07002410config MSM_ADSP_LOADER
2411 tristate "ADSP loader support"
2412 select SND_SOC_MSM_APRV2_INTF
2413 depends on MSM_AUDIO_QDSP6V2 && m
2414 help
2415 Enable ADSP image loader.
2416 The ADSP loader brings ADSP out of reset
2417 for the platforms that use APRv2.
2418 Say M if you want to enable this module.
2419
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +02002420config MSM_ULTRASOUND_A
2421 bool "QDSP6 HW Ultrasound support"
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002422 help
Baruch Eruchimovitch258b3472012-10-14 21:46:35 +02002423 Enable HW ultrasound support in QDSP6.
2424 QDSP6 can support HW encoder & decoder and
2425 ultrasound processing. It will enable
2426 ultrasound data paths between
2427 HW and services, calculating input events
2428 upon the ultrasound data.
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002429
Baruch Eruchimovitch8c3f7802013-01-05 22:48:04 +02002430config MSM_ULTRASOUND_B
2431 bool "QDSP6V2 HW Ultrasound support"
2432 help
2433 Enable HW Ultrasound support in QDSP6V2.
2434 QDSP6V2 can support HW encoder & decoder and
2435 ultrasound processing. It will enable
2436 ultrasound data paths between
2437 HW and services, calculating input events
2438 upon the ultrasound data.
2439
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002440config MSM_RPC_VIBRATOR
2441 bool "RPC based MSM Vibrator Support"
2442 depends on MSM_ONCRPCROUTER
2443 help
2444 Enable the vibrator support on MSM over RPC. The vibrator
2445 is connected on the PMIC. Say Y if you want to enable this
2446 feature.
2447
2448config PM8XXX_RPC_VIBRATOR
2449 bool "RPC based Vibrator on PM8xxx PMICs"
2450 depends on MSM_RPC_VIBRATOR
2451 help
2452 Enable the vibrator support on MSM over RPC. The vibrator
2453 is connected on the PM8XXX PMIC. Say Y if you want to enable
2454 this feature.
2455
2456config MSM_SPM_V1
2457 bool "Driver support for SPM Version 1"
2458 help
2459 Enables the support for Version 1 of the SPM driver. SPM hardware is
2460 used to manage the processor power during sleep. The driver allows
2461 configuring SPM to allow different power modes.
2462
2463config MSM_SPM_V2
2464 bool "Driver support for SPM Version 2"
2465 help
2466 Enables the support for Version 2 of the SPM driver. SPM hardware is
2467 used to manage the processor power during sleep. The driver allows
2468 configuring SPM to allow different power modes.
2469
2470config MSM_L2_SPM
2471 bool "SPM support for L2 cache"
2472 depends on MSM_SPM_V2
2473 help
2474 Enable SPM driver support for L2 cache. Some MSM chipsets allow
2475 control of L2 cache low power mode with a Subsystem Power manager.
2476 Enabling this driver allows configuring L2 SPM for low power modes
2477 on supported chipsets.
2478
Laura Abbott2d1760b2011-09-29 21:31:24 -07002479config MSM_MULTIMEDIA_USE_ION
2480 bool "Multimedia suport using Ion"
2481 depends on ION_MSM
2482 help
2483 Enable support for multimedia drivers using Ion for buffer management
2484 instead of pmem. Selecting this may also involve userspace
2485 dependencies as well.
2486
Naveen Ramaraj51f5e8b2012-04-09 15:58:40 -07002487config MSM_OCMEM
2488 bool "MSM On-Chip memory driver (OCMEM)"
2489 help
2490 Enable support for On-Chip Memory available on certain MSM chipsets.
2491 OCMEM is a low latency, high performance pool shared by subsystems.
2492
Naveen Ramaraj99b07562012-05-28 20:57:09 -07002493config MSM_OCMEM_LOCAL_POWER_CTRL
2494 bool "OCMEM Local Power Control"
2495 depends on MSM_OCMEM
2496 help
2497 Enable direct power management of the OCMEM core by the
2498 OCMEM driver. By default power management is delegated to
2499 the RPM. Selecting this option causes the OCMEM driver to
2500 directly handle the various macro power transitions.
2501
2502config MSM_OCMEM_DEBUG
2503 bool "OCMEM Debug Support"
2504 depends on MSM_OCMEM
2505 help
2506 Enable debug options for On-chip Memory (OCMEM) driver.
2507 Various debug options include memory, power and latency.
2508 Choosing one of these options allows debugging of each
2509 individual subsystem separately.
2510
Naveen Ramarajc71b2de2012-08-20 12:35:52 -07002511config MSM_OCMEM_NONSECURE
2512 bool "OCMEM Non Secure Mode"
2513 depends on MSM_OCMEM_DEBUG
2514 help
2515 Disable OCMEM interaction with secure processor.
2516 By default OCMEM is secured and accesses for each master
2517 is requested by the OCMEM driver. Selecting this option
2518 causes the OCMEM memory to be in non-secure state unless
2519 its locked down by the secure processor.
2520
Naveen Ramaraj99b07562012-05-28 20:57:09 -07002521config MSM_OCMEM_POWER_DEBUG
2522 bool "OCMEM Power Debug Support"
2523 depends on MSM_OCMEM_DEBUG
2524 help
2525 Enable debug support for OCMEM power management.
2526 This adds support for verifying all power management
2527 related operations of OCMEM. Both local power management
2528 and RPM assisted power management operations are supported.
2529
Naveen Ramaraj4b1d9392012-08-06 21:05:14 -07002530config MSM_OCMEM_POWER_DISABLE
2531 bool "OCMEM Disable Power Control"
2532 depends on MSM_OCMEM_DEBUG
2533 help
2534 Disable all OCMEM power management.
2535 This keeps all OCMEM macros turned ON at all times thus
2536 never allowing them to be turned OFF. Both local power
2537 management and RPM assisted power modes are supported.
2538
Naveen Ramaraj88f23632012-10-10 12:23:29 -07002539config SENSORS_ADSP
2540 bool "Enable Sensors Driver Support for ADSP"
2541 help
2542 Add support for sensors ADSP driver.
2543 This driver is used for exercising different sensors use cases,
2544 such as for lower-power OCMEM use cases, and for time syncing
2545 with ADSP clock.
2546
Laura Abbottad340ff2012-01-04 14:23:48 -08002547config MSM_RTB
2548 bool "Register tracing"
2549 help
2550 Add support for logging different events to a small uncached
2551 region. This is designed to aid in debugging reset cases where the
2552 caches may not be flushed before the target resets.
2553
2554config MSM_RTB_SEPARATE_CPUS
2555 bool "Separate entries for each cpu"
2556 depends on MSM_RTB
Laura Abbott9959f982012-02-28 11:30:50 -08002557 depends on SMP
Laura Abbottad340ff2012-01-04 14:23:48 -08002558 help
2559 Under some circumstances, it may be beneficial to give dedicated space
2560 for each cpu to log accesses. Selecting this option will log each cpu
2561 separately. This will guarantee that the last acesses for each cpu
2562 will be logged but there will be fewer entries per cpu
2563
Stepan Moskovchenko57884842012-06-07 17:35:49 -07002564config MSM_EBI_ERP
2565 bool "External Bus Interface (EBI) error reporting"
2566 help
2567 Say 'Y' here to enable reporting of external bus interface errors to
2568 the kernel log. Information such as the offending address and
2569 transaction type will be logged. This may be useful for debugging
2570 seemingly broken memory accesses.
2571
2572 For production builds, you should probably say 'N' here.
2573
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002574config MSM_CACHE_ERP
2575 bool "Cache / CPU error reporting"
2576 depends on ARCH_MSM_KRAIT
2577 help
2578 Say 'Y' here to enable reporting of cache and TLB errors to the kernel
2579 log. Enabling this feature can be used as a system debugging technique
2580 if cache corruption is suspected. Cache error statistics will also be
2581 reported in /proc/cpu/msm_cache_erp.
2582
2583 For production builds, you should probably say 'N' here.
2584
2585config MSM_L1_ERR_PANIC
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002586 bool "Panic on L1 cache errors"
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002587 depends on MSM_CACHE_ERP
2588 help
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002589 To cause the kernel to panic whenever an L1 cache error is detected, say
2590 'Y' here. This may be useful as a debugging technique if general system
2591 instability is suspected.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002592
2593 For production builds, you should probably say 'N' here.
2594
Stepan Moskovchenkoe1aba3d2012-12-06 18:40:25 -08002595config MSM_L1_RECOV_ERR_PANIC
2596 bool "Panic on recoverable L1 cache errors"
2597 depends on MSM_CACHE_ERP && MSM_L1_ERR_PANIC
2598 help
2599 Certain CPU designs may be able to automatically recover from certain
2600 kinds of L1 cache errors, even though the L1 cache itself may not
2601 support error correction. These errors should not result in any kind
2602 of corruption, but their presence is nevertheless an indication of
2603 poor system health. To cause the kernel to panic whenever a
2604 recoverable L1 cache error is detected, say 'Y' here. This may be
2605 useful as a debugging technique if general system instability is
2606 suspected.
2607
2608 For production builds, you should definitely say 'N' here.
2609
Stepan Moskovchenko7035f652012-05-31 17:48:01 -07002610config MSM_L1_ERR_LOG
2611 bool "Log CPU ERP events to system memory"
2612 depends on MSM_CACHE_ERP
2613 help
2614 Enable logging CPU ERP events to an area of memory that will be
2615 preserved across a system reset. This may be useful for detecting and
2616 troubleshooting ERP-related system crashes in the field.
2617
2618 For production builds, you may want to say 'Y' here.
2619
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002620config MSM_L2_ERP_PRINT_ACCESS_ERRORS
2621 bool "Report L2 master port slave/decode errors in kernel log"
2622 depends on MSM_CACHE_ERP
2623 help
2624 Master port errors can occur when a memory request is not properly
2625 handled by the destination slave. This can occur if the destination
2626 register does not exist or is inaccessible due to security
2627 restrictions or (in some cases) clock configuration. Enabling this
2628 option will cause a backtrace to be printed to the kernel log whenever
2629 such an error is encountered. Note that the error is reported as an
2630 interrupt rather than as an exception, meaning that the backtrace may
2631 have some skid. This option may help with debugging, though production
2632 builds should probably say 'N' here.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002633
2634config MSM_L2_ERP_PORT_PANIC
2635 bool "Panic on L2 master port errors"
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002636 depends on MSM_CACHE_ERP && MSM_L2_ERP_PRINT_ACCESS_ERRORS
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002637 help
2638 Master port errors can occur when a memory request is not properly
2639 handled by the destination slave. Enable this option to catch drivers
2640 which attempt to access bad areas of the address space, or access
2641 hardware registers in an improper state (such as certain clocks not
2642 being on). This option may help with debugging, though production
2643 builds should probably say 'N' here.
2644
2645config MSM_L2_ERP_1BIT_PANIC
2646 bool "Panic on recoverable L2 soft errors"
2647 depends on MSM_CACHE_ERP
2648 help
2649 Enable this option to cause a kernel panic whenever the L2 cache
2650 encounters a single-bit (correctable) soft error. This option should
2651 only be enabled when doing low-level debugging where cache corruption
2652 is suspected.
2653
2654 For production builds, you should definitely say 'N' here.
2655
2656config MSM_L2_ERP_2BIT_PANIC
2657 bool "Panic on unrecoverable L2 soft errors"
2658 depends on MSM_CACHE_ERP
2659 help
2660 Enable this option to cause a kernel panic whenever the L2 cache
2661 encounters a double-bit (non-correctable) soft error. Debug builds
2662 will likely benefit from having this option enabled to catch cache
2663 problems as soon as possible.
2664
2665 For production builds, it may be acceptable to say 'N' here, since
2666 an uncorrectable error might not necessarily cause further problems.
Laura Abbottad340ff2012-01-04 14:23:48 -08002667
Praveen Chidambaramf53ef1b2011-12-06 08:27:49 -07002668config MSM_DCVS
2669 bool "Use MSM DCVS for CPU/GPU Frequency control"
2670 depends on MSM_SCM
2671 help
2672 Enable support for MSM DCVS to control all CPU and GPU core frequencies.
2673 The DCVS manager allows idle driver to feed the idle information to the
2674 algorithm and the algorithm returns a frequency for the core which is
2675 passed to the frequency change driver.
2676
Pankaj Kumar32ce1ea2012-04-04 20:29:29 +05302677config MSM_CPR
2678 tristate "Use MSM CPR in S/W mode"
2679 help
2680 Enable CPR (core power reduction) in S/W mode, where the processor
2681 get's the notification from CPR block and programs the PMIC.
2682
2683config MSM_VP_REGULATOR
2684 tristate "Use MSM PMIC8029 C2 regulator"
2685 depends on ARCH_MSM8625
2686 help
2687 Enable MSM PMIC8029 C2 regulator support using APC_PLEVEL access
2688 for MSMs like 8625.
2689
Taniya Dasc43e6872012-03-21 16:41:14 +05302690config HAVE_ARCH_HAS_CURRENT_TIMER
2691 bool
Laura Abbott306bcc22012-03-08 11:24:53 -08002692
2693config MSM_CACHE_DUMP
2694 bool "Cache dumping support"
2695 help
2696 Add infrastructure to dump the L1 and L2 caches to an allocated buffer.
2697 This allows for analysis of the caches in case cache corruption is
2698 suspected.
2699
Laura Abbott7b637362012-03-29 16:43:49 -07002700config MSM_CACHE_DUMP_ON_PANIC
2701 bool "Dump caches on panic"
2702 depends on MSM_CACHE_DUMP
2703 help
2704 By default, the caches are flushed on panic. This means that trying to
2705 look at them in a RAM dump will give useless data. Select this if you
2706 want to dump the L1 and L2 caches on panic before any flush occurs.
2707 If unsure, say N
2708
Jack Phamccbbfab2012-04-09 19:50:20 -07002709config MSM_HSIC_SYSMON
2710 tristate "MSM HSIC system monitor driver"
2711 depends on USB
2712 help
2713 Add support for bridging with the system monitor interface of MDM
2714 over HSIC. This driver allows the local system monitor to
2715 communicate with the remote system monitor interface.
2716
2717config MSM_HSIC_SYSMON_TEST
2718 tristate "MSM HSIC system monitor bridge test"
2719 depends on USB && MSM_HSIC_SYSMON && DEBUG_FS
2720 help
2721 Enable the test hook for the Qualcomm system monitor HSIC driver.
2722 This will create a debugfs file entry named "hsic_sysmon_test" which
2723 can be read and written to send character data to the sysmon port of
2724 the modem over USB.
2725
Anirudh Ghayal0d2291a2012-09-20 21:31:41 +05302726config MSM_RPC_PMIC
2727 tristate "MSM RPC PMIC driver"
2728 depends on MSM_ONCRPCROUTER
2729 help
2730 This driver supports the PMIC functionality over RPC for those MSM's
2731 which do not have a direct access to PMIC. It supports ability to
2732 configure MPP, GPIO and all the other supported peripherals of the
2733 PMIC.
2734
Anirudh Ghayald3a63732012-09-20 22:13:13 +05302735config MSM_RPC_USB
2736 tristate "MSM RPC USB driver"
2737 depends on MSM_ONCRPCROUTER
2738 help
2739 This driver supports the USB configuration support over the RPC
2740 interface. It support the HS USB module connected to the MSM
2741 and FS USB which is connected over the PMIC. This support is
2742 required for MSMs on which the APPS does not have a direct access
2743 to the PMIC.
2744
2745config MSM_RPC_PMAPP
2746 tristate "MSM RPC PMIC APP driver"
2747 depends on MSM_ONCRPCROUTER
2748 help
2749 This driver supports the configuration of various PMIC APP modules
2750 such as display backlight, vreg pin-ctrl, smps clock over the RPC
2751 interface. This support is required for MSMs on which the APPS
2752 does not have a direct access to the PMIC.
Pushkar Joshi0fc73462012-09-26 17:59:31 -07002753
2754config MSM_ENABLE_WDOG_DEBUG_CONTROL
2755 bool "MSM Watchdog driver to disable debug Image"
2756 help
2757 This driver supports the configuration of the GCC_WDOG_DEBUG register
2758 used to control debug image.
2759 This support is currently required for MSM8974 to disable debug image
2760 on PS HOLD reset
Taniya Dasea4263f92012-08-22 18:52:51 +05302761
2762config MSM_FIQ
2763 bool "Enable FIQ for debugging"
2764 depends on ARCH_MSM8625
2765 select FIQ
Taniya Das36e4aa12012-07-04 18:27:16 +05302766 select GIC_SECURE
Taniya Dasea4263f92012-08-22 18:52:51 +05302767 help
2768 Enable any line to be used as an FIQ. This will help debugging
2769 if apps is not responding and holding lock with irqs disabled.
2770 Modem will then generate an raise a FIQ on this line before sending
2771 SMSM reset.
Greg Reidb1d240a2012-10-12 12:20:31 -04002772
2773config MSM_USE_USER_ACCESSIBLE_TIMERS
2774 bool "Enables mapping an MSM timer counter page to user space."
2775 depends on ARM_USE_USER_ACCESSIBLE_TIMERS
2776 help
2777 Enables MSM-specific user accessible timers via a shared
2778 memory page containing the cycle counter.
2779
Sidipotu Ashokbf84d4d2012-11-06 17:13:28 +05302780config USE_DEV_CTRL_VOLUME
2781 bool "Use Device Control Volume"
2782 help
2783 Use Device Control Volume as opposed to ALSA volume control.
2784
Jay Chokshi06e444f2012-12-06 20:48:23 -08002785config MSM_CPU_PWRCTL
2786 bool "Ensures that krait droop detectors are always off"
2787 help
2788 Droop detector mechanism can adversely affect krait plls during
2789 stand alone power collapse operation. Selecting this option
2790 ensures that they are always off.
2791
Saket Saurabh6089f952012-12-07 15:49:13 +05302792config MSM_UARTDM_Core_v14
2793 bool "Use MSM BLSP based HSUART Core v1.4"
2794 depends on SERIAL_MSM_HS
2795 help
2796 Select if BLSP based UART Core v.14 or higher is present.
Brian Swetland9e73c842007-11-26 04:12:13 -08002797endif