blob: 5e7965efc546c7e419138efdf62da5d9eeac6419 [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
25 select ARCH_HAS_BARRIERS if MSM_SOC_REV_NONE
26 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
Daniel Walkerbf83de42010-03-16 16:29:44 -070042
Daniel Walker7b521612010-05-06 12:44:57 -070043config ARCH_MSM7X30
44 bool "MSM7x30"
45 select ARCH_MSM_SCORPION
Daniel Walker7b521612010-05-06 12:44:57 -070046 select MSM_VIC
47 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070048 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070049 select MSM_REMOTE_SPINLOCK_DEKKERS
50 select ARCH_SPARSEMEM_ENABLE
Laura Abbott78593b52011-09-26 18:48:14 -070051 select ARCH_HAS_HOLES_MEMORYMODEL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070052 select MEMORY_HOTPLUG
53 select MEMORY_HOTREMOVE
Bryan Huntsmanea439642011-11-23 12:34:05 -080054 select ARCH_ENABLE_MEMORY_HOTPLUG
55 select ARCH_ENABLE_MEMORY_HOTREMOVE
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070056 select MIGRATION
57 select ARCH_MEMORY_PROBE
58 select ARCH_MEMORY_REMOVE
Gregory Beanab78cde2010-09-01 16:26:12 -070059 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070060 select RESERVE_FIRST_PAGE
61 select MSM_DALRPC
62 select MSM_SPM_V1
63 select REGULATOR
Justin Paupore637a25d2011-07-14 17:11:04 -070064 select MSM_PROC_COMM_REGULATOR
Taniya Dasbae99fb2011-10-12 09:55:13 +053065 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -080066 select MSM_PM2 if PM
Chintan Pandyabb021762012-06-21 15:03:29 +053067 select HOLES_IN_ZONE if SPARSEMEM
Daniel Walker7b521612010-05-06 12:44:57 -070068
Daniel Walker4ad15e62010-05-06 13:54:17 -070069config ARCH_QSD8X50
70 bool "QSD8X50"
71 select ARCH_MSM_SCORPION
Daniel Walker4ad15e62010-05-06 13:54:17 -070072 select MSM_VIC
73 select CPU_V7
David Brown74d10d72011-05-16 13:57:39 -070074 select GPIO_MSM_V1
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070075 select MSM_REMOTE_SPINLOCK_LDREX
76 select CPU_USE_DOMAINS
77 select EMULATE_DOMAIN_MANAGER_V7
Gregory Beanab78cde2010-09-01 16:26:12 -070078 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070079 select MSM_DALRPC
Matt Wagantall88b86312012-01-31 16:53:03 -080080 select MSM_PM2 if PM
Daniel Walker46fe5f22010-08-18 11:00:25 -070081
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070082config ARCH_MSM8X60
83 bool "MSM8X60"
Jeff Ohlsteine14411d2010-11-30 13:06:36 -080084 select ARCH_MSM_SCORPIONMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070085 select SMP_PARALLEL_START if SMP
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070086 select ARM_GIC
87 select CPU_V7
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070088 select MSM_REMOTE_SPINLOCK_LDREX
89 select ARCH_REQUIRE_GPIOLIB
90 select MSM_ADM3
91 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -080092 select MSM_RPM_REGULATOR
David Brown1a5ab4b2011-05-16 15:53:38 -070093 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070094 select MSM_PIL
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070095 select ARCH_HAS_CPU_IDLE_WAIT
96 select MSM_DIRECT_SCLK_ACCESS
97 select MSM_RPM
98 select MSM_XO
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -070099 select MSM_GPIOMUX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700100 select MSM_BUS_SCALING
101 select MSM_SECURE_IO
102 select MSM_DALRPC
103 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700104 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700105 select MSM_NATIVE_RESTART
106 select ARCH_INLINE_SPIN_TRYLOCK
107 select ARCH_INLINE_SPIN_TRYLOCK_BH
108 select ARCH_INLINE_SPIN_LOCK
109 select ARCH_INLINE_SPIN_LOCK_BH
110 select ARCH_INLINE_SPIN_LOCK_IRQ
111 select ARCH_INLINE_SPIN_LOCK_IRQSAVE
112 select ARCH_INLINE_SPIN_UNLOCK
113 select ARCH_INLINE_SPIN_UNLOCK_BH
114 select ARCH_INLINE_SPIN_UNLOCK_IRQ
115 select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
116 select ARCH_INLINE_READ_TRYLOCK
117 select ARCH_INLINE_READ_LOCK
118 select ARCH_INLINE_READ_LOCK_BH
119 select ARCH_INLINE_READ_LOCK_IRQ
120 select ARCH_INLINE_READ_LOCK_IRQSAVE
121 select ARCH_INLINE_READ_UNLOCK
122 select ARCH_INLINE_READ_UNLOCK_BH
123 select ARCH_INLINE_READ_UNLOCK_IRQ
124 select ARCH_INLINE_READ_UNLOCK_IRQRESTORE
125 select ARCH_INLINE_WRITE_TRYLOCK
126 select ARCH_INLINE_WRITE_LOCK
127 select ARCH_INLINE_WRITE_LOCK_BH
128 select ARCH_INLINE_WRITE_LOCK_IRQ
129 select ARCH_INLINE_WRITE_LOCK_IRQSAVE
130 select ARCH_INLINE_WRITE_UNLOCK
131 select ARCH_INLINE_WRITE_UNLOCK_BH
132 select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
133 select CPU_HAS_L2_PMU
134 select MSM_SPM_V1
Stephen Boyd2a1eb582010-08-27 10:01:23 -0700135 select MSM_SCM if SMP
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530136 select MULTI_IRQ_HANDLER
Laura Abbott46505f62011-11-02 18:06:55 -0700137 select MSM_MULTIMEDIA_USE_ION
Matt Wagantall88b86312012-01-31 16:53:03 -0800138 select MSM_PM8X60 if PM
Krishna Vankae2922052012-03-02 09:59:12 +0530139 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800140 select ARM_HAS_SG_CHAIN
Jeff Ohlstein569fb6e2010-08-12 13:02:56 -0700141
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800142config ARCH_MSM8960
143 bool "MSM8960"
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700144 select ARCH_MSM_KRAITMP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800145 select ARM_GIC
146 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700147 select GPIO_MSM_V2
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800148 select MSM_GPIOMUX
149 select MSM_SCM if SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700150 select MSM_DIRECT_SCLK_ACCESS
151 select REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -0800152 select MSM_RPM_REGULATOR
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700153 select MSM_RPM
154 select MSM_XO
155 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700156 select MSM_QDSP6_CODECS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700157 select MSM_PIL
158 select MSM_AUDIO_QDSP6 if SND_SOC
159 select CPU_HAS_L2_PMU
160 select MSM_SPM_V2
161 select MSM_L2_SPM
162 select MSM_NATIVE_RESTART
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700163 select DONT_MAP_HOLE_AFTER_MEMBANK0
164 select MSM_REMOTE_SPINLOCK_SFPB
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700165 select ARCH_SPARSEMEM_ENABLE
166 select ARCH_HAS_HOLES_MEMORYMODEL
Larry Basseld4d82c92011-12-07 09:52:49 -0800167 select CLEANCACHE
168 select QCACHE
Laura Abbott6d61a912011-10-27 16:44:14 -0700169 select MSM_MULTIMEDIA_USE_ION
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530170 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800171 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700172 select HOLES_IN_ZONE if SPARSEMEM
Krishna Vankae2922052012-03-02 09:59:12 +0530173 select MSM_RUN_QUEUE_STATS
Laura Abbottb14ed962012-01-30 14:18:08 -0800174 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700175 select MSM_KRAIT_WFE_FIXUP
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800176
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700177config ARCH_MSM8930
178 bool "MSM8930"
179 select ARCH_MSM_KRAITMP
180 select ARM_GIC
181 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700182 select GPIO_MSM_V2
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700183 select MSM_GPIOMUX
184 select MSM_SCM if SMP
185 select MSM_DIRECT_SCLK_ACCESS
186 select REGULATOR
David Collins5779cea2012-01-05 15:09:21 -0800187 select MSM_RPM_REGULATOR
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700188 select MSM_RPM
189 select MSM_XO
190 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700191 select MSM_QDSP6_CODECS
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700192 select MSM_PIL
193 select MSM_AUDIO_QDSP6 if SND_SOC
194 select CPU_HAS_L2_PMU
195 select MSM_SPM_V2
196 select MSM_L2_SPM
197 select MSM_NATIVE_RESTART
198 select DONT_MAP_HOLE_AFTER_MEMBANK0
Eric Holmbergeab10732011-09-23 19:44:43 -0600199 select MSM_REMOTE_SPINLOCK_SFPB
Larry Basself74479e2011-09-08 11:07:52 -0700200 select ARCH_SPARSEMEM_ENABLE
201 select ARCH_HAS_HOLES_MEMORYMODEL
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +0200202 select MSM_ULTRASOUND
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530203 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800204 select MSM_PM8X60 if PM
Laura Abbott085dd202012-03-30 14:02:34 -0700205 select HOLES_IN_ZONE if SPARSEMEM
Laura Abbottb14ed962012-01-30 14:18:08 -0800206 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700207 select MSM_KRAIT_WFE_FIXUP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700208
209config ARCH_APQ8064
210 bool "APQ8064"
211 select ARCH_MSM_KRAITMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700212 select GPIO_MSM_V2
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700213 select ARM_GIC
214 select CPU_V7
215 select MSM_SCM if SMP
Joel King4ebccc62011-07-22 09:43:22 -0700216 select MSM_GPIOMUX
Eric Holmberg40d21882011-09-27 09:42:03 -0600217 select MSM_REMOTE_SPINLOCK_SFPB
Swaminathan Sathappan47e5d932011-12-05 14:48:07 -0800218 select MSM_PIL
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800219 select MSM_QDSP6_APR
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -0700220 select MSM_QDSP6_CODECS
Swaminathan Sathappan2f51a752011-12-05 12:51:19 -0800221 select MSM_AUDIO_QDSP6 if SND_SOC
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530222 select MULTI_IRQ_HANDLER
Praveen Chidambaram78499012011-11-01 17:15:17 -0600223 select MSM_RPM
224 select MSM_SPM_V2
225 select MSM_L2_SPM
Matt Wagantall88b86312012-01-31 16:53:03 -0800226 select MSM_PM8X60 if PM
Neil Leeder814d3d32012-01-19 17:21:43 -0500227 select CPU_HAS_L2_PMU
Laura Abbott085dd202012-03-30 14:02:34 -0700228 select HOLES_IN_ZONE if SPARSEMEM
Larry Bassel67b921d2012-04-06 10:23:27 -0700229 select CLEANCACHE
230 select QCACHE
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -0600231 select MIGHT_HAVE_PCI
232 select ARCH_SUPPORTS_MSI
Laura Abbottb14ed962012-01-30 14:18:08 -0800233 select ARM_HAS_SG_CHAIN
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700234 select MSM_KRAIT_WFE_FIXUP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700235
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700236config ARCH_MSM8974
237 bool "MSM8974"
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700238 select ARCH_MSM_KRAITMP
Sathish Ambley4149e842012-03-23 11:53:55 -0700239 select GPIO_MSM_V3
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700240 select ARM_GIC
241 select CPU_V7
242 select MSM_SCM if SMP
243 select MSM_GPIOMUX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530244 select MULTI_IRQ_HANDLER
Olav Hauganb800c8c2012-01-30 08:50:45 -0800245 select MSM_MULTIMEDIA_USE_ION
Matt Wagantallc2bbdc32012-03-21 19:44:50 -0700246 select MSM_PIL
Praveen Chidambaramaa9d52b2012-04-02 11:09:47 -0600247 select MSM_SPM_V2
248 select MSM_L2_SPM
Praveen Chidambaram85b7b282012-04-16 13:45:15 -0600249 select MSM_PM8X60 if PM
Steve Mucklef132c6c2012-06-06 18:30:57 -0700250 select MAY_HAVE_SPARSE_IRQ
251 select SPARSE_IRQ
Mahesh Sivasubramaniancb668712012-04-04 13:03:25 -0600252 select MSM_RPM_SMD
David Collinsc7642322012-04-04 10:19:12 -0700253 select REGULATOR
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -0700254 select MSM_QDSP6_APR
255 select MSM_QDSP6V2_CODECS
256 select MSM_AUDIO_QDSP6V2 if SND_SOC
David Collins1c91ea72012-05-03 16:17:35 -0700257 select MSM_RPM_REGULATOR_SMD
Laura Abbottb14ed962012-01-30 14:18:08 -0800258 select ARM_HAS_SG_CHAIN
Sathish Ambleyd4efc762011-10-09 22:19:22 -0700259
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700260config ARCH_FSM9XXX
261 bool "FSM9XXX"
262 select ARCH_MSM_SCORPION
263 select MSM_VIC
264 select CPU_V7
265 select MSM_REMOTE_SPINLOCK_LDREX
Steve Mucklef132c6c2012-06-06 18:30:57 -0700266 select GPIO_FSM9XXX
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530267 select MULTI_IRQ_HANDLER
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -0800268 select MSM_DALRPC
Daniel Walker4ad15e62010-05-06 13:54:17 -0700269
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700270config ARCH_MSM9615
271 bool "MSM9615"
272 select ARM_GIC
Taniya Dasb241bd82012-03-19 17:58:06 +0530273 select GIC_SECURE
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700274 select ARCH_MSM_CORTEX_A5
275 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700276 select GPIO_MSM_V2
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700277 select MSM_GPIOMUX
Praveen Chidambaramab3b1c42011-08-25 08:44:05 -0600278 select MSM_RPM
Maheshkumar Sivasubramanian738b4582011-09-06 17:26:24 -0600279 select MSM_SPM_V2
Rohit Vaswanif688fa62011-10-13 18:13:10 -0700280 select MSM_NATIVE_RESTART
Matt Wagantall9274df92011-12-15 11:11:05 -0800281 select REGULATOR
282 select MSM_RPM_REGULATOR
Marc Zyngier89bdafd12011-12-22 11:39:20 +0530283 select MULTI_IRQ_HANDLER
Matt Wagantall88b86312012-01-31 16:53:03 -0800284 select MSM_PM8X60 if PM
Vikram Mulukutla2021c002011-12-16 12:32:59 -0800285 select MSM_XO
Olav Haugane6a0acd2012-04-05 09:29:12 -0700286 select MSM_MULTIMEDIA_USE_ION
Shiv Maliyappanahalli9ec55e92012-01-09 14:44:59 -0800287 select MSM_QDSP6_APR
288 select MSM_AUDIO_QDSP6 if SND_SOC
Rohit Vaswaniead426f2012-01-05 20:24:52 -0800289 select FIQ
Laura Abbottb14ed962012-01-30 14:18:08 -0800290 select ARM_HAS_SG_CHAIN
Matt Wagantall9274df92011-12-15 11:11:05 -0800291
Taniya Das43bcdd62011-12-02 17:33:27 +0530292config ARCH_MSM8625
293 bool "MSM8625"
294 select ARCH_MSM_CORTEX_A5
295 select CPU_V7
Steve Mucklef132c6c2012-06-06 18:30:57 -0700296 select GPIO_MSM_V1
Taniya Das43bcdd62011-12-02 17:33:27 +0530297 select MSM_GPIOMUX
298 select ARM_GIC
299 select ARCH_MSM_CORTEXMP
300 select MULTI_IRQ_HANDLER
Trilok Soni3a453992012-03-06 18:46:22 +0530301 select ARM_TICKET_LOCKS
Krishna Vankae2922052012-03-02 09:59:12 +0530302 select MSM_RUN_QUEUE_STATS
Trilok Sonib856ab92012-06-26 14:33:28 +0530303 select MIGHT_HAVE_CACHE_L2X0
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700304
305config ARCH_MSM9625
306 bool "MSM9625"
307 select ARM_GIC
308 select GIC_SECURE
309 select ARCH_MSM_CORTEX_A5
310 select SMP
311 select MSM_SMP
312 select CPU_V7
Jin Hong690e3352012-05-02 09:25:05 -0700313 select MSM_GPIOMUX
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700314 select MULTI_IRQ_HANDLER
Steve Mucklef132c6c2012-06-06 18:30:57 -0700315 select GPIO_MSM_V2
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700316
Stepan Moskovchenko1cd286f2011-08-03 19:03:02 -0700317endmenu
Daniel Walkerbf83de42010-03-16 16:29:44 -0700318
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700319choice
320 prompt "MSM SoC Revision"
321 default MSM_SOC_REV_NONE
322config MSM_SOC_REV_NONE
323 bool "N/A"
324 select EMULATE_DOMAIN_MANAGER_V7 if ARCH_QSD8X50
325 select VERIFY_PERMISSION_FAULT if ARCH_QSD8X50
Daniel Walkerbf83de42010-03-16 16:29:44 -0700326config MSM_SOC_REV_A
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700327 bool "Rev. A"
328 select ARCH_MSM7X27A if ARCH_MSM7X27
Daniel Walkerbf83de42010-03-16 16:29:44 -0700329endchoice
330
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700331config MSM_KRAIT_TBB_ABORT_HANDLER
332 bool "Krait TBB/TBH data abort handler"
333 depends on ARCH_MSM_KRAIT
334 depends on ARM_THUMB
335 help
336 Certain early samples of the Krait processor may generate data
337 aborts for TBB / TBH instructions that fail their condition code
338 checks. Enabling this option will ignore these erroneous data aborts,
339 at the expense of a very small performance penalty.
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800340
Stepan Moskovchenko00da0742011-07-08 14:06:44 -0700341 If unsure, say N.
Daniel Walkerbf83de42010-03-16 16:29:44 -0700342
343config ARCH_MSM_ARM11
344 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700345
Daniel Walkerbf83de42010-03-16 16:29:44 -0700346config ARCH_MSM_SCORPION
347 bool
348
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700349config ARCH_MSM_KRAIT
Daniel Walker46fe5f22010-08-18 11:00:25 -0700350 bool
Stephen Boyd51cabbe2011-12-02 13:28:56 -0800351 select ARM_L1_CACHE_SHIFT_6
Daniel Walker46fe5f22010-08-18 11:00:25 -0700352
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700353config MSM_SMP
Steve Mucklef132c6c2012-06-06 18:30:57 -0700354 select HAVE_SMP
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700355 bool
356
357config ARCH_MSM_SCORPIONMP
358 select ARCH_MSM_SCORPION
359 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530360 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700361 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700362 bool
363
364config ARCH_MSM_KRAITMP
365 select ARCH_MSM_KRAIT
366 select MSM_SMP
Taniya Dasc43e6872012-03-21 16:41:14 +0530367 select HAVE_ARCH_HAS_CURRENT_TIMER
Pratik Patel2963de42012-05-17 12:43:40 -0700368 select MSM_JTAG if MSM_QDSS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700369 bool
Steve Mucklef132c6c2012-06-06 18:30:57 -0700370 select HAVE_HW_BRKPT_RESERVED_RW_ACCESS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700371
Taniya Das43bcdd62011-12-02 17:33:27 +0530372config ARCH_MSM_CORTEXMP
373 select MSM_SMP
374 bool
375
Stepan Moskovchenko196f86e2012-07-13 20:40:46 -0700376config MSM_KRAIT_WFE_FIXUP
377 bool
378
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700379config ARCH_MSM_CORTEX_A5
Bryan Huntsman239ef1e2011-11-23 15:09:13 -0800380 bool
Rohit Vaswaniaf7ae272012-01-09 10:28:57 -0800381 select HAVE_HW_BRKPT_RESERVED_RW_ACCESS
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700382
383config ARCH_MSM7X27A
384 bool
385 select MSM_DALRPC
Justin Pauporeb3a33b72011-08-23 15:30:32 -0700386 select MSM_PROC_COMM_REGULATOR
Taniya Das86e0e132011-10-19 11:32:00 +0530387 select MULTI_IRQ_HANDLER
Taniya Das43bcdd62011-12-02 17:33:27 +0530388 select ARM_GIC
389 select ARCH_MSM_CORTEXMP
Trilok Sonib856ab92012-06-26 14:33:28 +0530390 select MIGHT_HAVE_CACHE_L2X0
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700391
Gregory Beanf9f3d312010-04-30 22:06:50 -0700392config MSM_VIC
393 bool
Daniel Walkerbf83de42010-03-16 16:29:44 -0700394
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700395config MSM_RPM
396 bool "Resource Power Manager"
397 select MSM_MPM
398
Mahesh Sivasubramaniana8ff9922012-03-27 17:50:42 -0600399config MSM_RPM_SMD
400 depends on MSM_SMD
401 bool "Support for using SMD as the transport layer for communicatons with RPM"
402
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700403config MSM_MPM
404 bool "Modem Power Manager"
405
406config MSM_XO
407 bool
408
409config MSM_REMOTE_SPINLOCK_DEKKERS
410 bool
411config MSM_REMOTE_SPINLOCK_SWP
412 bool
413config MSM_REMOTE_SPINLOCK_LDREX
414 bool
Eric Holmbergeab10732011-09-23 19:44:43 -0600415config MSM_REMOTE_SPINLOCK_SFPB
416 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700417config MSM_ADM3
418 bool
419
420menu "MSM Board Selection"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700421
422config MACH_HALIBUT
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700423 depends on ARCH_MSM7X01A
424 depends on MSM_STACKED_MEMORY
425 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700426 bool "Halibut Board (QCT SURF7201A)"
427 help
428 Support for the Qualcomm SURF7201A eval board.
429
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700430config MACH_MSM7201A_SURF
431 depends on ARCH_MSM7X01A
432 depends on MSM_STACKED_MEMORY
433 default y
434 bool "MSM7201A SURF"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700435 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700436 Support for the Qualcomm MSM7201A SURF eval board.
437
438config MACH_MSM7201A_FFA
439 depends on ARCH_MSM7X01A
440 depends on MSM_STACKED_MEMORY
441 default y
442 bool "MSM7201A FFA"
443 help
444 Support for the Qualcomm MSM7201A FFA eval board.
445
446config MACH_TROUT
447 depends on ARCH_MSM7X01A
448 depends on MSM_STACKED_MEMORY
449 default y
450 bool "Trout"
451
452config MACH_MSM7X27_SURF
453 depends on ARCH_MSM7X27
454 depends on !MSM_STACKED_MEMORY
455 default y
456 bool "MSM7x27 SURF"
457 help
458 Support for the Qualcomm MSM7x27 SURF eval board.
459
460config MACH_MSM7X27_FFA
461 depends on ARCH_MSM7X27
462 depends on !MSM_STACKED_MEMORY
463 default y
464 bool "MSM7x27 FFA"
465 help
466 Support for the Qualcomm MSM7x27 FFA eval board.
467
468config MACH_MSM7X27A_RUMI3
469 depends on ARCH_MSM7X27A
470 depends on !MSM_STACKED_MEMORY
471 default y
472 bool "MSM7x27A RUMI3"
473 help
474 Support for the Qualcomm MSM7x27A RUMI3 Emulation Platform.
475
476config MACH_MSM7X27A_SURF
477 depends on ARCH_MSM7X27A
478 depends on !MSM_STACKED_MEMORY
479 default y
480 bool "MSM7x27A SURF"
481 help
482 Support for the Qualcomm MSM7x27A SURF.
483
484config MACH_MSM7X27A_FFA
485 depends on ARCH_MSM7X27A
486 depends on !MSM_STACKED_MEMORY
487 default y
488 bool "MSM7x27A FFA"
489 help
490 Support for the Qualcomm MSM7x27A FFA.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700491
Trilok Soni3d0f6c52011-07-26 16:06:58 +0530492config MACH_MSM7625A_SURF
493 depends on ARCH_MSM7X27A
494 depends on !MSM_STACKED_MEMORY
495 default y
496 bool "MSM7625A SURF"
497 help
498 Support for the Qualcomm MSM7625A SURF.
499
500config MACH_MSM7625A_FFA
501 depends on ARCH_MSM7X27A
502 depends on !MSM_STACKED_MEMORY
503 default y
504 bool "MSM7625A FFA"
505 help
506 Support for the Qualcomm MSM7625A FFA.
507
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530508config MACH_MSM7627A_QRD1
509 depends on ARCH_MSM7X27A
510 depends on !MSM_STACKED_MEMORY
511 default y
512 bool "MSM7627A QRD1"
513 help
Chintan Pandyab1bad0e2012-02-06 19:04:51 +0530514 Support for the Qualcomm MSM7627A Reference Design.
515
516config MACH_MSM7627A_QRD3
517 depends on ARCH_MSM7X27A
518 depends on !MSM_STACKED_MEMORY
519 default y
520 bool "MSM7627A QRD3"
521 help
522 Support for the Qualcomm MSM7627A Reference Design.
Taniya Dasc98bfbc2011-08-23 09:58:55 +0530523
Taniya Dasc868a2e2012-01-03 10:18:47 +0530524config MACH_MSM7627A_EVB
525 depends on ARCH_MSM7X27A
526 depends on !MSM_STACKED_MEMORY
527 default y
528 bool "MSM7627A EVB"
529 help
530 Support for the Qualcomm MSM7627A Reference Design.
531
Taniya Das43bcdd62011-12-02 17:33:27 +0530532config MACH_MSM8625_RUMI3
533 depends on ARCH_MSM8625
534 depends on !MSM_STACKED_MEMORY
535 default y
536 bool "MSM8625 RUMI3"
537 help
538 Support for the Qualcomm MSM8625 RUMI3 Emulation Platform.
539
Taniya Dase3027e22012-02-27 16:32:27 +0530540config MACH_MSM8625_SURF
541 depends on ARCH_MSM8625
542 depends on !MSM_STACKED_MEMORY
543 default y
544 bool "MSM8625 SURF"
545 help
546 Support for the Qualcomm MSM8625 SURF.
547
Aparna Mallavarapu9f000a72012-04-20 15:37:57 +0530548config MACH_MSM8625_FFA
549 depends on ARCH_MSM8625
550 depends on !MSM_STACKED_MEMORY
551 default y
552 bool "MSM8625 FFA"
553 help
554 Support for the Qualcomm MSM8625 FFA.
555
Chintan Pandyaf4ad4002012-02-28 19:49:03 +0530556config MACH_MSM8625_EVB
557 depends on ARCH_MSM8625
558 depends on !MSM_STACKED_MEMORY
559 default y
560 bool "MSM8625 EVB"
561 help
562 Support for the Qualcomm MSM8625 Reference Design.
563
Taniya Dasbd096542012-03-15 17:43:45 +0530564config MACH_MSM8625_QRD7
565 depends on ARCH_MSM8625
566 depends on !MSM_STACKED_MEMORY
567 default y
568 bool "MSM8625 QRD7"
569 help
570 Support for the Qualcomm MSM8625 Reference Design.
571
Aparna Mallavarapu5a326242012-05-09 19:49:02 +0530572config MACH_MSM8625_EVT
573 depends on ARCH_MSM8625
574 depends on !MSM_STACKED_MEMORY
575 default y
576 bool "MSM8625 EVT"
577 help
578 Support for the Qualcomm MSM8625 Reference Design.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700579
Daniel Walker7b521612010-05-06 12:44:57 -0700580config MACH_MSM7X30_SURF
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700581 depends on ARCH_MSM7X30
582 depends on !MSM_STACKED_MEMORY
583 default y
584 bool "MSM7x30 SURF"
585 help
586 Support for the Qualcomm MSM7x30 SURF eval board.
587
588config MACH_MSM7X30_FFA
589 depends on ARCH_MSM7X30
590 depends on !MSM_STACKED_MEMORY
591 default y
592 bool "MSM7x30 FFA"
593 help
594 Support for the Qualcomm MSM7x30 FFA eval board.
595
596config MACH_MSM7X30_FLUID
597 depends on ARCH_MSM7X30
598 depends on !MSM_STACKED_MEMORY
599 default y
600 bool "MSM7x30 FLUID"
601 help
602 Support for the Qualcomm MSM7x30 FLUID eval board.
603
604config MACH_SAPPHIRE
605 depends on ARCH_MSM7X01A
606 default n
607 bool "Sapphire"
Daniel Walker7b521612010-05-06 12:44:57 -0700608
Daniel Walker4ad15e62010-05-06 13:54:17 -0700609config MACH_QSD8X50_SURF
610 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700611 depends on MSM_SOC_REV_NONE
612 depends on MSM_STACKED_MEMORY
613 default y
Daniel Walker4ad15e62010-05-06 13:54:17 -0700614 bool "QSD8x50 SURF"
615 help
616 Support for the Qualcomm QSD8x50 SURF eval board.
617
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700618config MACH_QSD8X50_FFA
Daniel Walker4ad15e62010-05-06 13:54:17 -0700619 depends on ARCH_QSD8X50
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700620 depends on MSM_SOC_REV_NONE
621 depends on MSM_STACKED_MEMORY
622 default y
623 bool "QSD8x50 FFA"
Daniel Walker4ad15e62010-05-06 13:54:17 -0700624 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700625 Support for the Qualcomm QSD8x50 FFA eval board.
626
627config MACH_MSM7X25_SURF
628 depends on ARCH_MSM7X25
629 depends on !MSM_STACKED_MEMORY
630 default y
631 bool "MSM7x25 SURF"
632 help
633 Support for the Qualcomm MSM7x25 SURF eval board.
634
635config MACH_MSM7X25_FFA
636 depends on ARCH_MSM7X25
637 depends on !MSM_STACKED_MEMORY
638 default y
639 bool "MSM7x25 FFA"
640 help
641 Support for the Qualcomm MSM7x25 FFA eval board.
642
643config MACH_MSM8X55_SURF
644 depends on ARCH_MSM7X30
645 depends on !MSM_STACKED_MEMORY
646 default y
647 bool "MSM8X55 SURF"
648 help
649 Support for the Qualcomm MSM8x55 SURF eval board.
650
651config MACH_MSM8X55_FFA
652 depends on ARCH_MSM7X30
653 depends on !MSM_STACKED_MEMORY
654 default y
655 bool "MSM8X55 FFA"
656 help
657 Support for the Qualcomm MSM8x55 FFA eval board.
658
659config MACH_MSM8X55_SVLTE_FFA
660 depends on ARCH_MSM7X30
661 depends on !MSM_STACKED_MEMORY
662 default y
663 bool "MSM8X55 SVLTE FFA"
664 help
665 Support for the Qualcomm MSM8x55 SVLTE FFA eval board.
666
667config MACH_MSM8X55_SVLTE_SURF
668 depends on ARCH_MSM7X30
669 depends on !MSM_STACKED_MEMORY
670 default y
671 bool "MSM8X55 SVLTE SURF"
672 help
673 Support for the Qualcomm MSM8x55 SVLTE SURF eval board.
Daniel Walker4ad15e62010-05-06 13:54:17 -0700674
Steve Mucklea55df6e2010-01-07 12:43:24 -0800675config MACH_MSM8X60_RUMI3
676 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700677 default n
Steve Mucklea55df6e2010-01-07 12:43:24 -0800678 bool "MSM8x60 RUMI3"
679 help
680 Support for the Qualcomm MSM8x60 RUMI3 emulator.
681
Steve Muckle57bbf1c2010-01-07 12:51:10 -0800682config MACH_MSM8X60_SIM
683 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700684 default n
Steve Muckle57bbf1c2010-01-07 12:51:10 -0800685 bool "MSM8x60 Simulator"
686 help
687 Support for the Qualcomm MSM8x60 simulator.
688
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700689config MACH_MSM8X60_SURF
690 depends on ARCH_MSM8X60
691 default n
692 bool "MSM8x60 SURF"
693 help
694 Support for the Qualcomm MSM8x60 SURF eval board.
695
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700696config MACH_MSM8X60_FFA
697 depends on ARCH_MSM8X60
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700698 default n
Gregory Bean69b7f6f2010-04-04 22:29:02 -0700699 bool "MSM8x60 FFA"
700 help
701 Support for the Qualcomm MSM8x60 FFA eval board.
702
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700703config MACH_MSM8X60_FLUID
704 depends on ARCH_MSM8X60
705 default n
706 bool "MSM8x60 FLUID"
707 help
708 Support for the Qualcomm MSM8x60 FLUID platform. The FLUID is an
709 8x60 target which has a form factor that is much closer to that
710 of a phone than other targets. It also has a new display and
711 touchscreen controller.
712
713config MACH_MSM8X60_FUSION
714 depends on ARCH_MSM8X60
715 default n
716 bool "MSM8x60 FUSION"
717 help
718 Support for the Qualcomm MSM8x60 Fusion SURF device.
719
720config MACH_MSM8X60_FUSN_FFA
721 depends on ARCH_MSM8X60
722 default n
723 bool "MSM8x60 FUSN FFA"
724 help
725 Support for the Qualcomm MSM8x60 Fusion FFA device.
726
Zhang Chang Kenef05b172011-07-27 15:28:13 -0400727config MACH_MSM8X60_DRAGON
728 depends on ARCH_MSM8X60
729 default n
730 bool "MSM8x60 DRAGON"
731 help
732 Support for the Qualcomm MSM8x60 Dragon board.
733
Stepan Moskovchenkof441ca22010-12-01 19:31:16 -0800734config MACH_MSM8960_SIM
735 depends on ARCH_MSM8960
736 bool "MSM8960 Simulator"
737 help
738 Support for the Qualcomm MSM8960 simulator.
739
Stepan Moskovchenko50ede4e2010-12-13 18:12:19 -0800740config MACH_MSM8960_RUMI3
741 depends on ARCH_MSM8960
742 bool "MSM8960 RUMI3"
743 help
744 Support for the Qualcomm MSM8960 RUMI3 emulator.
745
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700746config MACH_MSM8960_CDP
747 depends on ARCH_MSM8960
748 bool "MSM8960 CDP"
749 help
750 Support for the Qualcomm MSM8960 CDP device.
751
752config MACH_MSM8960_MTP
753 depends on ARCH_MSM8960
754 bool "MSM8960 MTP"
755 help
756 Support for the Qualcomm MSM8960 MTP device.
757
758config MACH_MSM8960_FLUID
759 depends on ARCH_MSM8960
760 bool "MSM8960 FLUID"
761 help
762 Support for the Qualcomm MSM8960 FLUID device.
763
Amir Samuelov0d1f8ae2011-07-28 11:13:58 +0300764config MACH_MSM8960_LIQUID
765 depends on ARCH_MSM8960
766 bool "MSM8960 LIQUID"
767 help
768 Support for the Qualcomm MSM8960 LIQUID device.
769
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700770config MACH_MSM8930_CDP
771 depends on ARCH_MSM8930
772 bool "MSM8930 CDP"
773 help
774 Support for the Qualcomm MSM8930 CDP device.
775
776config MACH_MSM8930_MTP
777 depends on ARCH_MSM8930
778 bool "MSM8930 MTP"
779 help
780 Support for the Qualcomm MSM8930 MTP device.
781
782config MACH_MSM8930_FLUID
783 depends on ARCH_MSM8930
784 bool "MSM8930 FLUID"
785 help
786 Support for the Qualcomm MSM8930 FLUID device.
787
Stepan Moskovchenko8768eff2011-12-01 18:55:07 -0800788config MACH_MSM8627_CDP
789 depends on ARCH_MSM8930
790 bool "MSM8627 CDP"
791 help
792 Support for the Qualcomm MSM8627 CDP device.
793
794config MACH_MSM8627_MTP
795 depends on ARCH_MSM8930
796 bool "MSM8627 MTP"
797 help
798 Support for the Qualcomm MSM8627 MTP device.
799
Rohit Vaswania8e7a832011-09-28 21:00:05 -0700800config MACH_MSM9615_CDP
801 depends on ARCH_MSM9615
802 bool "MSM9615 CDP"
803 help
804 Support for the Qualcomm MSM9615 CDP device.
805
806config MACH_MSM9615_MTP
807 depends on ARCH_MSM9615
808 bool "MSM9615 MTP"
809 help
810 Support for the Qualcomm MSM9615 MTP device.
811
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700812config MSM_USE_TSIF1
813 depends on ARCH_MSM8X60
814 bool "MSM8x60 use TSIF1"
815 help
816 Selects TSIF1 core to be used rather than TSIF0.
817 The two TSIF cores share the same DM configuration
818 so they cannot be used simultaneously.
819
820config MACH_APQ8064_SIM
821 depends on ARCH_APQ8064
822 bool "APQ8064 Simulator"
823 help
824 Support for the Qualcomm APQ8064 simulator.
825
Stepan Moskovchenkod256ddf2011-09-08 12:34:46 -0700826config MACH_APQ8064_RUMI3
827 depends on ARCH_APQ8064
828 bool "APQ8064 RUMI3"
829 help
830 Support for the Qualcomm APQ8064 RUMI3 emulator.
831
Joel King82b7e3f2012-01-05 10:03:27 -0800832config MACH_APQ8064_CDP
833 depends on ARCH_APQ8064
834 bool "APQ8064 CDP"
835 help
836 Support for the Qualcomm APQ8064 CDP device.
837
838config MACH_APQ8064_MTP
839 depends on ARCH_APQ8064
840 bool "APQ8064 MTP"
841 help
842 Support for the Qualcomm APQ8064 MTP device.
843
844config MACH_APQ8064_LIQUID
845 depends on ARCH_APQ8064
846 bool "APQ8064 LIQUID"
847 help
848 Support for the Qualcomm APQ8064 LIQUID device.
849
Joel King064bbf82012-04-01 13:23:39 -0700850config MACH_MPQ8064_CDP
851 depends on ARCH_APQ8064
852 bool "MPQ8064 CDP"
853 help
854 Support for the Qualcomm MPQ8064 CDP device.
855
Joel King11ca8202012-02-13 16:19:03 -0800856config MACH_MPQ8064_HRD
857 depends on ARCH_APQ8064
858 bool "MPQ8064 HRD"
859 help
860 Support for the Qualcomm MPQ8064 HRD device.
861
862config MACH_MPQ8064_DTV
863 depends on ARCH_APQ8064
864 bool "MPQ8064 DTV"
865 help
866 Support for the Qualcomm MPQ8064 DTV device.
867
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700868config MACH_FSM9XXX_SURF
869 depends on ARCH_FSM9XXX
870 depends on !MSM_STACKED_MEMORY
871 default y
872 bool "FSM9XXX SURF"
873 help
874 Support for the Qualcomm FSM9xxx femtocell
875 chipset based SURF evaluation board and
876 FFA board.
877
Daniel Walker4ad15e62010-05-06 13:54:17 -0700878endmenu
Brian Swetland9e73c842007-11-26 04:12:13 -0800879
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700880config MSM_STACKED_MEMORY
881 bool "Stacked Memory"
882 default y
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800883 help
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700884 This option is used to indicate the presence of on-die stacked
885 memory. When present this memory bank is used for a high speed
886 shared memory interface. When not present regular RAM is used.
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800887
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700888config PHYS_OFFSET
889 hex
Rohit Vaswaniddeb52a2011-08-16 12:26:32 -0700890 default "0x40800000" if ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700891 default "0x80200000" if ARCH_APQ8064
892 default "0x80200000" if ARCH_MSM8960
Stepan Moskovchenko082952d2011-10-18 17:27:08 -0700893 default "0x80200000" if ARCH_MSM8930
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700894 default "0x00000000" if ARCH_MSM8974
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700895 default "0x10000000" if ARCH_FSM9XXX
Rohit Vaswanifafe2492012-04-23 18:54:12 -0700896 default "0x20200000" if ARCH_MSM9625
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700897 default "0x00200000" if !MSM_STACKED_MEMORY
898 default "0x00000000" if ARCH_QSD8X50 && MSM_SOC_REV_A
899 default "0x20000000" if ARCH_QSD8X50
900 default "0x40200000" if ARCH_MSM8X60
901 default "0x10000000"
Stepan Moskovchenko24f61732011-02-11 12:28:16 -0800902
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700903config KERNEL_PMEM_EBI_REGION
904 bool "Enable in-kernel PMEM region for EBI"
905 default y if ARCH_MSM8X60
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -0700906 depends on ANDROID_PMEM && (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700907 help
908 Enable the in-kernel PMEM allocator to use EBI memory.
909
910config KERNEL_PMEM_SMI_REGION
911 bool "Enable in-kernel PMEM region for SMI"
912 default y if ARCH_MSM8X60
913 depends on ANDROID_PMEM && ((ARCH_QSD8X50 && !PMEM_GPU0) || (ARCH_MSM8X60 && !VCM))
914 help
915 Enable the in-kernel PMEM allocator to use SMI memory.
916
917config PMEM_GPU0
918 bool "Enable PMEM GPU0 region"
919 default y
920 depends on ARCH_QSD8X50 && ANDROID_PMEM
921 help
922 Enable the PMEM GPU0 device on SMI Memory.
923
924config MSM_AMSS_VERSION
925 int
926 default 6210 if MSM_AMSS_VERSION_6210
927 default 6220 if MSM_AMSS_VERSION_6220
928 default 6225 if MSM_AMSS_VERSION_6225
929
930choice
931 prompt "AMSS modem firmware version"
932
933 default MSM_AMSS_VERSION_6225
934
935 config MSM_AMSS_VERSION_6210
936 bool "6.2.10"
937
938 config MSM_AMSS_VERSION_6220
939 bool "6.2.20"
940
941 config MSM_AMSS_VERSION_6225
942 bool "6.2.20 + New ADSP"
943endchoice
Stepan Moskovchenko2607b0a2010-11-15 17:46:10 -0800944
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700945config MSM_HAS_DEBUG_UART_HS
Daniel Walkerbf83de42010-03-16 16:29:44 -0700946 bool
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700947 help
948 Say Y here if high speed MSM UART is present.
949
950config MSM_HAS_DEBUG_UART_HS_V14
951 bool
952 select MSM_HAS_DEBUG_UART_HS
953 help
954 Say Y here if high speed MSM UART v1.4 is present.
955
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530956config MSM_DEBUG_UART_PHYS
957 hex
958 default 0xA9A00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART1
959 default 0xACA00000 if ARCH_MSM7X30 && DEBUG_MSM_UART1
960 default 0x94000000 if ARCH_FSM9XXX && DEBUG_MSM_UART1
961 default 0xA9B00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART2
962 default 0xACB00000 if ARCH_MSM7X30 && DEBUG_MSM_UART2
963 default 0x94100000 if ARCH_FSM9XXX && DEBUG_MSM_UART2
964 default 0xA9C00000 if (ARCH_MSM7X27 || ARCH_QSD8X50) && DEBUG_MSM_UART3
965 default 0xACC00000 if ARCH_MSM7X30 && DEBUG_MSM_UART3
966
Brian Swetland9e73c842007-11-26 04:12:13 -0800967choice
968 prompt "Debug UART"
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800969 depends on DEBUG_LL
Brian Swetland9e73c842007-11-26 04:12:13 -0800970
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800971 config DEBUG_MSM_UART1
972 bool "Kernel low-level debugging messages via MSM UART1"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530973 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800974 help
975 Say Y here if you want the debug print routines to direct
976 their output to the first serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -0800977
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800978 config DEBUG_MSM_UART2
979 bool "Kernel low-level debugging messages via MSM UART2"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530980 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50 || ARCH_FSM9XXX
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800981 help
982 Say Y here if you want the debug print routines to direct
983 their output to the second serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -0800984
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800985 config DEBUG_MSM_UART3
986 bool "Kernel low-level debugging messages via MSM UART3"
Taniya Dasfa4ee7f2012-02-21 15:04:51 +0530987 depends on ARCH_MSM7X27 || ARCH_MSM7X30 || ARCH_QSD8X50
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800988 help
989 Say Y here if you want the debug print routines to direct
990 their output to the third serial port on MSM devices.
Brian Swetland9e73c842007-11-26 04:12:13 -0800991
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800992 config DEBUG_MSM8660_UART
993 bool "Kernel low-level debugging messages via MSM 8660 UART"
994 depends on ARCH_MSM8X60
Sathish Ambleyf5bebd62011-11-03 23:36:36 -0700995 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -0800996 help
997 Say Y here if you want the debug print routines to direct
998 their output to the serial port on MSM 8660 devices.
Steve Mucklec8aabae2010-04-21 16:20:27 -0700999
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001000 config DEBUG_MSM8960_UART
1001 bool "Kernel low-level debugging messages via MSM 8960 UART"
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001002 depends on ARCH_MSM8960 && DEBUG_LL
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001003 select MSM_HAS_DEBUG_UART_HS
Sathish Ambleybb87d5f2011-11-08 15:14:01 -08001004 help
1005 Say Y here if you want the debug print routines to direct
1006 their output to the serial port on MSM 8960 devices.
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001007
Stepan Moskovchenko824db172012-05-29 18:05:09 -07001008 config DEBUG_MSM8930_UART
1009 bool "Kernel low-level debugging messages via MSM 8930 UART"
1010 depends on ARCH_MSM8930 && DEBUG_LL
1011 select MSM_HAS_DEBUG_UART_HS
1012 help
1013 Say Y here if you want the debug print routines to direct
1014 their output to the serial port on MSM 8930 devices.
1015
1016 config DEBUG_APQ8064_UART
1017 bool "Kernel low-level debugging messages via APQ 8064 UART"
1018 depends on ARCH_APQ8064 && DEBUG_LL
1019 select MSM_HAS_DEBUG_UART_HS
1020 help
1021 Say Y here if you want the debug print routines to direct
1022 their output to the serial port on APQ 8064 devices.
1023
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001024 config DEBUG_MSM8974_UART
1025 bool "Kernel low-level debugging messages via MSM 8974 UART"
1026 depends on ARCH_MSM8974
Sathish Ambleyf5bebd62011-11-03 23:36:36 -07001027 select MSM_HAS_DEBUG_UART_HS_V14
1028 help
1029 Say Y here if you want the debug print routines to direct
Abhimanyu Kapur90ced6e2012-06-26 17:41:25 -07001030 their output to the serial port on MSM 8974 devices.
Brian Swetland9e73c842007-11-26 04:12:13 -08001031endchoice
Brian Swetland9e73c842007-11-26 04:12:13 -08001032
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001033choice
1034 prompt "Default Timer"
1035 default MSM7X00A_USE_GP_TIMER
1036
1037 config MSM7X00A_USE_GP_TIMER
1038 bool "GP Timer"
1039 help
1040 Low resolution timer that allows power collapse from idle.
1041
1042 config MSM7X00A_USE_DG_TIMER
1043 bool "DG Timer"
1044 help
1045 High resolution timer.
1046endchoice
1047
1048choice
1049 prompt "Suspend sleep mode"
1050 default MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1051 help
1052 Allows overriding the sleep mode used. Leave at power
1053 collapse suspend unless the arm9 image has problems.
1054
1055 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1056 bool "Power collapse suspend"
1057 help
1058 Lowest sleep state. Returns through reset vector.
1059
1060 config MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1061 bool "Power collapse"
1062 help
1063 Sleep state that returns through reset vector.
1064
1065 config MSM7X00A_SLEEP_MODE_APPS_SLEEP
1066 bool "Apps Sleep"
1067
1068 config MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1069 bool "Ramp down cpu clock and wait for interrupt"
1070
1071 config MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1072 bool "Wait for interrupt"
1073endchoice
1074
1075config MSM7X00A_SLEEP_MODE
1076 int
1077 default 0 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1078 default 1 if MSM7X00A_SLEEP_MODE_POWER_COLLAPSE
1079 default 2 if MSM7X00A_SLEEP_MODE_APPS_SLEEP
1080 default 3 if MSM7X00A_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1081 default 4 if MSM7X00A_SLEEP_WAIT_FOR_INTERRUPT
1082
1083choice
1084 prompt "Idle sleep mode"
1085 default MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1086 help
1087 Allows overriding the sleep mode used from idle. Leave at power
1088 collapse suspend unless the arm9 image has problems.
1089
1090 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1091 bool "Power collapse suspend"
1092 help
1093 Lowest sleep state. Returns through reset vector.
1094
1095 config MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1096 bool "Power collapse"
1097 help
1098 Sleep state that returns through reset vector.
1099
1100 config MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1101 bool "Apps Sleep"
1102
1103 config MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1104 bool "Ramp down cpu clock and wait for interrupt"
1105
1106 config MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1107 bool "Wait for interrupt"
1108endchoice
1109
1110config MSM7X00A_IDLE_SLEEP_MODE
1111 int
1112 default 0 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE_SUSPEND
1113 default 1 if MSM7X00A_IDLE_SLEEP_MODE_POWER_COLLAPSE
1114 default 2 if MSM7X00A_IDLE_SLEEP_MODE_APPS_SLEEP
1115 default 3 if MSM7X00A_IDLE_SLEEP_MODE_RAMP_DOWN_AND_WAIT_FOR_INTERRUPT
1116 default 4 if MSM7X00A_IDLE_SLEEP_WAIT_FOR_INTERRUPT
1117
1118config MSM7X00A_IDLE_SLEEP_MIN_TIME
1119 int "Minimum idle time before sleep"
1120 default 20000000
1121 help
1122 Minimum idle time in nanoseconds before entering low power mode.
1123
1124config MSM7X00A_IDLE_SPIN_TIME
1125 int "Idle spin time before cpu ramp down"
1126 default 80000
1127 help
1128 Spin time in nanoseconds before ramping down cpu clock and entering
1129 any low power state.
1130
1131menuconfig MSM_IDLE_STATS
1132 bool "Collect idle statistics"
1133 default y
1134 help
1135 Collect idle statistics and export them in proc/msm_pm_stats.
1136
1137if MSM_IDLE_STATS
1138
1139config MSM_IDLE_STATS_FIRST_BUCKET
1140 int "First bucket time"
1141 default 62500
1142 help
1143 Upper time limit in nanoseconds of first bucket.
1144
1145config MSM_IDLE_STATS_BUCKET_SHIFT
1146 int "Bucket shift"
1147 default 2
1148
1149config MSM_IDLE_STATS_BUCKET_COUNT
1150 int "Bucket count"
1151 default 10
1152
1153config MSM_SUSPEND_STATS_FIRST_BUCKET
1154 int "First bucket time for suspend"
1155 default 1000000000
1156 help
1157 Upper time limit in nanoseconds of first bucket of the
1158 histogram. This is for collecting statistics on suspend.
1159
1160endif # MSM_IDLE_STATS
1161
1162config CPU_HAS_L2_PMU
1163 bool "L2CC PMU Support"
1164 help
1165 Select this if the L2 cache controller has a Performance Monitoring Unit.
1166
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001167config HTC_HEADSET
1168 tristate "HTC 2 Wire detection driver"
1169 default n
1170 help
1171 Provides support for detecting HTC 2 wire devices, such as wired
1172 headset, on the trout platform. Can be used with the msm serial
1173 debugger, but not with serial console.
1174
1175config TROUT_BATTCHG
1176 depends on MACH_TROUT && POWER_SUPPLY
1177 default y
1178 bool "Trout battery / charger driver"
1179
1180config HTC_PWRSINK
1181 depends on MSM_SMD
1182 default n
1183 bool "HTC Power Sink Driver"
1184
1185config QSD_SVS
1186 bool "QSD Static Voltage Scaling"
1187 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1188 default y
1189 select TPS65023
1190 help
1191 Enables static voltage scaling using the TPS65023 PMIC.
1192
1193config QSD_PMIC_DEFAULT_DCDC1
1194 int "PMIC default output voltage"
1195 depends on (MACH_QSD8X50_SURF || MACH_QSD8X50_FFA)
1196 default 1250
1197 help
1198 This is the PMIC voltage at Linux kernel boot.
1199
1200config MSM_FIQ_SUPPORT
1201 default y
1202 bool "Enable installation of an FIQ handler."
1203
1204config MSM_SERIAL_DEBUGGER
1205 select MSM_FIQ_SUPPORT
1206 select KERNEL_DEBUGGER_CORE
1207 default n
1208 bool "FIQ Mode Serial Debugger"
1209 help
1210 The FIQ serial debugger can accept commands even when the
1211 kernel is unresponsive due to being stuck with interrupts
1212 disabled. Depends on the kernel debugger core in drivers/misc.
1213
1214config MSM_SERIAL_DEBUGGER_CONSOLE
1215 depends on MSM_SERIAL_DEBUGGER
1216 default n
1217 bool "Console on FIQ Serial Debugger port"
1218 help
1219 Enables a console so that printk messages are displayed on
1220 the debugger serial port as the occur.
Brian Swetland9e73c842007-11-26 04:12:13 -08001221
Gregory Beanab78cde2010-09-01 16:26:12 -07001222config MSM_PROC_COMM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001223 default y
1224 bool "Proc-Comm RPC Interface"
1225 help
1226 Enables a lightweight communications interface to the
1227 baseband processor.
Gregory Beanab78cde2010-09-01 16:26:12 -07001228
Gregory Bean1963a2a2010-08-28 10:05:44 -07001229config MSM_SMD
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001230 bool "MSM Shared Memory Driver (SMD)"
1231 help
1232 Support for the shared memory interface between the apps
1233 processor and the baseband processor. Provides access to
1234 the "shared heap", as well as virtual serial channels
1235 used to communicate with various services on the baseband
1236 processor.
1237
1238choice
1239 prompt "MSM Shared memory interface version"
1240 depends on MSM_SMD
1241 default MSM_SMD_PKG3 if ARCH_MSM_ARM11
1242 default MSM_SMD_PKG4 if ARCH_MSM_SCORPION
1243
1244 config MSM_SMD_PKG3
1245 bool
1246 prompt "Package 3"
1247
1248 config MSM_SMD_PKG4
1249 bool
1250 prompt "Package 4"
1251endchoice
1252
Niranjana Vishwanathapuraf1427ac2012-05-03 14:28:21 -06001253config MSM_PCIE
1254 bool "MSM PCIe Controller driver"
1255 depends on PCI && PCI_MSI
1256 help
1257 Enables the PCIe functionality by configures PCIe core on
1258 MSM chipset and by enabling the ARM PCI framework extension.
1259
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001260config MSM_RPC_SDIO_XPRT
1261 depends on MSM_SDIO_AL
1262 default y
1263 bool "MSM SDIO XPRT Layer"
1264 help
1265 SDIO Transport Layer for RPC Rouer
1266
1267config MSM_RPC_SDIO_DEBUG
1268 depends on MSM_RPC_SDIO_XPRT
1269 default y
1270 bool "MSM SDIO XPRT debug support"
1271 help
1272 Support for debugging SDIO XPRT
1273
1274config MSM_SMD_DEBUG
1275 depends on MSM_SMD
1276 default y
1277 bool "MSM SMD debug support"
1278 help
1279 Support for debugging the SMD for communication
1280 between the ARM9 and ARM11
1281
1282config MSM_SDIO_AL
1283 depends on ((ARCH_MSM7X30 || MACH_MSM8X60_FUSN_FFA || MACH_TYPE_MSM8X60_FUSION) && HAS_WAKELOCK)
1284 default y
1285 tristate "SDIO-Abstraction-Layer"
1286 help
1287 Support MSM<->MDM Communication over SDIO bus.
1288 MDM SDIO-Client should have pipes support.
1289
1290config MSM_SDIO_DMUX
1291 bool "SDIO Data Mux Driver"
1292 depends on MSM_SDIO_AL
1293 default n
1294 help
1295 Support Muxed Data Channels over SDIO interface.
1296
1297config MSM_BAM_DMUX
1298 bool "BAM Data Mux Driver"
1299 depends on SPS
1300 default n
1301 help
1302 Support Muxed Data Channels over BAM interface.
1303 BAM has a limited number of pipes. This driver
1304 provides a means to support more logical channels
1305 via muxing than BAM could without muxing.
1306
1307config MSM_N_WAY_SMD
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001308 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001309 default y
1310 bool "MSM N-WAY SMD support"
1311 help
1312 Supports APPS-QDSP SMD communication along with
1313 normal APPS-MODEM SMD communication.
1314
1315config MSM_N_WAY_SMSM
Jeff Hugo0c0f5e92011-09-28 13:55:45 -06001316 depends on (MSM_SMD && !(ARCH_MSM7X01A))
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001317 default y
1318 bool "MSM N-WAY SMSM support"
1319 help
1320 Supports APPS-QDSP SMSM communication along with
1321 normal APPS-MODEM SMSM communication.
1322
1323config MSM_RESET_MODEM
1324 tristate "Reset Modem Driver"
1325 depends on MSM_SMD
1326 default m
1327 help
1328 Allows the user to reset the modem through a device node.
1329
1330config MSM_SMD_LOGGING
1331 depends on MSM_SMD
1332 default y
1333 bool "MSM Shared Memory Logger"
1334 help
1335 This option exposes the shared memory logger at /dev/smem_log
1336 and a debugfs node named smem_log.
1337
1338 If in doubt, say yes.
1339
Karthikeyan Ramasubramaniane1f4f732011-08-08 13:34:47 -06001340config MSM_IPC_LOGGING
1341 bool "MSM Debug Logging for IPC Drivers"
1342 help
1343 This option allows the debug logging for IPC Drivers.
1344
1345 If in doubt, say no.
1346
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001347config MSM_SMD_NMEA
1348 bool "NMEA GPS Driver"
1349 depends on MSM_SMD
1350 default y
1351 help
1352 Enable this to support the NMEA GPS device.
1353
1354 If in doubt, say yes.
1355
1356config MSM_SDIO_TTY
1357 bool "SDIO TTY Driver"
1358 depends on MSM_SDIO_AL
1359 default n
1360 help
1361 Provides a TTY driver SDIO TTY
1362 This driver can be used by user space
1363 applications for passing data through the
1364 SDIO interface.
1365
1366config MSM_SMD_TTY
1367 bool "SMD TTY Driver"
1368 depends on MSM_SMD
1369 default y
1370 help
1371 Provides TTY interfaces to interact with the modem.
1372
1373 If in doubt, say yes.
1374
1375config MSM_SMD_QMI
1376 bool "SMD QMI Driver"
1377 depends on MSM_SMD
1378 default y
1379 help
1380 Manages network data connections.
1381
1382 If in doubt, say yes.
1383
1384config MSM_SMD_PKT
1385 bool "SMD Packet Driver"
1386 depends on MSM_SMD
1387 default y
1388 help
1389 Provides a binary SMD non-muxed packet port interface.
1390
1391 If in doubt, say yes.
1392
1393config MSM_SDIO_CMUX
1394 bool "SDIO CMUX Driver"
1395 depends on MSM_SDIO_AL
1396 default n
1397 help
1398 Provides a Muxed port interface over SDIO QMI
1399
1400config MSM_DSPS
1401 bool "Sensors DSPS driver"
1402 depends on (MSM_PIL && (ARCH_MSM8X60 || ARCH_MSM8960))
1403 default n
1404 help
1405 Provides user-space interface to the sensors manager
1406 to turn on/off the Sensors Processor system clocks.
1407 It is the DSPS responsibility to turn on/off the sensors
1408 themself.
1409 The number of clocks and their name may vary between targets.
1410 It also triggers the PIL to load the DSPS firmware.
1411
1412config MSM_SDIO_CTL
1413 bool "SDIO CTL Driver"
1414 depends on MSM_SDIO_CMUX
1415 default n
1416 help
1417 Provides a binary SDIO control port interface.
1418
1419config MSM_ONCRPCROUTER
1420 depends on MSM_SMD
1421 default n
1422 bool "MSM ONCRPC router support"
1423 help
1424 Support for the MSM ONCRPC router for communication between
1425 the ARM9 and ARM11
1426
1427config MSM_IPC_ROUTER
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001428 depends on NET
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001429 default n
1430 bool "MSM IPC Router support"
1431 help
1432 Support for the MSM IPC Router for communication between
1433 the APPs and the MODEM
1434
Karthikeyan Ramasubramanianda45b432011-09-23 14:39:30 -06001435config MSM_IPC_ROUTER_SMD_XPRT
1436 depends on MSM_SMD
1437 depends on MSM_IPC_ROUTER
1438 default n
1439 bool "MSM SMD XPRT Layer"
1440 help
1441 SMD Transport Layer for IPC Router
1442
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001443config MSM_ONCRPCROUTER_DEBUG
1444 depends on MSM_ONCRPCROUTER
1445 default y
1446 bool "MSM debug ONCRPC router support"
1447 help
1448 Support for debugging the ONCRPC router for communication
1449 between the ARM9 and ARM11
1450
1451config MSM_RPC_LOOPBACK_XPRT
1452 depends on MSM_ONCRPCROUTER
1453 default n
1454 bool "MSM RPC local routing support"
1455 help
1456 Support for routing RPC messages between APPS clients
1457 and APPS servers. Helps in testing APPS RPC framework.
1458
1459config MSM_RPCSERVER_TIME_REMOTE
1460 depends on MSM_ONCRPCROUTER && RTC_HCTOSYS
1461 default y
1462 bool "Time remote RPC server"
1463 help
1464 The time remote server receives notification of time bases and
1465 reports these events to registered callback functions.
1466
1467config MSM_RPCSERVER_WATCHDOG
1468 depends on MSM_ONCRPCROUTER
1469 default y
1470 bool "Watchdog RPC server"
1471 help
1472 The dog_keepalive server handles watchdog events.
1473
1474config MSM_RPC_WATCHDOG
1475 depends on MSM_ONCRPCROUTER
1476 default n
1477 bool "Watchdog RPC client"
1478 help
1479 The dog_keepalive client module.
1480
1481config MSM_RPC_PING
1482 depends on MSM_ONCRPCROUTER && DEBUG_FS
1483 default m
1484 bool "MSM rpc ping"
1485 help
1486 Implements MSM rpc ping test module.
1487
1488config MSM_RPC_PROC_COMM_TEST
1489 depends on DEBUG_FS && MSM_PROC_COMM
1490 default m
1491 bool "MSM rpc proc comm test"
1492 help
1493 Implements MSM rpc proc comm test module.
1494
1495config MSM_RPC_OEM_RAPI
1496 depends on MSM_ONCRPCROUTER
1497 default m
1498 bool "MSM oem rapi"
1499 help
1500 Implements MSM oem rapi client module.
1501
1502config MSM_RPCSERVER_HANDSET
1503 depends on MSM_ONCRPCROUTER
1504 default y
1505 bool "Handset events RPC server"
1506 help
1507 Support for receiving handset events like headset detect,
1508 headset switch and clamshell state.
1509
1510config MSM_RMT_STORAGE_CLIENT
1511 depends on (ARCH_MSM && MSM_ONCRPCROUTER)
1512 default n
1513 bool "Remote Storage RPC client"
1514 help
1515 Provide RPC mechanism for remote processors to access storage
1516 device on apps processor.
1517
1518config MSM_RMT_STORAGE_CLIENT_STATS
1519 depends on (MSM_RMT_STORAGE_CLIENT && DEBUG_FS)
1520 default n
1521 bool "Remote storage RPC client performance statistics"
1522 help
1523 Collects performance statistics and shows this information
1524 through a debugfs file rmt_storage_stats.
1525
1526config MSM_SDIO_SMEM
1527 depends on MSM_SDIO_AL
1528 default n
1529 bool "SDIO SMEM for remote storage"
1530 help
1531 Copies data from remote MDM9K memory to local MSM8x60
1532 memory. Used by remote storage client to shadow
1533 MDM9K filesystem.
1534
1535config MSM_DALRPC
1536 bool "DAL RPC support"
Bryan Huntsman18b3c0c2011-11-23 15:12:58 -08001537 default n
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001538 help
1539 Supports RPC calls to DAL devices on remote processor cores.
1540
1541config MSM_DALRPC_TEST
1542 tristate "DAL RPC test module"
1543 depends on (MSM_DALRPC && DEBUG_FS)
1544 default m
1545 help
1546 Exercises DAL RPC calls to QDSP6.
1547
1548if CPU_FREQ_MSM
1549
1550config MSM_CPU_FREQ_SET_MIN_MAX
1551 bool "Set Min/Max CPU frequencies."
1552 default n
1553 help
1554 Allow setting min and max CPU frequencies. Sysfs can be used
1555 to override these values.
1556
1557config MSM_CPU_FREQ_MAX
1558 int "Max CPU Frequency"
1559 depends on MSM_CPU_FREQ_SET_MIN_MAX
1560 default 384000
1561
1562config MSM_CPU_FREQ_MIN
1563 int "Min CPU Frequency"
1564 depends on MSM_CPU_FREQ_SET_MIN_MAX
1565 default 245760
1566
1567endif # CPU_FREQ_MSM
1568
1569config MSM_CPU_AVS
1570 bool "Enable software controlled Adaptive Voltage Scaling (AVS)"
1571 depends on (ARCH_MSM_SCORPION && QSD_SVS)
1572 depends on ARCH_QSD8X50
1573 default n
1574 select MSM_AVS_HW
1575 help
1576 This enables the s/w control of Adaptive Voltage Scaling feature
1577 in Qualcomm ARMv7 CPUs. It adjusts the voltage for each frequency
1578 based on feedback from three ring oscillators in the CPU.
1579
1580config MSM_AVS_HW
1581 bool "Enable Adaptive Voltage Scaling (AVS)"
1582 default n
1583 help
1584 Enable AVS hardware to fine tune voltage at each frequency. The
1585 AVS hardware blocks associated with each Qualcomm ARMv7 cores can
1586 fine tune the voltages based on the feedback from the ring
1587 oscillators.
1588
1589config MSM_HW3D
1590 tristate "MSM Hardware 3D Register Driver"
1591 depends on ANDROID_PMEM
1592 default y
1593 help
1594 Provides access to registers needed by the userspace OpenGL|ES
1595 library.
1596
1597config MSM_ADSP
1598 depends on (ARCH_MSM7X01A || ARCH_MSM7X25 || ARCH_MSM7X27)
1599 tristate "MSM ADSP driver"
1600 depends on ANDROID_PMEM
1601 default y
1602 help
1603 Provides access to registers needed by the userspace aDSP library.
1604
1605config ADSP_RPC_VER
1606 hex
1607 default 0x30002 if (ARCH_MSM7X27 || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2009))
1608 default 0x30001 if (ARCH_MSM7X01A || (ARCH_MSM7X25 && AMSS_7X25_VERSION_2008))
1609 depends on MSM_ADSP
1610 help
1611 Select proper ADSP RPC version
1612choice
1613 prompt "ADSP RPC version"
1614
1615 default AMSS_7X25_VERSION_2009
1616
1617 config AMSS_7X25_VERSION_2009
1618 bool "2.0.09"
1619
1620 config AMSS_7X25_VERSION_2008
1621 bool "2.0.08"
1622endchoice
1623
1624config MSM7KV2_AUDIO
1625 bool "MSM7K v2 audio"
1626 depends on (ARCH_MSM7X30 && ANDROID_PMEM)
1627 default y
1628 help
1629 Enables QDSP5V2-based audio drivers for audio playbacks and
1630 voice call.
1631
1632config MSM_ADSP_REPORT_EVENTS
1633 bool "Report modem events from the DSP"
1634 default y
1635 depends on (MSM_ADSP || MSM7KV2_AUDIO)
1636 help
1637 Normally, only messages from the aDSP are reported to userspace.
1638 With this option, we report events from the aDSP as well.
1639
1640config MSM_QDSP6
1641 tristate "QDSP6 support"
1642 depends on ARCH_QSD8X50 && ANDROID_PMEM
1643 default y
1644 help
1645 Enable support for qdsp6. This provides audio and video functionality.
1646
1647config MSM8X60_AUDIO
1648 tristate "MSM8X60 audio support"
1649 depends on ARCH_MSM8X60 && ANDROID_PMEM
1650 default y
1651 help
1652 Enable support for qdsp6v2. This provides audio functionality.
1653
1654config MSM8X60_FTM_AUDIO_DEVICES
1655 bool "MSM8X60 audio factory test mode support"
1656 depends on MSM8X60_AUDIO
1657 help
1658 Enable support audio factory test mode devices. This is used
1659 in a production line environment.
1660
Ben Romberger45b351c2011-07-20 22:37:27 -07001661config RTAC
1662 bool "MSM8K real-time audio calibration support"
1663 default y
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001664 help
Ben Romberger45b351c2011-07-20 22:37:27 -07001665 Enable support for rtac. This enables calibration during
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001666 audio operation
1667
1668config MSM7X27A_AUDIO
1669 bool "MSM7X27A audio support"
1670 depends on ARCH_MSM7X27A && MSM_ADSP
1671 default n
1672 help
1673 Enable support for 7x27a. This provides audio functionality.
1674
Justin Pauporea6cd2092011-06-22 16:19:45 -07001675config MSM_PROC_COMM_REGULATOR
Gregory Bean1963a2a2010-08-28 10:05:44 -07001676 bool
Justin Pauporea6cd2092011-06-22 16:19:45 -07001677 depends on MSM_PROC_COMM && REGULATOR
1678 help
1679 Enable regulator framework support for regulators managed by PMLIB
1680 on the modem, and controlled through proccomm calls.
1681
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001682config MSM_VREG_SWITCH_INVERTED
1683 bool "Reverse vreg switch polarity"
1684 default n
1685 help
1686 Reverses the enable and disable for vreg switch.
1687
1688config MSM_DMA_TEST
1689 tristate "MSM DMA test module"
1690 default m
1691 help
1692 Intended to be compiled as a module. Provides a device node
1693 and ioctls for testing the MSM dma system.
1694
1695config WIFI_CONTROL_FUNC
1696 bool "Enable WiFi control function abstraction"
1697 help
1698 Enables Power/Reset/Carddetect function abstraction
1699
1700config WIFI_MEM_PREALLOC
1701 depends on WIFI_CONTROL_FUNC
1702 bool "Preallocate memory for WiFi buffers"
1703 help
1704 Preallocates memory buffers for WiFi driver
1705
1706config QSD_AUDIO
1707 bool "QSD audio"
1708 depends on ARCH_MSM_SCORPION && MSM_DALRPC && ANDROID_PMEM && !MSM_SMP
1709 default y
1710 help
1711 Provides PCM, MP3, and AAC audio playback.
1712
1713config AUDIO_AAC_PLUS
1714 depends on (MSM_ADSP || QSD_AUDIO || MSM7KV2_AUDIO)
1715 bool "AAC+ Audio"
1716 default y
1717 help
1718 Provides AAC+ decoding
1719
1720config AUDIO_ENHANCED_AAC_PLUS
1721 depends on AUDIO_AAC_PLUS
1722 bool "Enhanced AAC+ Audio"
1723 default y
1724 help
1725 Provides Enhanced AAC+ decoding
1726
1727config SURF_FFA_GPIO_KEYPAD
1728 bool "MSM SURF/FFA GPIO keypad"
1729 depends on INPUT_GPIO = "y"
1730 default y
1731 help
1732 Select if the GPIO keypad is attached.
1733
1734config MSM_SLEEP_TIME_OVERRIDE
1735 bool "Allow overriding suspend/sleep time with PM module parameter"
1736 default y
1737 help
1738 Enable the module parameter sleep_time_override. Specified
1739 in units of seconds, it overwrites the normal sleep time of
1740 suspend. The feature is required for automated power management
1741 testing.
1742
1743config MSM_MEMORY_LOW_POWER_MODE
1744 bool "Control the low power modes of memory"
1745 default n
1746 help
1747 The application processor controls whether memory should enter
1748 which low power mode.
1749
1750choice
1751 prompt "Default Memory Low Power Mode during Idle"
1752 depends on MSM_MEMORY_LOW_POWER_MODE
1753 default MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1754 help
1755 Selects the default low power mode of the memory during idle
1756 sleep.
1757
1758 config MSM_MEMORY_LOW_POWER_MODE_IDLE_ACTIVE
1759 bool "Memory active"
1760
1761 config MSM_MEMORY_LOW_POWER_MODE_IDLE_RETENTION
1762 bool "Memory in retention"
1763
1764 config MSM_MEMORY_LOW_POWER_MODE_IDLE_DEEP_POWER_DOWN
1765 bool "Memory in deep power down"
1766endchoice
1767
1768choice
1769 prompt "Default Memory Low Power Mode during Suspend"
1770 depends on MSM_MEMORY_LOW_POWER_MODE
1771 default MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1772 help
1773 Selects the default low power mode of the memory during suspend
1774 sleep.
1775
1776 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_ACTIVE
1777 bool "Memory active"
1778
1779 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_RETENTION
1780 bool "Memory in retention"
1781
1782 config MSM_MEMORY_LOW_POWER_MODE_SUSPEND_DEEP_POWER_DOWN
1783 bool "Memory in deep power down"
1784endchoice
1785
1786choice
1787 prompt "Power management timeout action"
1788 default MSM_PM_TIMEOUT_HALT
1789 help
1790 Selects the Application Processor's action when Power Management
1791 times out waiting for Modem's handshake.
1792
1793 config MSM_PM_TIMEOUT_HALT
1794 bool "Halt the Application Processor"
1795
1796 config MSM_PM_TIMEOUT_RESET_MODEM
1797 bool "Reset the Modem Processor"
1798
1799 config MSM_PM_TIMEOUT_RESET_CHIP
1800 bool "Reset the entire chip"
1801endchoice
1802
1803config MSM_IDLE_WAIT_ON_MODEM
1804 int "Wait for Modem to become ready for idle power collapse"
1805 default 0
1806 help
1807 If Modem is not ready to handle Application Processor's request
1808 for idle power collapse, wait the number of microseconds in case
1809 Modem becomes ready soon.
1810
Matt Wagantall9274df92011-12-15 11:11:05 -08001811config MSM_RPM_REGULATOR
1812 bool "RPM regulator driver"
Matt Wagantall32dc71e2012-01-04 11:13:11 -08001813 depends on MSM_RPM && REGULATOR
Matt Wagantall9274df92011-12-15 11:11:05 -08001814 help
1815 Compile in support for the RPM regulator driver, used for setting
1816 voltages and other parameters of the various power rails supplied
1817 by some Qualcomm PMICs.
1818
David Collinsc7642322012-04-04 10:19:12 -07001819config MSM_RPM_REGULATOR_SMD
1820 bool "SMD RPM regulator driver"
1821 depends on REGULATOR
1822 depends on OF
1823 depends on MSM_RPM_SMD
1824 help
1825 Compile in support for the SMD RPM regulator driver which is used for
1826 setting voltages and other parameters of the various power rails
1827 supplied by some Qualcomm PMICs. The SMD RPM regulator driver should
1828 be used on systems which contain an RPM which communicates with the
1829 application processor over SMD.
1830
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001831config MSM_PIL
1832 bool "Peripheral image loading"
1833 select FW_LOADER
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001834 default n
1835 help
1836 Some peripherals need to be loaded into memory before they can be
1837 brought out of reset.
1838
1839 Say yes to support these devices.
1840
Stephen Boyd4eb885b2011-09-29 01:16:03 -07001841config MSM_PIL_MODEM
1842 tristate "Modem (ARM11) Boot Support"
1843 depends on MSM_PIL
1844 help
1845 Support for booting and shutting down ARM11 Modem processors.
1846
Stephen Boyd3acc9e42011-09-28 16:46:40 -07001847config MSM_PIL_QDSP6V3
1848 tristate "QDSP6v3 (Hexagon) Boot Support"
1849 depends on MSM_PIL
1850 help
1851 Support for booting and shutting down QDSP6v3 processors (hexagon).
1852 The QDSP6 is a low power DSP used in audio software applications.
1853
Stephen Boydeb819882011-08-29 14:46:30 -07001854config MSM_PIL_QDSP6V4
1855 tristate "QDSP6v4 (Hexagon) Boot Support"
1856 depends on MSM_PIL
1857 help
1858 Support for booting and shutting down QDSP6v4 processors (hexagon).
1859 The QDSP6 is a low power DSP used in audio, modem firmware, and modem
1860 software applications.
1861
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07001862config MSM_PIL_LPASS_QDSP6V5
1863 tristate "LPASS QDSP6v5 (Hexagon) Boot Support"
1864 depends on MSM_PIL
1865 help
Matt Wagantall4e2599e2012-03-21 22:31:35 -07001866 Support for booting and shutting down QDSP6v5 (Hexagon) processors
1867 in low power audio subsystems.
1868
1869config MSM_PIL_MSS_QDSP6V5
1870 tristate "MSS QDSP6v5 (Hexagon) Boot Support"
1871 depends on MSM_PIL
1872 help
1873 Support for booting and shutting down QDSP6v5 (Hexagon) processors
1874 in modem subsystems.
Matt Wagantallc2bbdc32012-03-21 19:44:50 -07001875
Matt Wagantalle6e00d52012-03-08 17:39:07 -08001876config MSM_PIL_MBA
1877 tristate "Support for modem self-authentication"
1878 depends on MSM_PIL_MSS_QDSP6V5
1879 help
1880 Support for booting self-authenticating modems using the Modem Boot
1881 Authenticator.
Stephen Boyd322a9922011-09-20 01:05:54 -07001882
1883config MSM_PIL_RIVA
Stephen Boydd89eebe2011-09-28 23:28:11 -07001884 tristate "RIVA (WCNSS) Boot Support"
1885 depends on MSM_PIL
1886 help
1887 Support for booting and shutting down the RIVA processor (WCNSS).
1888 Riva is the wireless subsystem processor used in bluetooth, wireless
1889 LAN, and FM software applications.
1890
1891config MSM_PIL_TZAPPS
1892 tristate "TZApps Boot Support"
1893 depends on MSM_PIL
Stephen Boyd25c4a0b2011-09-20 00:12:36 -07001894 help
1895 Support for booting and shutting down TZApps.
1896
1897 TZApps is an image that runs in the secure processor state. It is
1898 used to decrypt data and perform secure operations on the behalf of
1899 the kernel.
1900
1901config MSM_PIL_DSPS
1902 tristate "DSPS Boot Support"
Stephen Boyd7b973de2012-03-09 12:26:16 -08001903 depends on MSM_PIL
1904 help
1905 Support for booting and shutting down ARM7 DSPS processors.
1906
1907 DSPS is a sensors offloading processor used for applications such
1908 as rotation detection, temperature, etc.
Matt Wagantall292aace2012-01-26 19:12:34 -08001909
1910config MSM_PIL_VIDC
1911 tristate "Video Core Secure Boot Support"
1912 depends on MSM_PIL
1913 help
1914 Support for authenticating the video core image.
1915
Tianyi Gou828798d2012-05-02 21:12:38 -07001916config MSM_PIL_VENUS
1917 tristate "VENUS (Video) Boot Support"
1918 depends on MSM_PIL
1919 help
1920 Support for booting and shutting down the VENUS processor (Video).
1921 Venus is the Video subsystem processor used for video codecs.
1922
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001923config MSM_PIL_GSS
1924 tristate "GSS (Coretx A5) Boot Support"
1925 depends on MSM_PIL
1926 help
1927 Support for booting and shutting down Cortex A5 processors which run
1928 GPS subsystem firmware.
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001929
Tianyi Gouc1e049f82011-11-23 14:20:16 -08001930config MSM_PIL_PRONTO
1931 tristate "PRONTO (WCNSS) Boot Support"
1932 depends on MSM_PIL
1933 help
1934 Support for booting and shutting down the PRONTO processor (WCNSS).
1935 PRONTO is the wireless subsystem processor used in bluetooth, wireless
1936 LAN, and FM software applications.
1937
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001938config MSM_SCM
1939 bool "Secure Channel Manager (SCM) support"
1940 default n
1941
1942config MSM_SUBSYSTEM_RESTART
1943 bool "MSM Subsystem Restart Driver"
1944 depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615)
1945 default n
1946 help
1947 This option enables the MSM subsystem restart driver, which provides
1948 a framework to handle subsystem crashes.
1949
Matt Wagantallf8020902011-08-30 21:19:23 -07001950config MSM_SYSMON_COMM
1951 bool "MSM System Monitor communication support"
1952 depends on MSM_SMD && MSM_SUBSYSTEM_RESTART
1953 default y
1954 help
1955 This option adds support for MSM System Monitor library, which
1956 provides an API that may be used for notifying subsystems within
1957 the SoC about other subsystems' power-up/down state-changes.
1958
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001959config MSM_MODEM_8960
1960 bool "MSM 8960 Modem driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001961 depends on (ARCH_MSM8960 || ARCH_MSM9615)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001962 help
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001963 This option enables the modem driver for the MSM8960 and MSM9615, which monitors
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001964 modem hardware watchdog interrupt lines and plugs into the subsystem
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001965 restart and PIL drivers. For MSM9615, it only supports a full chip reset.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001966
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001967config MSM_LPASS_8960
1968 tristate "MSM 8960 Lpass driver"
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001969 depends on (ARCH_MSM8960 || ARCH_MSM9615)
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001970 help
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001971 This option enables the lpass driver for the MSM8960 and MSM9615. This monitors
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001972 lpass hardware watchdog interrupt lines and plugs into the subsystem
Rohit Vaswani56dd22a2011-11-11 16:21:28 -08001973 restart and PIL drivers. For MSM9615, it only supports a full chip reset.
Bharath Ramachandramurthyff061c72011-06-27 14:22:33 -07001974
Ankur Nandwanie258cf02011-08-19 10:16:38 -07001975config MSM_WCNSS_SSR_8960
1976 tristate "MSM 8960 WCNSS restart module"
1977 depends on (ARCH_MSM8960)
1978 help
1979 This option enables the WCNSS restart module for MSM8960, which
1980 monitors WCNSS hardware watchdog interrupt lines and plugs WCNSS
1981 into the subsystem restart framework.
1982
Rohit Vaswanid0fb4182012-03-19 18:07:59 -07001983config MSM_GSS_SSR_8064
1984 bool "MSM 8064 GSS restart driver"
1985 depends on (ARCH_APQ8064)
1986 help
1987 This option enables the gps subsystem restart driver for APQ8064, which monitors
1988 gss hardware watchdog interrupt lines and plugs into the subsystem
1989 restart and PIL drivers.
1990
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001991config SCORPION_Uni_45nm_BUG
1992 bool "Scorpion Uni 45nm(SC45U): Workaround for ICIMVAU and BPIMVA"
1993 depends on ARCH_MSM7X30 || (ARCH_QSD8X50 && MSM_SOC_REV_A)
1994 default y
1995 help
1996 Invalidating the Instruction Cache by Modified Virtual Address to PoU and
1997 invalidating the Branch Predictor Array by Modified Virtual Address can
1998 create invalid entries in the TLB with the wrong ASID values on Scorpion
1999 Uniprocessor 45nm (SC45U) cores. This option enables the recommended software
2000 workaround for Scorpion Uniprocessor 45nm cores.
2001
2002 This bug is not applicable to any ScorpionMP or Scorpion Uni 65nm(SC65U) cores.
2003
Harini Jayaramanef7805f2011-09-28 12:45:31 -06002004config MSM_BUSPM_DEV
2005 tristate "MSM Bus Performance Monitor Kernel Module"
2006 depends on (ARCH_MSM8X60 || ARCH_MSM8960)
2007 default m
2008 help
2009 This kernel module is used to mmap() hardware registers for the
2010 performance monitors, counters, etc. The module can also be used to
2011 allocate physical memory which is used by bus performance hardware to
2012 dump performance data.
2013
Mona Hossain11c03ac2011-10-26 12:42:10 -07002014config MSM_TZ_LOG
2015 tristate "MSM Trust Zone (TZ) Log Driver"
2016 depends on DEBUG_FS
2017 help
2018 This option enables a driver with a debugfs interface for messages
2019 produced by the Secure code (Trust zone). These messages provide
2020 diagnostic information about TZ operation.
2021
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002022config MSM_RPM_LOG
2023 tristate "MSM Resource Power Manager Log Driver"
2024 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002025 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002026 default n
2027 help
2028 This option enables a driver which can read from a circular buffer
2029 of messages produced by the RPM. These messages provide diagnostic
2030 information about RPM operation. The driver outputs the messages
2031 via a debugfs node.
2032
2033config MSM_RPM_STATS_LOG
2034 tristate "MSM Resource Power Manager Stat Driver"
2035 depends on DEBUG_FS
Praveen Chidambaram7a712232011-10-28 13:39:45 -06002036 depends on MSM_RPM
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002037 default n
2038 help
2039 This option enables a driver which reads RPM messages from a shared
2040 memory location. These messages provide statistical information about
2041 the low power modes that RPM enters. The drivers outputs the message
2042 via a debugfs node.
2043
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002044config MSM_DIRECT_SCLK_ACCESS
2045 bool "Direct access to the SCLK timer"
2046 default n
2047
2048config IOMMU_API
2049 bool
Gregory Bean1963a2a2010-08-28 10:05:44 -07002050
Brian Swetland9e73c842007-11-26 04:12:13 -08002051config MSM_GPIOMUX
2052 bool
2053
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002054config MSM_SECURE_IO
Brian Swetland9e73c842007-11-26 04:12:13 -08002055 bool
Stepan Moskovchenko0ab847452010-11-12 19:29:57 -08002056
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002057config MSM_NATIVE_RESTART
Stephen Boyd2a1eb582010-08-27 10:01:23 -07002058 bool
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002059
Matt Wagantall88b86312012-01-31 16:53:03 -08002060config MSM_PM2
2061 depends on PM
2062 bool
2063
2064config MSM_PM8X60
2065 depends on PM
2066 bool
2067
2068config MSM_NOPM
2069 default y if !PM
2070 bool
2071
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002072config MSM_BUS_SCALING
2073 bool "Bus scaling driver"
2074 default n
2075
Gagan Mac85c70492011-06-10 16:07:47 -06002076config MSM_BUS_RPM_MULTI_TIER_ENABLED
2077 bool "RPM Multi-tiering Configuration"
2078 depends on MSM_BUS_SCALING
2079
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002080config MSM_WATCHDOG
2081 bool "MSM Watchdog Support"
Rohit Vaswanie897f842012-03-19 14:19:34 -07002082 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615 || ARCH_FSM9XXX
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002083 help
2084 This enables the watchdog as is present on 8x60. Currently we use
2085 core 0's watchdog, and reset the entire SoC if it times out. It does
2086 not run during the bootup process, so it will not catch any early
2087 lockups.
2088
Hanumant Singhd1f01022012-07-05 14:21:53 -07002089config MSM_WATCHDOG_V2
2090 bool "MSM Watchdog Support"
2091 help
2092 This enables the watchdog module. It causes kernel panic if the
2093 watchdog times out. It allows for detection of cpu hangs and
2094 deadlocks. It does not run during the bootup process, so it will
2095 not catch any early lockups.
2096
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002097config MSM_DLOAD_MODE
2098 bool "Enable download mode on crashes"
Rohit Vaswani92b071a2011-10-18 20:10:09 -07002099 depends on ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM9615
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002100 default n
2101 help
2102 This makes the SoC enter download mode when it resets
2103 due to a kernel panic. Note that this doesn't by itself
2104 make the kernel reboot on a kernel panic - that must be
2105 enabled via another mechanism.
2106
Pratik Patel17f3b822011-11-21 12:41:47 -08002107config MSM_JTAG
Pratik Patel2963de42012-05-17 12:43:40 -07002108 bool "JTAG and kernel debug and trace support across power collapse"
Pratik Patelfd6f56a2011-10-10 17:47:55 -07002109 help
Pratik Patel2963de42012-05-17 12:43:40 -07002110 Enables support for kernel debugging (specifically breakpoints) and
2111 processor tracing across power collapse both for JTag and OS hosted
2112 software running on the target. Enabling this will ensure debug
2113 and ETM registers are saved and restored across power collapse.
2114
2115 For production builds, you should probably say 'N' here to avoid
2116 potential power, performance and memory penalty.
Pratik Patel7831c082011-06-08 21:44:37 -07002117
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002118config MSM_ETM
2119 tristate "Enable MSM ETM and ETB"
Pratik Patel17f3b822011-11-21 12:41:47 -08002120 depends on ARCH_MSM8X60
2121 select MSM_JTAG
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002122 help
Pratik Patel17f3b822011-11-21 12:41:47 -08002123 Enables embedded trace collection on MSM8660
Pratik Patel7831c082011-06-08 21:44:37 -07002124
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002125config MSM_SLEEP_STATS
2126 bool "Enable exporting of MSM sleep stats to userspace"
2127 depends on CPU_IDLE
2128 default n
2129
Lynus Vazdde09ee2012-01-05 13:28:22 +05302130config MSM_SLEEP_STATS_DEVICE
2131 bool "Enable exporting of MSM sleep device stats to userspace"
2132
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302133config MSM_RUN_QUEUE_STATS
2134 bool "Enable collection and exporting of MSM Run Queue stats to userspace"
Krishna Vankae2922052012-03-02 09:59:12 +05302135 depends on (MSM_SOC_REV_A || ARCH_MSM8X60 || ARCH_MSM8960)
2136 help
2137 This option enalbes statistics collection on Run Queue. A daemon
2138 in user mode, called MPDecision will be using this data to decide
2139 on when to switch off/on the other cores.
Krishna Vanka7f563ff2012-03-20 22:04:19 +05302140
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002141config MSM_STANDALONE_POWER_COLLAPSE
2142 bool "Enable standalone power collapse"
2143 default n
2144
2145config MSM_GSBI9_UART
2146 bool "Enable GSBI9 UART device"
2147 default n
2148 help
2149 This enables GSBI9 configured into UART.
2150
2151config MSM_SHARED_GPIO_FOR_UART2DM
2152 bool "Use shared GPIOs into UART mode"
2153 depends on (ARCH_MSM7X27A && !MMC_MSM_SDC3_8_BIT_SUPPORT && !MMC_MSM_SDC4_SUPPORT)
2154 help
2155 This option configures GPIO muxed with SDC4/MMC3
2156 8-bit mode into UART mode. It is used for serial
2157 console on UART2DM. Say Y if you want to have
2158 serial console on UART2DM.
2159
2160config MSM_SHOW_RESUME_IRQ
2161 bool "Enable logging of interrupts that could have caused resume"
Bryan Huntsmancc147032011-11-23 13:03:56 -08002162 depends on (ARM_GIC || PMIC8058)
2163 default y if PMIC8058
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002164 default n
2165 help
2166 This option logs wake up interrupts that have triggered just before
2167 the resume loop unrolls. Say Y if you want to debug why the system
2168 resumed.
2169
2170config BT_MSM_PINTEST
2171 tristate "MSM Bluetooth Pin Connectivity Test"
2172 depends on ((ARCH_MSM8X60 || ARCH_MSM7X27A) && DEBUG_FS)
2173 default n
2174 help
2175 Bluetooth MSM Pin Connectivity test module.
2176 This driver provides support for verifying the MSM to BT pin
2177 connectivity.
2178
2179config MSM_FAKE_BATTERY
2180 depends on POWER_SUPPLY
2181 default n
2182 bool "MSM Fake Battery"
2183 help
2184 Enables MSM fake battery driver.
2185
2186config MSM_QDSP6_APR
2187 bool "Audio QDSP6 APR support"
2188 depends on MSM_SMD
2189 default n
2190 help
2191 Enable APR IPC protocol support between
2192 application processor and QDSP6. APR is
2193 used by audio driver to configure QDSP6's
2194 ASM, ADM and AFE.
2195
Harmandeep Singhc35fa07d2012-05-31 07:08:59 -07002196config MSM_QDSP6_CODECS
2197 bool "Audio Codecs on QDSP6 APR "
2198 depends on MSM_SMD
2199 default n
2200 help
2201 Enable Audio codecs with APR IPC protocol support between
2202 application processor and QDSP6. APR is
2203 used by audio driver to configure QDSP6's
2204 ASM, ADM and AFE.
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002205
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002206config MSM_QDSP6V2_CODECS
2207 bool "Audio QDSP6V2 APR support"
2208 depends on MSM_SMD
2209 help
2210 Enable Audio codecs with APR IPC protocol support between
2211 application processor and QDSP6 for B-family. APR is
2212 used by audio driver to configure QDSP6's
2213 ASM, ADM and AFE.
2214
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002215config MSM_AUDIO_QDSP6
2216 bool "QDSP6 HW Audio support"
2217 select SND_SOC_MSM_QDSP6_INTF
2218 default n
2219 help
2220 Enable HW audio support in QDSP6.
2221 QDSP6 can support HW encoder & decoder and audio processing
2222
Harmandeep Singhe5ddfe32012-05-26 09:39:25 -07002223config MSM_AUDIO_QDSP6V2
2224 bool "QDSP6V2 HW Audio support"
2225 select SND_SOC_MSM_QDSP6V2_INTF
2226 help
2227 Enable HW audio support in QDSP6V2.
2228 QDSP6V2 can support HW encoder & decoder and
2229 audio processing. It will enable support for
2230 AAC, AMRNB, AMRWB, EVRC, MP3, QCELP among
2231 others.
2232
Baruch Eruchimovitche9cbfc12011-10-09 19:47:08 +02002233config MSM_ULTRASOUND
2234 bool "MSM ultrasound support"
2235 depends on MSM_AUDIO_QDSP6
2236 help
2237 Enable support for qdsp6/ultrasound.
2238
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07002239config MSM_RPC_VIBRATOR
2240 bool "RPC based MSM Vibrator Support"
2241 depends on MSM_ONCRPCROUTER
2242 help
2243 Enable the vibrator support on MSM over RPC. The vibrator
2244 is connected on the PMIC. Say Y if you want to enable this
2245 feature.
2246
2247config PM8XXX_RPC_VIBRATOR
2248 bool "RPC based Vibrator on PM8xxx PMICs"
2249 depends on MSM_RPC_VIBRATOR
2250 help
2251 Enable the vibrator support on MSM over RPC. The vibrator
2252 is connected on the PM8XXX PMIC. Say Y if you want to enable
2253 this feature.
2254
2255config MSM_SPM_V1
2256 bool "Driver support for SPM Version 1"
2257 help
2258 Enables the support for Version 1 of the SPM driver. SPM hardware is
2259 used to manage the processor power during sleep. The driver allows
2260 configuring SPM to allow different power modes.
2261
2262config MSM_SPM_V2
2263 bool "Driver support for SPM Version 2"
2264 help
2265 Enables the support for Version 2 of the SPM driver. SPM hardware is
2266 used to manage the processor power during sleep. The driver allows
2267 configuring SPM to allow different power modes.
2268
2269config MSM_L2_SPM
2270 bool "SPM support for L2 cache"
2271 depends on MSM_SPM_V2
2272 help
2273 Enable SPM driver support for L2 cache. Some MSM chipsets allow
2274 control of L2 cache low power mode with a Subsystem Power manager.
2275 Enabling this driver allows configuring L2 SPM for low power modes
2276 on supported chipsets.
2277
Laura Abbott2d1760b2011-09-29 21:31:24 -07002278config MSM_MULTIMEDIA_USE_ION
2279 bool "Multimedia suport using Ion"
2280 depends on ION_MSM
2281 help
2282 Enable support for multimedia drivers using Ion for buffer management
2283 instead of pmem. Selecting this may also involve userspace
2284 dependencies as well.
2285
Naveen Ramaraj51f5e8b2012-04-09 15:58:40 -07002286config MSM_OCMEM
2287 bool "MSM On-Chip memory driver (OCMEM)"
2288 help
2289 Enable support for On-Chip Memory available on certain MSM chipsets.
2290 OCMEM is a low latency, high performance pool shared by subsystems.
2291
Laura Abbottad340ff2012-01-04 14:23:48 -08002292config MSM_RTB
2293 bool "Register tracing"
2294 help
2295 Add support for logging different events to a small uncached
2296 region. This is designed to aid in debugging reset cases where the
2297 caches may not be flushed before the target resets.
2298
2299config MSM_RTB_SEPARATE_CPUS
2300 bool "Separate entries for each cpu"
2301 depends on MSM_RTB
Laura Abbott9959f982012-02-28 11:30:50 -08002302 depends on SMP
Laura Abbottad340ff2012-01-04 14:23:48 -08002303 help
2304 Under some circumstances, it may be beneficial to give dedicated space
2305 for each cpu to log accesses. Selecting this option will log each cpu
2306 separately. This will guarantee that the last acesses for each cpu
2307 will be logged but there will be fewer entries per cpu
2308
Stepan Moskovchenko57884842012-06-07 17:35:49 -07002309config MSM_EBI_ERP
2310 bool "External Bus Interface (EBI) error reporting"
2311 help
2312 Say 'Y' here to enable reporting of external bus interface errors to
2313 the kernel log. Information such as the offending address and
2314 transaction type will be logged. This may be useful for debugging
2315 seemingly broken memory accesses.
2316
2317 For production builds, you should probably say 'N' here.
2318
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002319config MSM_CACHE_ERP
2320 bool "Cache / CPU error reporting"
2321 depends on ARCH_MSM_KRAIT
2322 help
2323 Say 'Y' here to enable reporting of cache and TLB errors to the kernel
2324 log. Enabling this feature can be used as a system debugging technique
2325 if cache corruption is suspected. Cache error statistics will also be
2326 reported in /proc/cpu/msm_cache_erp.
2327
2328 For production builds, you should probably say 'N' here.
2329
2330config MSM_L1_ERR_PANIC
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002331 bool "Panic on L1 cache errors"
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002332 depends on MSM_CACHE_ERP
2333 help
Stepan Moskovchenko1b0c1742012-04-30 14:53:16 -07002334 To cause the kernel to panic whenever an L1 cache error is detected, say
2335 'Y' here. This may be useful as a debugging technique if general system
2336 instability is suspected.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002337
2338 For production builds, you should probably say 'N' here.
2339
Stepan Moskovchenko7035f652012-05-31 17:48:01 -07002340config MSM_L1_ERR_LOG
2341 bool "Log CPU ERP events to system memory"
2342 depends on MSM_CACHE_ERP
2343 help
2344 Enable logging CPU ERP events to an area of memory that will be
2345 preserved across a system reset. This may be useful for detecting and
2346 troubleshooting ERP-related system crashes in the field.
2347
2348 For production builds, you may want to say 'Y' here.
2349
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002350config MSM_L2_ERP_PRINT_ACCESS_ERRORS
2351 bool "Report L2 master port slave/decode errors in kernel log"
2352 depends on MSM_CACHE_ERP
2353 help
2354 Master port errors can occur when a memory request is not properly
2355 handled by the destination slave. This can occur if the destination
2356 register does not exist or is inaccessible due to security
2357 restrictions or (in some cases) clock configuration. Enabling this
2358 option will cause a backtrace to be printed to the kernel log whenever
2359 such an error is encountered. Note that the error is reported as an
2360 interrupt rather than as an exception, meaning that the backtrace may
2361 have some skid. This option may help with debugging, though production
2362 builds should probably say 'N' here.
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002363
2364config MSM_L2_ERP_PORT_PANIC
2365 bool "Panic on L2 master port errors"
Stepan Moskovchenkoe9a5dc12012-04-03 20:25:49 -07002366 depends on MSM_CACHE_ERP && MSM_L2_ERP_PRINT_ACCESS_ERRORS
Stepan Moskovchenko07552e12012-02-29 20:09:32 -08002367 help
2368 Master port errors can occur when a memory request is not properly
2369 handled by the destination slave. Enable this option to catch drivers
2370 which attempt to access bad areas of the address space, or access
2371 hardware registers in an improper state (such as certain clocks not
2372 being on). This option may help with debugging, though production
2373 builds should probably say 'N' here.
2374
2375config MSM_L2_ERP_1BIT_PANIC
2376 bool "Panic on recoverable L2 soft errors"
2377 depends on MSM_CACHE_ERP
2378 help
2379 Enable this option to cause a kernel panic whenever the L2 cache
2380 encounters a single-bit (correctable) soft error. This option should
2381 only be enabled when doing low-level debugging where cache corruption
2382 is suspected.
2383
2384 For production builds, you should definitely say 'N' here.
2385
2386config MSM_L2_ERP_2BIT_PANIC
2387 bool "Panic on unrecoverable L2 soft errors"
2388 depends on MSM_CACHE_ERP
2389 help
2390 Enable this option to cause a kernel panic whenever the L2 cache
2391 encounters a double-bit (non-correctable) soft error. Debug builds
2392 will likely benefit from having this option enabled to catch cache
2393 problems as soon as possible.
2394
2395 For production builds, it may be acceptable to say 'N' here, since
2396 an uncorrectable error might not necessarily cause further problems.
Laura Abbottad340ff2012-01-04 14:23:48 -08002397
Praveen Chidambaramf53ef1b2011-12-06 08:27:49 -07002398config MSM_DCVS
2399 bool "Use MSM DCVS for CPU/GPU Frequency control"
2400 depends on MSM_SCM
2401 help
2402 Enable support for MSM DCVS to control all CPU and GPU core frequencies.
2403 The DCVS manager allows idle driver to feed the idle information to the
2404 algorithm and the algorithm returns a frequency for the core which is
2405 passed to the frequency change driver.
2406
Taniya Dasc43e6872012-03-21 16:41:14 +05302407config HAVE_ARCH_HAS_CURRENT_TIMER
2408 bool
Laura Abbott306bcc22012-03-08 11:24:53 -08002409
2410config MSM_CACHE_DUMP
2411 bool "Cache dumping support"
2412 help
2413 Add infrastructure to dump the L1 and L2 caches to an allocated buffer.
2414 This allows for analysis of the caches in case cache corruption is
2415 suspected.
2416
Laura Abbott7b637362012-03-29 16:43:49 -07002417config MSM_CACHE_DUMP_ON_PANIC
2418 bool "Dump caches on panic"
2419 depends on MSM_CACHE_DUMP
2420 help
2421 By default, the caches are flushed on panic. This means that trying to
2422 look at them in a RAM dump will give useless data. Select this if you
2423 want to dump the L1 and L2 caches on panic before any flush occurs.
2424 If unsure, say N
2425
Jack Phamccbbfab2012-04-09 19:50:20 -07002426config MSM_HSIC_SYSMON
2427 tristate "MSM HSIC system monitor driver"
2428 depends on USB
2429 help
2430 Add support for bridging with the system monitor interface of MDM
2431 over HSIC. This driver allows the local system monitor to
2432 communicate with the remote system monitor interface.
2433
2434config MSM_HSIC_SYSMON_TEST
2435 tristate "MSM HSIC system monitor bridge test"
2436 depends on USB && MSM_HSIC_SYSMON && DEBUG_FS
2437 help
2438 Enable the test hook for the Qualcomm system monitor HSIC driver.
2439 This will create a debugfs file entry named "hsic_sysmon_test" which
2440 can be read and written to send character data to the sysmon port of
2441 the modem over USB.
2442
Brian Swetland9e73c842007-11-26 04:12:13 -08002443endif