blob: 07e9dd5eda26520dbb6f0698ed80f6df698c4426 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001menu "Kernel hacking"
2
3source "lib/Kconfig.debug"
4
Russell King1fd15b82013-10-23 16:13:02 +01005config ARM_PTDUMP
6 bool "Export kernel pagetable layout to userspace via debugfs"
7 depends on DEBUG_KERNEL
8 select DEBUG_FS
9 ---help---
10 Say Y here if you want to show the kernel pagetable layout in a
11 debugfs file. This information is only useful for kernel developers
12 who are working in architecture specific areas of the kernel.
13 It is probably not a good idea to enable this feature in a production
14 kernel.
15 If in doubt, say "N"
16
Nicolas Pitre087aaff2010-09-22 18:34:36 -040017config STRICT_DEVMEM
18 bool "Filter access to /dev/mem"
19 depends on MMU
20 ---help---
21 If this option is disabled, you allow userspace (root) access to all
22 of memory, including kernel and userspace memory. Accidental
23 access to this is obviously disastrous, but specific access can
24 be used by people debugging the kernel.
25
26 If this option is switched on, the /dev/mem file only allows
27 userspace access to memory mapped peripherals.
28
29 If in doubt, say Y.
30
Catalin Marinasadf8b372009-02-12 13:56:34 +010031# RMK wants arm kernels compiled with frame pointers or stack unwinding.
Linus Torvalds1da177e2005-04-16 15:20:36 -070032# If you know what you are doing and are willing to live without stack
33# traces, you can get a slightly smaller kernel by setting this option to
34# n, but then RMK will have to kill you ;).
35config FRAME_POINTER
36 bool
Catalin Marinas16c79652009-07-24 12:33:02 +010037 depends on !THUMB2_KERNEL
Rabin Vincent0e341af2010-11-06 23:03:53 +053038 default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
Linus Torvalds1da177e2005-04-16 15:20:36 -070039 help
40 If you say N here, the resulting kernel will be slightly smaller and
Catalin Marinasadf8b372009-02-12 13:56:34 +010041 faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
42 when a problem occurs with the kernel, the information that is
43 reported is severely limited.
44
45config ARM_UNWIND
Russell King4a50bfe2010-12-05 23:06:22 +000046 bool "Enable stack unwinding support (EXPERIMENTAL)"
Kees Cookd6f94fa2013-01-16 18:53:14 -080047 depends on AEABI
Catalin Marinasadf8b372009-02-12 13:56:34 +010048 default y
49 help
50 This option enables stack unwinding support in the kernel
51 using the information automatically generated by the
52 compiler. The resulting kernel image is slightly bigger but
53 the performance is not affected. Currently, this feature
54 only works with EABI compilers. If unsure say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -070055
Rabin Vincent09bfafa2010-08-10 19:32:37 +010056config OLD_MCOUNT
57 bool
58 depends on FUNCTION_TRACER && FRAME_POINTER
59 default y
60
Linus Torvalds1da177e2005-04-16 15:20:36 -070061config DEBUG_USER
62 bool "Verbose user fault messages"
63 help
64 When a user program crashes due to an exception, the kernel can
65 print a brief message explaining what the problem was. This is
66 sometimes helpful for debugging but serves no purpose on a
67 production system. Most people should say N here.
68
69 In addition, you need to pass user_debug=N on the kernel command
70 line to enable this feature. N consists of the sum of:
71
72 1 - undefined instruction events
73 2 - system calls
74 4 - invalid data aborts
75 8 - SIGSEGV faults
76 16 - SIGBUS faults
77
Linus Torvalds1da177e2005-04-16 15:20:36 -070078# These options are only for real kernel hackers who want to get their hands dirty.
79config DEBUG_LL
Will Deacon4f5ef922011-09-01 19:04:44 +010080 bool "Kernel low-level debugging functions (read help!)"
Linus Torvalds1da177e2005-04-16 15:20:36 -070081 depends on DEBUG_KERNEL
82 help
Russell King35efb602005-09-09 15:57:17 +010083 Say Y here to include definitions of printascii, printch, printhex
Linus Torvalds1da177e2005-04-16 15:20:36 -070084 in the kernel. This is helpful if you are debugging code that
85 executes before the console is initialized.
86
Will Deacon4f5ef922011-09-01 19:04:44 +010087 Note that selecting this option will limit the kernel to a single
88 UART definition, as specified below. Attempting to boot the kernel
89 image on a different platform *will not work*, so this option should
90 not be enabled for kernels that are intended to be portable.
91
Will Deacon17916b22011-09-01 18:58:51 +010092choice
93 prompt "Kernel low-level debugging port"
94 depends on DEBUG_LL
95
Jean-Christophe PLAGNIOL-VILLARD13079a72011-11-02 01:43:31 +080096 config AT91_DEBUG_LL_DBGU0
97 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl"
98 depends on HAVE_AT91_DBGU0
99
100 config AT91_DEBUG_LL_DBGU1
Jean-Christophe PLAGNIOL-VILLARD9918cea2012-01-26 14:07:09 +0100101 bool "Kernel low-level debugging on 9263 and 9g45"
Jean-Christophe PLAGNIOL-VILLARD13079a72011-11-02 01:43:31 +0800102 depends on HAVE_AT91_DBGU1
103
Stephen Warrenf1ac9222013-03-11 22:40:18 -0600104 config DEBUG_BCM2835
105 bool "Kernel low-level debugging on BCM2835 PL011 UART"
106 depends on ARCH_BCM2835
Russell King5c972af2013-07-07 12:32:16 +0100107 select DEBUG_UART_PL01X
Stephen Warrenf1ac9222013-03-11 22:40:18 -0600108
Hauke Mehrtens06580272014-02-04 00:01:44 +0100109 config DEBUG_BCM_5301X
110 bool "Kernel low-level debugging on BCM5301X UART1"
111 depends on ARCH_BCM_5301X
112 select DEBUG_UART_PL01X
113
Christian Daudt753d1242013-12-23 09:00:01 +0100114 config DEBUG_BCM_KONA_UART
115 bool "Kernel low-level debugging messages via BCM KONA UART"
Florian Fainelli7aa20772014-03-06 09:45:55 -0800116 depends on ARCH_BCM_MOBILE
Christian Daudt753d1242013-12-23 09:00:01 +0100117 select DEBUG_UART_8250
118 help
119 Say Y here if you want kernel low-level debugging support
120 on Broadcom SoC platforms.
121 This low level debug works for Broadcom
122 mobile SoCs in the Kona family of chips (e.g. bcm28155,
123 bcm11351, etc...)
124
Florian Fainellib51312b2014-01-08 09:19:50 -0800125 config DEBUG_BCM63XX
126 bool "Kernel low-level debugging on BCM63XX UART"
127 depends on ARCH_BCM_63XX
128 select DEBUG_UART_BCM63XX
129
Sebastian Hesselbarthcaad0b42013-09-09 14:10:54 +0200130 config DEBUG_BERLIN_UART
131 bool "Marvell Berlin SoC Debug UART"
132 depends on ARCH_BERLIN
133 select DEBUG_UART_8250
134 help
135 Say Y here if you want kernel low-level debugging support
136 on Marvell Berlin SoC based platforms.
137
Stephen Boyd164acf92011-09-22 20:28:35 +0100138 config DEBUG_CLPS711X_UART1
139 bool "Kernel low-level debugging messages via UART1"
140 depends on ARCH_CLPS711X
141 help
142 Say Y here if you want the debug print routines to direct
143 their output to the first serial port on these devices.
Will Deacon17916b22011-09-01 18:58:51 +0100144
145 config DEBUG_CLPS711X_UART2
146 bool "Kernel low-level debugging messages via UART2"
147 depends on ARCH_CLPS711X
148 help
149 Say Y here if you want the debug print routines to direct
150 their output to the second serial port on these devices.
Will Deacon17916b22011-09-01 18:58:51 +0100151
Arnd Bergmann29c9b7b2013-03-14 16:02:59 +0100152 config DEBUG_CNS3XXX
153 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
154 depends on ARCH_CNS3XXX
Russell King5c972af2013-07-07 12:32:16 +0100155 select DEBUG_UART_PL01X
Arnd Bergmann29c9b7b2013-03-14 16:02:59 +0100156 help
157 Say Y here if you want the debug print routines to direct
158 their output to the CNS3xxx UART0.
159
Uwe Kleine-König477099f2012-03-22 10:29:23 +0100160 config DEBUG_DAVINCI_DA8XX_UART1
161 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
162 depends on ARCH_DAVINCI_DA8XX
Russell King97bd1a42013-07-07 16:18:34 +0100163 select DEBUG_UART_8250
Uwe Kleine-König477099f2012-03-22 10:29:23 +0100164 help
165 Say Y here if you want the debug print routines to direct
166 their output to UART1 serial port on DaVinci DA8XX devices.
167
168 config DEBUG_DAVINCI_DA8XX_UART2
169 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
170 depends on ARCH_DAVINCI_DA8XX
Russell King97bd1a42013-07-07 16:18:34 +0100171 select DEBUG_UART_8250
Uwe Kleine-König477099f2012-03-22 10:29:23 +0100172 help
173 Say Y here if you want the debug print routines to direct
174 their output to UART2 serial port on DaVinci DA8XX devices.
175
176 config DEBUG_DAVINCI_DMx_UART0
177 bool "Kernel low-level debugging on DaVinci DMx using UART0"
178 depends on ARCH_DAVINCI_DMx
Russell King97bd1a42013-07-07 16:18:34 +0100179 select DEBUG_UART_8250
Uwe Kleine-König477099f2012-03-22 10:29:23 +0100180 help
181 Say Y here if you want the debug print routines to direct
182 their output to UART0 serial port on DaVinci DMx devices.
183
Nick Bowleraaf5e0b2012-11-05 16:45:49 -0500184 config DEBUG_ZYNQ_UART0
185 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
186 depends on ARCH_ZYNQ
187 help
188 Say Y here if you want the debug print routines to direct
189 their output to UART0 on the Zynq platform.
190
191 config DEBUG_ZYNQ_UART1
192 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
193 depends on ARCH_ZYNQ
194 help
195 Say Y here if you want the debug print routines to direct
196 their output to UART1 on the Zynq platform.
197
198 If you have a ZC702 board and want early boot messages to
199 appear on the USB serial adaptor, select this option.
200
Russell Kinge76f4752011-11-23 17:44:05 +0000201 config DEBUG_DC21285_PORT
202 bool "Kernel low-level debugging messages via footbridge serial port"
203 depends on FOOTBRIDGE
204 help
205 Say Y here if you want the debug print routines to direct
206 their output to the serial port in the DC21285 (Footbridge).
207
208 config DEBUG_FOOTBRIDGE_COM1
209 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
210 depends on FOOTBRIDGE
211 help
212 Say Y here if you want the debug print routines to direct
213 their output to the 8250 at PCI COM1.
214
Haojian Zhuang8d258be2013-08-24 06:58:39 +0100215 config DEBUG_HI3620_UART
216 bool "Hisilicon HI3620 Debug UART"
217 depends on ARCH_HI3xxx
218 select DEBUG_UART_PL01X
219 help
220 Say Y here if you want kernel low-level debugging support
221 on HI3620 UART.
222
223 config DEBUG_HI3716_UART
224 bool "Hisilicon Hi3716 Debug UART"
225 depends on ARCH_HI3xxx
226 select DEBUG_UART_PL01X
227 help
228 Say Y here if you want kernel low-level debugging support
229 on HI3716 UART.
230
Haifeng Yan12aae302014-04-11 11:40:58 +0800231 config DEBUG_HIX5HD2_UART
232 bool "Hisilicon Hix5hd2 Debug UART"
233 depends on ARCH_HIX5HD2
234 select DEBUG_UART_PL01X
235 help
236 Say Y here if you want kernel low-level debugging support
237 on Hix5hd2 UART.
238
Rob Herring220e6cf2011-06-07 10:02:55 -0500239 config DEBUG_HIGHBANK_UART
240 bool "Kernel low-level debugging messages via Highbank UART"
241 depends on ARCH_HIGHBANK
Russell King5c972af2013-07-07 12:32:16 +0100242 select DEBUG_UART_PL01X
Rob Herring220e6cf2011-06-07 10:02:55 -0500243 help
244 Say Y here if you want the debug print routines to direct
245 their output to the UART on Highbank based devices.
246
Shawn Guof350b862011-08-19 05:56:59 +0100247 config DEBUG_IMX1_UART
248 bool "i.MX1 Debug UART"
249 depends on SOC_IMX1
250 help
251 Say Y here if you want kernel low-level debugging support
252 on i.MX1.
253
254 config DEBUG_IMX23_UART
255 bool "i.MX23 Debug UART"
256 depends on SOC_IMX23
Russell King5c972af2013-07-07 12:32:16 +0100257 select DEBUG_UART_PL01X
Shawn Guof350b862011-08-19 05:56:59 +0100258 help
259 Say Y here if you want kernel low-level debugging support
260 on i.MX23.
261
262 config DEBUG_IMX25_UART
263 bool "i.MX25 Debug UART"
264 depends on SOC_IMX25
265 help
266 Say Y here if you want kernel low-level debugging support
267 on i.MX25.
268
269 config DEBUG_IMX21_IMX27_UART
270 bool "i.MX21 and i.MX27 Debug UART"
271 depends on SOC_IMX21 || SOC_IMX27
272 help
273 Say Y here if you want kernel low-level debugging support
274 on i.MX21 or i.MX27.
275
276 config DEBUG_IMX28_UART
277 bool "i.MX28 Debug UART"
278 depends on SOC_IMX28
Russell King5c972af2013-07-07 12:32:16 +0100279 select DEBUG_UART_PL01X
Shawn Guof350b862011-08-19 05:56:59 +0100280 help
281 Say Y here if you want kernel low-level debugging support
282 on i.MX28.
283
Shawn Guo4ad625d2012-12-12 18:54:01 +0800284 config DEBUG_IMX31_UART
285 bool "i.MX31 Debug UART"
286 depends on SOC_IMX31
Shawn Guof350b862011-08-19 05:56:59 +0100287 help
288 Say Y here if you want kernel low-level debugging support
Shawn Guo4ad625d2012-12-12 18:54:01 +0800289 on i.MX31.
290
291 config DEBUG_IMX35_UART
292 bool "i.MX35 Debug UART"
293 depends on SOC_IMX35
294 help
295 Say Y here if you want kernel low-level debugging support
296 on i.MX35.
Shawn Guof350b862011-08-19 05:56:59 +0100297
Greg Ungererad364a72013-10-29 15:15:51 +1000298 config DEBUG_IMX50_UART
299 bool "i.MX50 Debug UART"
300 depends on SOC_IMX50
301 help
302 Say Y here if you want kernel low-level debugging support
303 on i.MX50.
304
Shawn Guof350b862011-08-19 05:56:59 +0100305 config DEBUG_IMX51_UART
306 bool "i.MX51 Debug UART"
307 depends on SOC_IMX51
308 help
309 Say Y here if you want kernel low-level debugging support
310 on i.MX51.
311
Fabio Estevam7356420c2013-01-22 10:40:55 -0200312 config DEBUG_IMX53_UART
313 bool "i.MX53 Debug UART"
314 depends on SOC_IMX53
Shawn Guof350b862011-08-19 05:56:59 +0100315 help
316 Say Y here if you want kernel low-level debugging support
Fabio Estevam7356420c2013-01-22 10:40:55 -0200317 on i.MX53.
Shawn Guof350b862011-08-19 05:56:59 +0100318
Shawn Guo49c9e602012-10-08 13:44:29 +0800319 config DEBUG_IMX6Q_UART
Shawn Guo3c03a2f2013-04-01 22:13:32 +0800320 bool "i.MX6Q/DL Debug UART"
Dirk Behme785d7fa2012-04-27 10:15:45 +0200321 depends on SOC_IMX6Q
322 help
323 Say Y here if you want kernel low-level debugging support
Shawn Guo3c03a2f2013-04-01 22:13:32 +0800324 on i.MX6Q/DL.
Shawn Guobac89d72011-10-02 15:09:11 +0800325
Shawn Guo34e8a162013-05-03 11:21:03 +0800326 config DEBUG_IMX6SL_UART
327 bool "i.MX6SL Debug UART"
328 depends on SOC_IMX6SL
329 help
330 Say Y here if you want kernel low-level debugging support
331 on i.MX6SL.
332
Shawn Guo74368e82014-05-11 21:53:48 +0800333 config DEBUG_IMX6SX_UART
334 bool "i.MX6SX Debug UART"
335 depends on SOC_IMX6SX
336 help
337 Say Y here if you want kernel low-level debugging support
338 on i.MX6SX.
339
Santosh Shilimkar828989a2013-06-10 11:27:13 -0400340 config DEBUG_KEYSTONE_UART0
341 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
342 depends on ARCH_KEYSTONE
Russell Kingf2acf002013-07-07 16:05:49 +0100343 select DEBUG_UART_8250
Santosh Shilimkar828989a2013-06-10 11:27:13 -0400344 help
345 Say Y here if you want the debug print routines to direct
346 their output to UART0 serial port on KEYSTONE2 devices.
347
348 config DEBUG_KEYSTONE_UART1
349 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
350 depends on ARCH_KEYSTONE
Russell Kingf2acf002013-07-07 16:05:49 +0100351 select DEBUG_UART_8250
Santosh Shilimkar828989a2013-06-10 11:27:13 -0400352 help
353 Say Y here if you want the debug print routines to direct
354 their output to UART1 serial port on KEYSTONE2 devices.
355
Haojian Zhuangfa4cd2a2012-08-10 23:49:41 +0800356 config DEBUG_MMP_UART2
357 bool "Kernel low-level debugging message via MMP UART2"
358 depends on ARCH_MMP
Russell King4a0036472013-07-06 23:13:15 +0100359 select DEBUG_UART_8250
Haojian Zhuangfa4cd2a2012-08-10 23:49:41 +0800360 help
361 Say Y here if you want kernel low-level debugging support
362 on MMP UART2.
363
364 config DEBUG_MMP_UART3
365 bool "Kernel low-level debugging message via MMP UART3"
366 depends on ARCH_MMP
Russell King4a0036472013-07-06 23:13:15 +0100367 select DEBUG_UART_8250
Haojian Zhuangfa4cd2a2012-08-10 23:49:41 +0800368 help
369 Say Y here if you want kernel low-level debugging support
370 on MMP UART3.
371
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300372 config DEBUG_MSM_UART
373 bool "Kernel low-level debugging messages via MSM UART"
374 depends on ARCH_MSM
Stephen Boyd650e3f02011-11-08 10:33:03 -0800375 help
376 Say Y here if you want the debug print routines to direct
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300377 their output to the serial port on MSM devices.
Stephen Boyd650e3f02011-11-08 10:33:03 -0800378
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300379 ARCH DEBUG_UART_PHYS DEBUG_UART_BASE #
380 MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1
381 MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2
382 MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3
Stephen Boyd650e3f02011-11-08 10:33:03 -0800383
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300384 MSM7X30 0xaca00000 0xe1000000 UART1
385 MSM7X30 0xacb00000 0xe1000000 UART2
386 MSM7X30 0xacc00000 0xe1000000 UART3
Stephen Boyd650e3f02011-11-08 10:33:03 -0800387
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300388 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
389 options based on your needs.
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800390
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300391 config DEBUG_QCOM_UARTDM
392 bool "Kernel low-level debugging messages via QCOM UARTDM"
393 depends on ARCH_QCOM
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800394 help
395 Say Y here if you want the debug print routines to direct
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300396 their output to the serial port on Qualcomm devices.
Stephen Boyda3d3ef92011-11-08 10:33:04 -0800397
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300398 ARCH DEBUG_UART_PHYS DEBUG_UART_BASE
Georgi Djakov2f528dd2014-05-23 18:12:32 +0300399 APQ8084 0xf995e000 0xfa75e000
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +0300400 MSM8X60 0x19c40000 0xf0040000
401 MSM8960 0x16440000 0xf0040000
402 MSM8974 0xf991e000 0xfa71e000
403
404 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
405 options based on your needs.
Rohit Vaswani3c8828f2013-10-17 22:15:35 +0100406
Rob Herringbfd5af92012-09-02 14:41:34 -0500407 config DEBUG_MVEBU_UART
Thomas Petazzonic2804cd2013-06-05 09:05:00 +0200408 bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
Rob Herringbfd5af92012-09-02 14:41:34 -0500409 depends on ARCH_MVEBU
Russell King4a0036472013-07-06 23:13:15 +0100410 select DEBUG_UART_8250
Rob Herringbfd5af92012-09-02 14:41:34 -0500411 help
412 Say Y here if you want kernel low-level debugging support
413 on MVEBU based platforms.
414
Thomas Petazzonic2804cd2013-06-05 09:05:00 +0200415 This option should be used with the old bootloaders
416 that left the internal registers mapped at
417 0xd0000000. As of today, this is the case on
418 platforms such as the Globalscale Mirabox or the
419 Plathome OpenBlocks AX3, when using the original
420 bootloader.
421
422 If the wrong DEBUG_MVEBU_UART* option is selected,
423 when u-boot hands over to the kernel, the system
424 silently crashes, with no serial output at all.
425
426 config DEBUG_MVEBU_UART_ALTERNATE
427 bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
428 depends on ARCH_MVEBU
Russell King4a0036472013-07-06 23:13:15 +0100429 select DEBUG_UART_8250
Thomas Petazzonic2804cd2013-06-05 09:05:00 +0200430 help
431 Say Y here if you want kernel low-level debugging support
432 on MVEBU based platforms.
433
434 This option should be used with the new bootloaders
435 that remap the internal registers at 0xf1000000.
436
437 If the wrong DEBUG_MVEBU_UART* option is selected,
438 when u-boot hands over to the kernel, the system
439 silently crashes, with no serial output at all.
440
Shawn Guoc7c3eac2013-05-12 17:22:17 +0800441 config DEBUG_VF_UART
442 bool "Vybrid UART"
443 depends on SOC_VF610
444 help
445 Say Y here if you want kernel low-level debugging support
446 on Vybrid based platforms.
447
Linus Walleij266c3472013-02-27 22:39:57 +0100448 config DEBUG_NOMADIK_UART
449 bool "Kernel low-level debugging messages via NOMADIK UART"
450 depends on ARCH_NOMADIK
Russell King5c972af2013-07-07 12:32:16 +0100451 select DEBUG_UART_PL01X
Linus Walleij266c3472013-02-27 22:39:57 +0100452 help
453 Say Y here if you want kernel low-level debugging support
454 on NOMADIK based platforms.
455
Daniel Tang9851ca52013-06-11 18:40:17 +1000456 config DEBUG_NSPIRE_CLASSIC_UART
457 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
458 depends on ARCH_NSPIRE
Russell King4a0036472013-07-06 23:13:15 +0100459 select DEBUG_UART_8250
Daniel Tang9851ca52013-06-11 18:40:17 +1000460 help
461 Say Y here if you want kernel low-level debugging support
462 on TI-NSPIRE classic models.
463
464 config DEBUG_NSPIRE_CX_UART
465 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
466 depends on ARCH_NSPIRE
Russell King5c972af2013-07-07 12:32:16 +0100467 select DEBUG_UART_PL01X
Daniel Tang9851ca52013-06-11 18:40:17 +1000468 help
469 Say Y here if you want kernel low-level debugging support
470 on TI-NSPIRE CX models.
471
Russell Kingcce278d2013-07-06 14:23:30 +0100472 config DEBUG_OMAP2UART1
473 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
Tony Lindgren808b7e02013-01-11 11:24:19 -0800474 depends on ARCH_OMAP2PLUS
Russell Kingcce278d2013-07-06 14:23:30 +0100475 select DEBUG_OMAP2PLUS_UART
Tony Lindgren808b7e02013-01-11 11:24:19 -0800476 help
Russell Kingcce278d2013-07-06 14:23:30 +0100477 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
478 omap3 torpedo and 3530 lv som.
479
480 config DEBUG_OMAP2UART2
481 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
482 depends on ARCH_OMAP2PLUS
483 select DEBUG_OMAP2PLUS_UART
484
485 config DEBUG_OMAP2UART3
486 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
487 depends on ARCH_OMAP2PLUS
488 select DEBUG_OMAP2PLUS_UART
489
490 config DEBUG_OMAP3UART3
491 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
492 depends on ARCH_OMAP2PLUS
493 select DEBUG_OMAP2PLUS_UART
494 help
495 This covers at least cm_t3x, beagle, crane, devkit8000,
496 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
497 and 3517evm.
498
499 config DEBUG_OMAP4UART3
500 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
501 depends on ARCH_OMAP2PLUS
502 select DEBUG_OMAP2PLUS_UART
503
504 config DEBUG_OMAP3UART4
505 bool "Kernel low-level debugging messages via OMAP36XX UART4"
506 depends on ARCH_OMAP2PLUS
507 select DEBUG_OMAP2PLUS_UART
508
509 config DEBUG_OMAP4UART4
510 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
511 depends on ARCH_OMAP2PLUS
512 select DEBUG_OMAP2PLUS_UART
513
514 config DEBUG_TI81XXUART1
515 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
516 depends on ARCH_OMAP2PLUS
517 select DEBUG_OMAP2PLUS_UART
518
519 config DEBUG_TI81XXUART2
520 bool "Kernel low-level debugging messages via TI81XX UART2"
521 depends on ARCH_OMAP2PLUS
522 select DEBUG_OMAP2PLUS_UART
523
524 config DEBUG_TI81XXUART3
525 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
526 depends on ARCH_OMAP2PLUS
527 select DEBUG_OMAP2PLUS_UART
528
529 config DEBUG_AM33XXUART1
530 bool "Kernel low-level debugging messages via AM33XX UART1"
531 depends on ARCH_OMAP2PLUS
532 select DEBUG_OMAP2PLUS_UART
533
534 config DEBUG_ZOOM_UART
535 bool "Kernel low-level debugging messages via Zoom2/3 UART"
536 depends on ARCH_OMAP2PLUS
537 select DEBUG_OMAP2PLUS_UART
Tony Lindgren808b7e02013-01-11 11:24:19 -0800538
Rob Herring59bba2a2012-09-06 14:14:46 -0500539 config DEBUG_PICOXCELL_UART
540 depends on ARCH_PICOXCELL
541 bool "Use PicoXcell UART for low-level debug"
Russell King0b4cccb2013-07-07 11:42:46 +0100542 select DEBUG_UART_8250
Rob Herring59bba2a2012-09-06 14:14:46 -0500543 help
544 Say Y here if you want kernel low-level debugging support
545 on PicoXcell based platforms.
546
Haojian Zhuang0a43cd32013-04-10 11:17:04 +0800547 config DEBUG_PXA_UART1
548 depends on ARCH_PXA
549 bool "Use PXA UART1 for low-level debug"
Russell King4a0036472013-07-06 23:13:15 +0100550 select DEBUG_UART_8250
Haojian Zhuang0a43cd32013-04-10 11:17:04 +0800551 help
552 Say Y here if you want kernel low-level debugging support
553 on PXA UART1.
554
Russell Kinge76f4752011-11-23 17:44:05 +0000555 config DEBUG_REALVIEW_STD_PORT
556 bool "RealView Default UART"
557 depends on ARCH_REALVIEW
Russell King5c972af2013-07-07 12:32:16 +0100558 select DEBUG_UART_PL01X
Russell Kinge76f4752011-11-23 17:44:05 +0000559 help
560 Say Y here if you want the debug print routines to direct
561 their output to the serial port on RealView EB, PB11MP, PBA8
562 and PBX platforms.
563
564 config DEBUG_REALVIEW_PB1176_PORT
565 bool "RealView PB1176 UART"
566 depends on MACH_REALVIEW_PB1176
Russell King5c972af2013-07-07 12:32:16 +0100567 select DEBUG_UART_PL01X
Russell Kinge76f4752011-11-23 17:44:05 +0000568 help
569 Say Y here if you want the debug print routines to direct
570 their output to the standard serial port on the RealView
571 PB1176 platform.
572
Russell Kingcce278d2013-07-06 14:23:30 +0100573 config DEBUG_RK29_UART0
574 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
Heiko Stuebner38bd6892013-05-28 22:13:52 +0200575 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100576 select DEBUG_UART_8250
Russell Kingcce278d2013-07-06 14:23:30 +0100577 help
578 Say Y here if you want kernel low-level debugging support
579 on Rockchip based platforms.
580
581 config DEBUG_RK29_UART1
582 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
583 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100584 select DEBUG_UART_8250
Russell Kingcce278d2013-07-06 14:23:30 +0100585 help
586 Say Y here if you want kernel low-level debugging support
587 on Rockchip based platforms.
588
589 config DEBUG_RK29_UART2
590 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
591 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100592 select DEBUG_UART_8250
Russell Kingcce278d2013-07-06 14:23:30 +0100593 help
594 Say Y here if you want kernel low-level debugging support
595 on Rockchip based platforms.
596
597 config DEBUG_RK3X_UART0
Heiko Stuebneraa9c4f72014-07-16 17:08:14 +0200598 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
Russell Kingcce278d2013-07-06 14:23:30 +0100599 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100600 select DEBUG_UART_8250
Russell Kingcce278d2013-07-06 14:23:30 +0100601 help
602 Say Y here if you want kernel low-level debugging support
603 on Rockchip based platforms.
604
605 config DEBUG_RK3X_UART1
Heiko Stuebneraa9c4f72014-07-16 17:08:14 +0200606 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
Russell Kingcce278d2013-07-06 14:23:30 +0100607 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100608 select DEBUG_UART_8250
Russell Kingcce278d2013-07-06 14:23:30 +0100609 help
610 Say Y here if you want kernel low-level debugging support
611 on Rockchip based platforms.
612
613 config DEBUG_RK3X_UART2
Heiko Stuebneraa9c4f72014-07-16 17:08:14 +0200614 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
Russell Kingcce278d2013-07-06 14:23:30 +0100615 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100616 select DEBUG_UART_8250
Russell Kingcce278d2013-07-06 14:23:30 +0100617 help
618 Say Y here if you want kernel low-level debugging support
619 on Rockchip based platforms.
620
621 config DEBUG_RK3X_UART3
Heiko Stuebneraa9c4f72014-07-16 17:08:14 +0200622 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
Russell Kingcce278d2013-07-06 14:23:30 +0100623 depends on ARCH_ROCKCHIP
Russell King4a0036472013-07-06 23:13:15 +0100624 select DEBUG_UART_8250
Heiko Stuebner38bd6892013-05-28 22:13:52 +0200625 help
626 Say Y here if you want kernel low-level debugging support
627 on Rockchip based platforms.
628
Heiko Stuebnerefd02ee2014-06-28 13:31:17 +0200629 config DEBUG_RK32_UART2
630 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
631 depends on ARCH_ROCKCHIP
632 select DEBUG_UART_8250
633 help
634 Say Y here if you want kernel low-level debugging support
635 on Rockchip RK32xx based platforms.
636
Russell Kinge76f4752011-11-23 17:44:05 +0000637 config DEBUG_S3C_UART0
638 depends on PLAT_SAMSUNG
Arnd Bergmanna2e40712013-03-04 18:03:10 +0100639 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
Heiko Stuebner1899de22014-05-16 06:59:18 +0900640 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
Tomasz Figa7bab7d9e2014-07-03 14:39:41 +0200641 select DEBUG_S5PV210_UART if ARCH_S5PV210
Sachin Kamat5cc8a012014-07-05 06:27:45 +0900642 bool "Use Samsung S3C UART 0 for low-level debug"
Russell Kinge76f4752011-11-23 17:44:05 +0000643 help
644 Say Y here if you want the debug print routines to direct
645 their output to UART 0. The port must have been initialised
646 by the boot-loader before use.
647
Russell Kinge76f4752011-11-23 17:44:05 +0000648 config DEBUG_S3C_UART1
649 depends on PLAT_SAMSUNG
Arnd Bergmanna2e40712013-03-04 18:03:10 +0100650 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
Heiko Stuebner1899de22014-05-16 06:59:18 +0900651 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
Tomasz Figa7bab7d9e2014-07-03 14:39:41 +0200652 select DEBUG_S5PV210_UART if ARCH_S5PV210
Sachin Kamat5cc8a012014-07-05 06:27:45 +0900653 bool "Use Samsung S3C UART 1 for low-level debug"
Russell Kinge76f4752011-11-23 17:44:05 +0000654 help
655 Say Y here if you want the debug print routines to direct
656 their output to UART 1. The port must have been initialised
657 by the boot-loader before use.
658
Russell Kinge76f4752011-11-23 17:44:05 +0000659 config DEBUG_S3C_UART2
660 depends on PLAT_SAMSUNG
Arnd Bergmanna2e40712013-03-04 18:03:10 +0100661 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
Heiko Stuebner1899de22014-05-16 06:59:18 +0900662 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
Tomasz Figa7bab7d9e2014-07-03 14:39:41 +0200663 select DEBUG_S5PV210_UART if ARCH_S5PV210
Sachin Kamat5cc8a012014-07-05 06:27:45 +0900664 bool "Use Samsung S3C UART 2 for low-level debug"
Russell Kinge76f4752011-11-23 17:44:05 +0000665 help
666 Say Y here if you want the debug print routines to direct
667 their output to UART 2. The port must have been initialised
668 by the boot-loader before use.
669
Olof Johansson5fa23dd2012-11-22 14:24:04 +0900670 config DEBUG_S3C_UART3
Tomasz Figa7bab7d9e2014-07-03 14:39:41 +0200671 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
672 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
673 select DEBUG_S5PV210_UART if ARCH_S5PV210
Sachin Kamat5cc8a012014-07-05 06:27:45 +0900674 bool "Use Samsung S3C UART 3 for low-level debug"
Olof Johansson5fa23dd2012-11-22 14:24:04 +0900675 help
676 Say Y here if you want the debug print routines to direct
677 their output to UART 3. The port must have been initialised
678 by the boot-loader before use.
679
Heiko Stuebnerdaf67df2014-05-16 06:59:18 +0900680 config DEBUG_S3C2410_UART0
681 depends on ARCH_S3C24XX
682 select DEBUG_S3C2410_UART
683 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
684 help
685 Say Y here if you want the debug print routines to direct
686 their output to UART 0. The port must have been initialised
687 by the boot-loader before use.
688
689 config DEBUG_S3C2410_UART1
690 depends on ARCH_S3C24XX
691 select DEBUG_S3C2410_UART
692 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
693 help
694 Say Y here if you want the debug print routines to direct
695 their output to UART 1. The port must have been initialised
696 by the boot-loader before use.
697
698 config DEBUG_S3C2410_UART2
699 depends on ARCH_S3C24XX
700 select DEBUG_S3C2410_UART
701 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
702 help
703 Say Y here if you want the debug print routines to direct
704 their output to UART 2. The port must have been initialised
705 by the boot-loader before use.
706
Rob Herring6111bf72012-09-06 14:11:28 -0500707 config DEBUG_SOCFPGA_UART
708 depends on ARCH_SOCFPGA
709 bool "Use SOCFPGA UART for low-level debug"
Russell King0b4cccb2013-07-07 11:42:46 +0100710 select DEBUG_UART_8250
Rob Herring6111bf72012-09-06 14:11:28 -0500711 help
712 Say Y here if you want kernel low-level debugging support
713 on SOCFPGA based platforms.
714
Stefan Roeseaa251152012-11-19 12:09:41 +0100715 config DEBUG_SUNXI_UART0
716 bool "Kernel low-level debugging messages via sunXi UART0"
717 depends on ARCH_SUNXI
Russell King4a0036472013-07-06 23:13:15 +0100718 select DEBUG_UART_8250
Stefan Roeseaa251152012-11-19 12:09:41 +0100719 help
720 Say Y here if you want kernel low-level debugging support
721 on Allwinner A1X based platforms on the UART0.
722
Maxime Ripardcb84fa12012-11-08 12:40:49 +0100723 config DEBUG_SUNXI_UART1
724 bool "Kernel low-level debugging messages via sunXi UART1"
725 depends on ARCH_SUNXI
Russell King4a0036472013-07-06 23:13:15 +0100726 select DEBUG_UART_8250
Maxime Ripardcb84fa12012-11-08 12:40:49 +0100727 help
728 Say Y here if you want kernel low-level debugging support
729 on Allwinner A1X based platforms on the UART1.
730
Chen-Yu Tsaic4718542014-06-20 22:52:51 +0800731 config DEBUG_SUNXI_R_UART
732 bool "Kernel low-level debugging messages via sunXi R_UART"
733 depends on MACH_SUN6I || MACH_SUN8I
734 select DEBUG_UART_8250
735 help
736 Say Y here if you want kernel low-level debugging support
737 on Allwinner A31/A23 based platforms on the R_UART.
738
Russell Kingcce278d2013-07-06 14:23:30 +0100739 config TEGRA_DEBUG_UART_AUTO_ODMDATA
740 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
Stephen Warren46067802012-09-25 15:54:56 -0600741 depends on ARCH_TEGRA
Russell Kingcce278d2013-07-06 14:23:30 +0100742 select DEBUG_TEGRA_UART
743 help
744 Automatically determines which UART to use for low-level
745 debug based on the ODMDATA value. This value is part of
746 the BCT, and is written to the boot memory device using
747 nvflash, or other flashing tool. When bits 19:18 are 3,
748 then bits 17:15 indicate which UART to use; 0/1/2/3/4
749 are UART A/B/C/D/E.
750
751 config TEGRA_DEBUG_UARTA
752 bool "Kernel low-level debugging messages via Tegra UART A"
753 depends on ARCH_TEGRA
754 select DEBUG_TEGRA_UART
755 help
756 Say Y here if you want kernel low-level debugging support
757 on Tegra based platforms.
758
759 config TEGRA_DEBUG_UARTB
760 bool "Kernel low-level debugging messages via Tegra UART B"
761 depends on ARCH_TEGRA
762 select DEBUG_TEGRA_UART
763 help
764 Say Y here if you want kernel low-level debugging support
765 on Tegra based platforms.
766
767 config TEGRA_DEBUG_UARTC
768 bool "Kernel low-level debugging messages via Tegra UART C"
769 depends on ARCH_TEGRA
770 select DEBUG_TEGRA_UART
771 help
772 Say Y here if you want kernel low-level debugging support
773 on Tegra based platforms.
774
775 config TEGRA_DEBUG_UARTD
776 bool "Kernel low-level debugging messages via Tegra UART D"
777 depends on ARCH_TEGRA
778 select DEBUG_TEGRA_UART
779 help
780 Say Y here if you want kernel low-level debugging support
781 on Tegra based platforms.
782
783 config TEGRA_DEBUG_UARTE
784 bool "Kernel low-level debugging messages via Tegra UART E"
785 depends on ARCH_TEGRA
786 select DEBUG_TEGRA_UART
Stephen Warren46067802012-09-25 15:54:56 -0600787 help
788 Say Y here if you want kernel low-level debugging support
789 on Tegra based platforms.
790
Barry Song7f46a102012-12-20 19:45:25 +0800791 config DEBUG_SIRFPRIMA2_UART1
792 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
793 depends on ARCH_PRIMA2
794 help
795 Say Y here if you want the debug print routines to direct
796 their output to the uart1 port on SiRFprimaII devices.
797
798 config DEBUG_SIRFMARCO_UART1
799 bool "Kernel low-level debugging messages via SiRFmarco UART1"
800 depends on ARCH_MARCO
801 help
802 Say Y here if you want the debug print routines to direct
803 their output to the uart1 port on SiRFmarco devices.
804
Russell Kingcce278d2013-07-06 14:23:30 +0100805 config STIH41X_DEBUG_ASC2
806 bool "Use StiH415/416 ASC2 UART for low-level debug"
Arnd Bergmann5562b802013-07-05 16:08:44 +0200807 depends on ARCH_STI
Russell Kingcce278d2013-07-06 14:23:30 +0100808 select DEBUG_STI_UART
Arnd Bergmann5562b802013-07-05 16:08:44 +0200809 help
810 Say Y here if you want kernel low-level debugging support
Russell Kingcce278d2013-07-06 14:23:30 +0100811 on STiH415/416 based platforms like b2000, which has
812 default UART wired up to ASC2.
813
814 If unsure, say N.
815
816 config STIH41X_DEBUG_SBC_ASC1
817 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
818 depends on ARCH_STI
819 select DEBUG_STI_UART
820 help
821 Say Y here if you want kernel low-level debugging support
822 on STiH415/416 based platforms like b2020. which has
823 default UART wired up to SBC ASC1.
Arnd Bergmann5562b802013-07-05 16:08:44 +0200824
825 If unsure, say N.
826
Linus Walleijdd324da2013-05-02 16:34:19 +0200827 config DEBUG_U300_UART
828 bool "Kernel low-level debugging messages via U300 UART0"
829 depends on ARCH_U300
Russell King5c972af2013-07-07 12:32:16 +0100830 select DEBUG_UART_PL01X
Linus Walleijdd324da2013-05-02 16:34:19 +0200831 help
832 Say Y here if you want the debug print routines to direct
833 their output to the uart port on U300 devices.
834
Linus Walleijf87b95d2013-03-19 11:01:36 +0100835 config DEBUG_UX500_UART
836 depends on ARCH_U8500
837 bool "Use Ux500 UART for low-level debug"
838 help
839 Say Y here if you want kernel low-level debugging support
840 on Ux500 based platforms.
841
Pawel Moll1b820ea2012-07-11 17:07:25 +0100842 config DEBUG_VEXPRESS_UART0_DETECT
843 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
844 depends on ARCH_VEXPRESS && CPU_CP15_MMU
845 help
846 This option enables a simple heuristic which tries to determine
847 the motherboard's memory map variant (original or RS1) and then
848 choose the relevant UART0 base address.
849
850 Note that this will only work with standard A-class core tiles,
851 and may fail with non-standard SMM or custom software models.
852
853 config DEBUG_VEXPRESS_UART0_CA9
854 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
855 depends on ARCH_VEXPRESS
Russell King5c972af2013-07-07 12:32:16 +0100856 select DEBUG_UART_PL01X
Pawel Moll1b820ea2012-07-11 17:07:25 +0100857 help
858 This option selects UART0 at 0x10009000. Except for custom models,
859 this applies only to the V2P-CA9 tile.
860
861 config DEBUG_VEXPRESS_UART0_RS1
862 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
863 depends on ARCH_VEXPRESS
Russell King5c972af2013-07-07 12:32:16 +0100864 select DEBUG_UART_PL01X
Pawel Moll1b820ea2012-07-11 17:07:25 +0100865 help
866 This option selects UART0 at 0x1c090000. This applies to most
867 of the tiles using the RS1 memory map, including all new A-class
868 core tiles, FPGA-based SMMs and software models.
869
Jonathan Austined18bdc2012-08-30 13:46:44 +0100870 config DEBUG_VEXPRESS_UART0_CRX
871 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
872 depends on ARCH_VEXPRESS && !MMU
Russell King5c972af2013-07-07 12:32:16 +0100873 select DEBUG_UART_PL01X
Jonathan Austined18bdc2012-08-30 13:46:44 +0100874 help
875 This option selects UART0 at 0xb0090000. This is appropriate for
876 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
877
Tony Priskb61a2722012-12-28 12:09:18 +1300878 config DEBUG_VT8500_UART0
879 bool "Use UART0 on VIA/Wondermedia SoCs"
880 depends on ARCH_VT8500
881 help
882 This option selects UART0 on VIA/Wondermedia System-on-a-chip
883 devices, including VT8500, WM8505, WM8650 and WM8850.
884
Russell Kinge76f4752011-11-23 17:44:05 +0000885 config DEBUG_LL_UART_NONE
886 bool "No low-level debugging UART"
Rob Herring387798b2012-09-06 13:41:12 -0500887 depends on !ARCH_MULTIPLATFORM
Russell Kinge76f4752011-11-23 17:44:05 +0000888 help
889 Say Y here if your platform doesn't provide a UART option
Russell King730cc262013-07-07 11:02:00 +0100890 above. This relies on your platform choosing the right UART
Russell Kinge76f4752011-11-23 17:44:05 +0000891 definition internally in order for low-level debugging to
892 work.
893
894 config DEBUG_ICEDCC
895 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
896 help
897 Say Y here if you want the debug print routines to direct
898 their output to the EmbeddedICE macrocell's DCC channel using
899 co-processor 14. This is known to work on the ARM9 style ICE
900 channel and on the XScale with the PEEDI.
901
902 Note that the system will appear to hang during boot if there
903 is nothing connected to read from the DCC.
904
Russell Kingb0df8982012-03-27 11:30:31 +0100905 config DEBUG_SEMIHOSTING
Stephen Boyd62194bd2012-09-06 21:24:32 +0100906 bool "Kernel low-level debug output via semihosting I/O"
Russell Kingb0df8982012-03-27 11:30:31 +0100907 help
908 Semihosting enables code running on an ARM target to use
909 the I/O facilities on a host debugger/emulator through a
Stephen Boyd62194bd2012-09-06 21:24:32 +0100910 simple SVC call. The host debugger or emulator must have
Russell Kingb0df8982012-03-27 11:30:31 +0100911 semihosting enabled for the special svc call to be trapped
912 otherwise the kernel will crash.
913
Stephen Boyd62194bd2012-09-06 21:24:32 +0100914 This is known to work with OpenOCD, as well as
Russell Kingb0df8982012-03-27 11:30:31 +0100915 ARM's Fast Models, or any other controlling environment
916 that implements semihosting.
917
918 For more details about semihosting, please see
919 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
920
Russell Kingf8f12792013-07-07 15:29:38 +0100921 config DEBUG_LL_UART_8250
922 bool "Kernel low-level debugging via 8250 UART"
923 help
924 Say Y here if you wish the debug print routes to direct
925 their output to an 8250 UART. You can use this option
926 to provide the parameters for the 8250 UART rather than
927 selecting one of the platform specific options above if
928 you know the parameters for the port.
929
930 This option is preferred over the platform specific
931 options; the platform specific options are deprecated
932 and will be soon removed.
933
Uwe Kleine-König494e4922013-10-08 16:44:17 +0100934 config DEBUG_LL_UART_EFM32
935 bool "Kernel low-level debugging via efm32 UART"
936 depends on ARCH_EFM32
937 help
938 Say Y here if you want the debug print routines to direct
939 their output to an UART or USART port on efm32 based
940 machines. Use the following addresses for DEBUG_UART_PHYS:
941
942 0x4000c000 | USART0
943 0x4000c400 | USART1
944 0x4000c800 | USART2
945 0x4000e000 | UART0
946 0x4000e400 | UART1
947
Russell Kingf8f12792013-07-07 15:29:38 +0100948 config DEBUG_LL_UART_PL01X
949 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
950 help
951 Say Y here if you wish the debug print routes to direct
952 their output to a PL01x Primecell UART. You can use
953 this option to provide the parameters for the UART
954 rather than selecting one of the platform specific
955 options above if you know the parameters for the port.
956
957 This option is preferred over the platform specific
958 options; the platform specific options are deprecated
959 and will be soon removed.
960
Will Deacon17916b22011-09-01 18:58:51 +0100961endchoice
962
Arnd Bergmanna2e40712013-03-04 18:03:10 +0100963config DEBUG_EXYNOS_UART
964 bool
965
Heiko Stuebnerdaf67df2014-05-16 06:59:18 +0900966config DEBUG_S3C2410_UART
967 bool
Heiko Stuebner1899de22014-05-16 06:59:18 +0900968 select DEBUG_S3C24XX_UART
969
970config DEBUG_S3C24XX_UART
971 bool
Heiko Stuebnerdaf67df2014-05-16 06:59:18 +0900972
Tomasz Figa7bab7d9e2014-07-03 14:39:41 +0200973config DEBUG_S5PV210_UART
974 bool
975
Russell Kingcce278d2013-07-06 14:23:30 +0100976config DEBUG_OMAP2PLUS_UART
977 bool
978 depends on ARCH_OMAP2PLUS
979
Shawn Guof8c95fe2012-12-12 19:03:53 +0800980config DEBUG_IMX_UART_PORT
981 int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
982 DEBUG_IMX25_UART || \
983 DEBUG_IMX21_IMX27_UART || \
984 DEBUG_IMX31_UART || \
985 DEBUG_IMX35_UART || \
Greg Ungererad364a72013-10-29 15:15:51 +1000986 DEBUG_IMX50_UART || \
Shawn Guof8c95fe2012-12-12 19:03:53 +0800987 DEBUG_IMX51_UART || \
Paul Bolle0c52db72013-03-11 14:16:00 +0100988 DEBUG_IMX53_UART || \
Shawn Guo34e8a162013-05-03 11:21:03 +0800989 DEBUG_IMX6Q_UART || \
Shawn Guo74368e82014-05-11 21:53:48 +0800990 DEBUG_IMX6SL_UART || \
991 DEBUG_IMX6SX_UART
Shawn Guo49c9e602012-10-08 13:44:29 +0800992 default 1
Shawn Guo287939a2013-03-13 10:52:49 +0800993 depends on ARCH_MXC
Shawn Guo49c9e602012-10-08 13:44:29 +0800994 help
995 Choose UART port on which kernel low-level debug messages
996 should be output.
997
Stefan Agnercfdb7d52014-03-05 23:07:48 +0100998config DEBUG_VF_UART_PORT
999 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1000 default 1
1001 range 0 3
1002 depends on SOC_VF610
1003 help
1004 Choose UART port on which kernel low-level debug messages
1005 should be output.
1006
Russell Kingcce278d2013-07-06 14:23:30 +01001007config DEBUG_TEGRA_UART
1008 bool
1009 depends on ARCH_TEGRA
Tony Lindgren808b7e02013-01-11 11:24:19 -08001010
Russell Kingcce278d2013-07-06 14:23:30 +01001011config DEBUG_STI_UART
1012 bool
1013 depends on ARCH_STI
Srinivas Kandagatla5026aec2013-06-25 12:15:32 +01001014
Rob Herring91a9fec2012-08-31 00:03:46 -05001015config DEBUG_LL_INCLUDE
1016 string
Russell Kingf8f12792013-07-07 15:29:38 +01001017 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
Alexander Shiyandd99eef2014-06-19 19:26:34 +04001018 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
Russell Kingf8f12792013-07-07 15:29:38 +01001019 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
Arnd Bergmanna2e40712013-03-04 18:03:10 +01001020 default "debug/exynos.S" if DEBUG_EXYNOS_UART
Uwe Kleine-König494e4922013-10-08 16:44:17 +01001021 default "debug/efm32.S" if DEBUG_LL_UART_EFM32
Rob Herring91a9fec2012-08-31 00:03:46 -05001022 default "debug/icedcc.S" if DEBUG_ICEDCC
Shawn Guo6dde5ac2012-09-16 20:50:45 +08001023 default "debug/imx.S" if DEBUG_IMX1_UART || \
1024 DEBUG_IMX25_UART || \
1025 DEBUG_IMX21_IMX27_UART || \
Shawn Guo4ad625d2012-12-12 18:54:01 +08001026 DEBUG_IMX31_UART || \
1027 DEBUG_IMX35_UART || \
Greg Ungererad364a72013-10-29 15:15:51 +10001028 DEBUG_IMX50_UART || \
Shawn Guo6dde5ac2012-09-16 20:50:45 +08001029 DEBUG_IMX51_UART || \
Fabio Estevam7356420c2013-01-22 10:40:55 -02001030 DEBUG_IMX53_UART ||\
Shawn Guo34e8a162013-05-03 11:21:03 +08001031 DEBUG_IMX6Q_UART || \
Shawn Guo74368e82014-05-11 21:53:48 +08001032 DEBUG_IMX6SL_UART || \
1033 DEBUG_IMX6SX_UART
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001034 default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
Tony Lindgren808b7e02013-01-11 11:24:19 -08001035 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
Heiko Stuebner2cd62bd2014-05-16 06:59:18 +09001036 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
Tomasz Figa7bab7d9e2014-07-03 14:39:41 +02001037 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
Arnd Bergmann67bdb282013-03-19 13:52:14 +01001038 default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
Srinivas Kandagatla5026aec2013-06-25 12:15:32 +01001039 default "debug/sti.S" if DEBUG_STI_UART
Linus Torvalds150a8dc2013-05-04 12:34:30 -07001040 default "debug/tegra.S" if DEBUG_TEGRA_UART
1041 default "debug/ux500.S" if DEBUG_UX500_UART
Russell King4e218b92013-07-07 12:36:46 +01001042 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
Shawn Guoc7c3eac2013-05-12 17:22:17 +08001043 default "debug/vf.S" if DEBUG_VF_UART
Tony Priskb61a2722012-12-28 12:09:18 +13001044 default "debug/vt8500.S" if DEBUG_VT8500_UART0
Josh Cartwright385f02b2012-11-19 10:16:01 -06001045 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
Florian Fainellib51312b2014-01-08 09:19:50 -08001046 default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
Rob Herring91a9fec2012-08-31 00:03:46 -05001047 default "mach/debug-macro.S"
1048
Russell Kingf8f12792013-07-07 15:29:38 +01001049# Compatibility options for PL01x
Russell King5c972af2013-07-07 12:32:16 +01001050config DEBUG_UART_PL01X
1051 def_bool ARCH_EP93XX || \
1052 ARCH_INTEGRATOR || \
Russell King0dc0e472013-07-07 16:38:18 +01001053 ARCH_SPEAR3XX || \
1054 ARCH_SPEAR6XX || \
1055 ARCH_SPEAR13XX || \
Russell King5c972af2013-07-07 12:32:16 +01001056 ARCH_VERSATILE
1057
Russell Kingf8f12792013-07-07 15:29:38 +01001058# Compatibility options for 8250
Russell King7610b602013-07-06 22:59:10 +01001059config DEBUG_UART_8250
Russell King4a0036472013-07-06 23:13:15 +01001060 def_bool ARCH_DOVE || ARCH_EBSA110 || \
1061 (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
1062 ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
Andrew Lunnba364fc2014-07-10 23:36:21 +02001063 ARCH_IOP33X || ARCH_IXP4XX || \
Russell King4a0036472013-07-06 23:13:15 +01001064 ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
1065
Florian Fainellib51312b2014-01-08 09:19:50 -08001066# Compatibility options for BCM63xx
1067config DEBUG_UART_BCM63XX
1068 def_bool ARCH_BCM_63XX
1069
Russell Kingc3faa9b2013-07-07 00:01:39 +01001070config DEBUG_UART_PHYS
1071 hex "Physical base address of debug UART"
Russell King97bd1a42013-07-07 16:18:34 +01001072 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
Russell Kingc3faa9b2013-07-07 00:01:39 +01001073 default 0x01c28000 if DEBUG_SUNXI_UART0
1074 default 0x01c28400 if DEBUG_SUNXI_UART1
Russell King97bd1a42013-07-07 16:18:34 +01001075 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1076 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
Chen-Yu Tsaic4718542014-06-20 22:52:51 +08001077 default 0x01f02800 if DEBUG_SUNXI_R_UART
Russell Kingf2acf002013-07-07 16:05:49 +01001078 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1079 default 0x02531000 if DEBUG_KEYSTONE_UART1
Russell Kingc3faa9b2013-07-07 00:01:39 +01001080 default 0x03010fe0 if ARCH_RPC
Russell King5c972af2013-07-07 12:32:16 +01001081 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || DEBUG_CNS3XXX || \
1082 DEBUG_VEXPRESS_UART0_CA9
1083 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
Russell Kingc3faa9b2013-07-07 00:01:39 +01001084 default 0x10124000 if DEBUG_RK3X_UART0
1085 default 0x10126000 if DEBUG_RK3X_UART1
Russell King5c972af2013-07-07 12:32:16 +01001086 default 0x101f1000 if ARCH_VERSATILE
1087 default 0x101fb000 if DEBUG_NOMADIK_UART
1088 default 0x16000000 if ARCH_INTEGRATOR
Hauke Mehrtens06580272014-02-04 00:01:44 +01001089 default 0x18000300 if DEBUG_BCM_5301X
Russell King5c972af2013-07-07 12:32:16 +01001090 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
Russell Kingc3faa9b2013-07-07 00:01:39 +01001091 default 0x20060000 if DEBUG_RK29_UART0
1092 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1093 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
Russell King5c972af2013-07-07 12:32:16 +01001094 default 0x20201000 if DEBUG_BCM2835
Christian Daudt753d1242013-12-23 09:00:01 +01001095 default 0x3e000000 if DEBUG_BCM_KONA_UART
Uwe Kleine-König494e4922013-10-08 16:44:17 +01001096 default 0x4000e400 if DEBUG_LL_UART_EFM32
Russell Kingc3faa9b2013-07-07 00:01:39 +01001097 default 0x40090000 if ARCH_LPC32XX
1098 default 0x40100000 if DEBUG_PXA_UART1
1099 default 0x42000000 if ARCH_GEMINI
Heiko Stuebner1899de22014-05-16 06:59:18 +09001100 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1101 DEBUG_S3C2410_UART0)
1102 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1103 DEBUG_S3C2410_UART1)
1104 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1105 DEBUG_S3C2410_UART2)
Russell Kingc3faa9b2013-07-07 00:01:39 +01001106 default 0x7c0003f8 if FOOTBRIDGE
Russell King5c972af2013-07-07 12:32:16 +01001107 default 0x80070000 if DEBUG_IMX23_UART
1108 default 0x80074000 if DEBUG_IMX28_UART
Alexander Shiyanc39e1ef2014-04-12 06:07:23 +01001109 default 0x80230000 if DEBUG_PICOXCELL_UART
Russell King5c972af2013-07-07 12:32:16 +01001110 default 0x808c0000 if ARCH_EP93XX
1111 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001112 default 0xa9a00000 if DEBUG_MSM_UART
Russell King5c972af2013-07-07 12:32:16 +01001113 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1114 default 0xc0013000 if DEBUG_U300_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001115 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1116 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
Russell King0dc0e472013-07-07 16:38:18 +01001117 default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001118 default 0xd0012000 if DEBUG_MVEBU_UART
1119 default 0xd4017000 if DEBUG_MMP_UART2
1120 default 0xd4018000 if DEBUG_MMP_UART3
Russell King0dc0e472013-07-07 16:38:18 +01001121 default 0xe0000000 if ARCH_SPEAR13XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001122 default 0xf0000be0 if ARCH_EBSA110
1123 default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
Andrew Lunnba364fc2014-07-10 23:36:21 +02001124 default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
Russell Kingc3faa9b2013-07-07 00:01:39 +01001125 ARCH_ORION5X
Sebastian Hesselbarthcaad0b42013-09-09 14:10:54 +02001126 default 0xf7fc9000 if DEBUG_BERLIN_UART
Haifeng Yan12aae302014-04-11 11:40:58 +08001127 default 0xf8b00000 if DEBUG_HIX5HD2_UART
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001128 default 0xf991e000 if DEBUG_QCOM_UARTDM
Haojian Zhuang8d258be2013-08-24 06:58:39 +01001129 default 0xfcb00000 if DEBUG_HI3620_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001130 default 0xfe800000 if ARCH_IOP32X
Heiko Stuebnerefd02ee2014-06-28 13:31:17 +02001131 default 0xff690000 if DEBUG_RK32_UART2
Russell King0b4cccb2013-07-07 11:42:46 +01001132 default 0xffc02000 if DEBUG_SOCFPGA_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001133 default 0xffd82340 if ARCH_IOP13XX
Russell King5c972af2013-07-07 12:32:16 +01001134 default 0xfff36000 if DEBUG_HIGHBANK_UART
Florian Fainellib51312b2014-01-08 09:19:50 -08001135 default 0xfffe8600 if DEBUG_UART_BCM63XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001136 default 0xfffff700 if ARCH_IOP33X
Russell Kingf8f12792013-07-07 15:29:38 +01001137 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
Uwe Kleine-König494e4922013-10-08 16:44:17 +01001138 DEBUG_LL_UART_EFM32 || \
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001139 DEBUG_UART_8250 || DEBUG_UART_PL01X || \
Florian Fainellib51312b2014-01-08 09:19:50 -08001140 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1141 DEBUG_UART_BCM63XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001142
1143config DEBUG_UART_VIRT
1144 hex "Virtual base address of debug UART"
1145 default 0xe0010fe0 if ARCH_RPC
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001146 default 0xe1000000 if DEBUG_MSM_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001147 default 0xf0000be0 if ARCH_EBSA110
Russell King5c972af2013-07-07 12:32:16 +01001148 default 0xf0009000 if DEBUG_CNS3XXX
1149 default 0xf01fb000 if DEBUG_NOMADIK_UART
1150 default 0xf0201000 if DEBUG_BCM2835
Hauke Mehrtens06580272014-02-04 00:01:44 +01001151 default 0xf1000300 if DEBUG_BCM_5301X
Russell King5c972af2013-07-07 12:32:16 +01001152 default 0xf11f1000 if ARCH_VERSATILE
1153 default 0xf1600000 if ARCH_INTEGRATOR
Russell Kingc3faa9b2013-07-07 00:01:39 +01001154 default 0xf1c28000 if DEBUG_SUNXI_UART0
1155 default 0xf1c28400 if DEBUG_SUNXI_UART1
Chen-Yu Tsaic4718542014-06-20 22:52:51 +08001156 default 0xf1f02800 if DEBUG_SUNXI_R_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001157 default 0xf2100000 if DEBUG_PXA_UART1
1158 default 0xf4090000 if ARCH_LPC32XX
1159 default 0xf4200000 if ARCH_GEMINI
Heiko Stuebner1899de22014-05-16 06:59:18 +09001160 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1161 DEBUG_S3C2410_UART0)
1162 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1163 DEBUG_S3C2410_UART1)
1164 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1165 DEBUG_S3C2410_UART2)
Sebastian Hesselbarthcaad0b42013-09-09 14:10:54 +02001166 default 0xf7fc9000 if DEBUG_BERLIN_UART
Russell King5c972af2013-07-07 12:32:16 +01001167 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1168 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001169 default 0xfa71e000 if DEBUG_QCOM_UARTDM
Russell King5c972af2013-07-07 12:32:16 +01001170 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1171 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
Florian Fainellib51312b2014-01-08 09:19:50 -08001172 default 0xfcfe8600 if DEBUG_UART_BCM63XX
Russell King0dc0e472013-07-07 16:38:18 +01001173 default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1174 default 0xfd000000 if ARCH_SPEAR13XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001175 default 0xfd012000 if ARCH_MV78XX0
1176 default 0xfde12000 if ARCH_DOVE
1177 default 0xfe012000 if ARCH_ORION5X
1178 default 0xfe017000 if DEBUG_MMP_UART2
1179 default 0xfe018000 if DEBUG_MMP_UART3
Russell King5c972af2013-07-07 12:32:16 +01001180 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
Russell King0b4cccb2013-07-07 11:42:46 +01001181 default 0xfe230000 if DEBUG_PICOXCELL_UART
Christian Daudt753d1242013-12-23 09:00:01 +01001182 default 0xfe300000 if DEBUG_BCM_KONA_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001183 default 0xfe800000 if ARCH_IOP32X
Haifeng Yan12aae302014-04-11 11:40:58 +08001184 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001185 default 0xfeb24000 if DEBUG_RK3X_UART0
1186 default 0xfeb26000 if DEBUG_RK3X_UART1
Russell Kingf2acf002013-07-07 16:05:49 +01001187 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1188 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
Russell King0b4cccb2013-07-07 11:42:46 +01001189 default 0xfec02000 if DEBUG_SOCFPGA_UART
Alexander Shiyanc39e1ef2014-04-12 06:07:23 +01001190 default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
Russell King97bd1a42013-07-07 16:18:34 +01001191 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
Heiko Stuebnerefd02ee2014-06-28 13:31:17 +02001192 default 0xfec90000 if DEBUG_RK32_UART2
Russell King97bd1a42013-07-07 16:18:34 +01001193 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1194 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
Alexander Shiyanc39e1ef2014-04-12 06:07:23 +01001195 default 0xfed60000 if DEBUG_RK29_UART0
1196 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1197 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
Russell King5c972af2013-07-07 12:32:16 +01001198 default 0xfedc0000 if ARCH_EP93XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001199 default 0xfee003f8 if FOOTBRIDGE
Russell King5c972af2013-07-07 12:32:16 +01001200 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001201 default 0xfee82340 if ARCH_IOP13XX
1202 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1203 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
Alexander Shiyanc39e1ef2014-04-12 06:07:23 +01001204 default 0xfef36000 if DEBUG_HIGHBANK_UART
Russell Kingc3faa9b2013-07-07 00:01:39 +01001205 default 0xfefff700 if ARCH_IOP33X
Russell King5c972af2013-07-07 12:32:16 +01001206 default 0xff003000 if DEBUG_U300_UART
1207 default DEBUG_UART_PHYS if !MMU
Russell Kingf8f12792013-07-07 15:29:38 +01001208 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
Ivan T. Ivanov7098cff2014-04-14 16:47:34 +03001209 DEBUG_UART_8250 || DEBUG_UART_PL01X || \
Florian Fainellib51312b2014-01-08 09:19:50 -08001210 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1211 DEBUG_UART_BCM63XX
Russell Kingc3faa9b2013-07-07 00:01:39 +01001212
Russell King4a0036472013-07-06 23:13:15 +01001213config DEBUG_UART_8250_SHIFT
1214 int "Register offset shift for the 8250 debug UART"
Russell Kingf8f12792013-07-07 15:29:38 +01001215 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
Russell King4a0036472013-07-06 23:13:15 +01001216 default 0 if FOOTBRIDGE || ARCH_IOP32X
1217 default 2
Russell King7610b602013-07-06 22:59:10 +01001218
Russell King0b4cccb2013-07-07 11:42:46 +01001219config DEBUG_UART_8250_WORD
1220 bool "Use 32-bit accesses for 8250 UART"
Russell Kingf8f12792013-07-07 15:29:38 +01001221 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
Russell King0b4cccb2013-07-07 11:42:46 +01001222 depends on DEBUG_UART_8250_SHIFT >= 2
Russell Kingf2acf002013-07-07 16:05:49 +01001223 default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
Russell King97bd1a42013-07-07 16:18:34 +01001224 ARCH_KEYSTONE || \
1225 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
Arnd Bergmann9d6eccb2014-02-12 22:22:00 +01001226 DEBUG_DAVINCI_DA8XX_UART2 || \
Heiko Stuebnerefd02ee2014-06-28 13:31:17 +02001227 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
Russell King0b4cccb2013-07-07 11:42:46 +01001228
Russell King7610b602013-07-06 22:59:10 +01001229config DEBUG_UART_8250_FLOW_CONTROL
1230 bool "Enable flow control for 8250 UART"
Russell Kingf8f12792013-07-07 15:29:38 +01001231 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
Russell King7610b602013-07-06 22:59:10 +01001232 default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
1233
Shawn Guo3b4af9b2013-03-14 08:48:06 +01001234config DEBUG_UNCOMPRESS
1235 bool
Heiko Stuebner90266752014-03-11 22:05:09 +09001236 depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG
Russell Kingb6992fa2013-07-17 17:54:27 +01001237 default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
Stephen Warrenae3c99a2013-08-02 20:53:37 +01001238 (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
Russell Kingb6992fa2013-07-17 17:54:27 +01001239 help
1240 This option influences the normal decompressor output for
1241 multiplatform kernels. Normally, multiplatform kernels disable
1242 decompressor output because it is not possible to know where to
1243 send the decompressor output.
1244
1245 When this option is set, the selected DEBUG_LL output method
1246 will be re-used for normal decompressor output on multiplatform
1247 kernels.
1248
Shawn Guo3b4af9b2013-03-14 08:48:06 +01001249
Shawn Guo615967b2013-03-14 08:47:27 +01001250config UNCOMPRESS_INCLUDE
1251 string
Sachin Kamatffd80ec2014-02-24 09:38:12 +09001252 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
Linus Torvalds2bf73dd62014-04-05 15:46:37 -07001253 PLAT_SAMSUNG || ARCH_EFM32
Shawn Guo615967b2013-03-14 08:47:27 +01001254 default "mach/uncompress.h"
1255
Catalin Marinas93fd03a82009-12-09 10:02:18 +00001256config EARLY_PRINTK
1257 bool "Early printk"
1258 depends on DEBUG_LL
1259 help
1260 Say Y here if you want to have an early console using the
1261 kernel low-level debugging functions. Add earlyprintk to your
1262 kernel parameters to enable this console.
1263
Alexander Shishkinc5d6c772009-12-01 14:00:51 +01001264config OC_ETM
1265 bool "On-chip ETM and ETB"
Arnd Bergmann53eebb02011-09-07 10:02:35 +02001266 depends on ARM_AMBA
Alexander Shishkinc5d6c772009-12-01 14:00:51 +01001267 help
1268 Enables the on-chip embedded trace macrocell and embedded trace
1269 buffer driver that will allow you to collect traces of the
1270 kernel code.
1271
Jon Medhurst4189bc72011-08-27 12:36:58 +01001272config ARM_KPROBES_TEST
1273 tristate "Kprobes test module"
1274 depends on KPROBES && MODULES
1275 help
1276 Perform tests of kprobes API and instruction set simulation.
1277
Will Deacon575320d2012-07-06 15:43:03 +01001278config PID_IN_CONTEXTIDR
1279 bool "Write the current PID to the CONTEXTIDR register"
1280 depends on CPU_COPY_V6
1281 help
1282 Enabling this option causes the kernel to write the current PID to
1283 the PROCID field of the CONTEXTIDR register, at the expense of some
1284 additional instructions during context switch. Say Y here only if you
1285 are planning to use hardware trace tools with this kernel.
1286
Laura Abbottdca9aa92013-06-17 10:29:14 -07001287config DEBUG_SET_MODULE_RONX
1288 bool "Set loadable kernel module data as NX and text as RO"
1289 depends on MODULES
1290 ---help---
1291 This option helps catch unintended modifications to loadable
1292 kernel module's text and read-only data. It also prevents execution
1293 of module data. Such protection may interfere with run-time code
1294 patching and dynamic kernel tracing - and they might also protect
1295 against certain classes of kernel exploits.
1296 If in doubt, say "N".
1297
Linus Torvalds1da177e2005-04-16 15:20:36 -07001298endmenu