Kconfig: consolidate the "Kernel hacking" menu
[linux-2.6-block.git] / arch / arm / Kconfig.debug
CommitLineData
b2441318 1# SPDX-License-Identifier: GPL-2.0
1da177e4 2
4fb69cc4
JP
3config ARM_PTDUMP_CORE
4 def_bool n
5
6config ARM_PTDUMP_DEBUGFS
1fd15b87
RK
7 bool "Export kernel pagetable layout to userspace via debugfs"
8 depends on DEBUG_KERNEL
65ba508d 9 depends on MMU
4fb69cc4 10 select ARM_PTDUMP_CORE
1fd15b87
RK
11 select DEBUG_FS
12 ---help---
13 Say Y here if you want to show the kernel pagetable layout in a
14 debugfs file. This information is only useful for kernel developers
15 who are working in architecture specific areas of the kernel.
16 It is probably not a good idea to enable this feature in a production
17 kernel.
18 If in doubt, say "N"
19
a8e53c15
JP
20config DEBUG_WX
21 bool "Warn on W+X mappings at boot"
ad43fc9a 22 depends on MMU
a8e53c15
JP
23 select ARM_PTDUMP_CORE
24 ---help---
25 Generate a warning if any W+X mappings are found at boot.
26
27 This is useful for discovering cases where the kernel is leaving
28 W+X mappings after applying NX, as such mappings are a security risk.
29
30 Look for a message in dmesg output like this:
31
32 arm/mm: Checked W+X mappings: passed, no W+X pages found.
33
34 or like this, if the check failed:
35
36 arm/mm: Checked W+X mappings: FAILED, <N> W+X pages found.
37
38 Note that even if the check fails, your kernel is possibly
39 still fine, as W+X mappings are not a security hole in
40 themselves, what they do is that they make the exploitation
41 of other unfixed kernel bugs easier.
42
43 There is no runtime or memory usage effect of this option
44 once the kernel has booted up - it's a one time check.
45
46 If in doubt, say "Y".
47
adf8b37b 48# RMK wants arm kernels compiled with frame pointers or stack unwinding.
1da177e4
LT
49# If you know what you are doing and are willing to live without stack
50# traces, you can get a slightly smaller kernel by setting this option to
51# n, but then RMK will have to kill you ;).
52config FRAME_POINTER
53 bool
16c79651 54 depends on !THUMB2_KERNEL
0e341af8 55 default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
1da177e4
LT
56 help
57 If you say N here, the resulting kernel will be slightly smaller and
adf8b37b
CM
58 faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
59 when a problem occurs with the kernel, the information that is
60 reported is severely limited.
61
62config ARM_UNWIND
4a50bfe3 63 bool "Enable stack unwinding support (EXPERIMENTAL)"
d6f94fa0 64 depends on AEABI
adf8b37b
CM
65 default y
66 help
67 This option enables stack unwinding support in the kernel
68 using the information automatically generated by the
69 compiler. The resulting kernel image is slightly bigger but
70 the performance is not affected. Currently, this feature
71 only works with EABI compilers. If unsure say Y.
1da177e4 72
09bfafac
RV
73config OLD_MCOUNT
74 bool
75 depends on FUNCTION_TRACER && FRAME_POINTER
76 default y
77
1da177e4
LT
78config DEBUG_USER
79 bool "Verbose user fault messages"
80 help
81 When a user program crashes due to an exception, the kernel can
82 print a brief message explaining what the problem was. This is
83 sometimes helpful for debugging but serves no purpose on a
84 production system. Most people should say N here.
85
86 In addition, you need to pass user_debug=N on the kernel command
87 line to enable this feature. N consists of the sum of:
88
89 1 - undefined instruction events
90 2 - system calls
91 4 - invalid data aborts
92 8 - SIGSEGV faults
93 16 - SIGBUS faults
94
1da177e4
LT
95# These options are only for real kernel hackers who want to get their hands dirty.
96config DEBUG_LL
4f5ef922 97 bool "Kernel low-level debugging functions (read help!)"
1da177e4
LT
98 depends on DEBUG_KERNEL
99 help
35efb606 100 Say Y here to include definitions of printascii, printch, printhex
1da177e4
LT
101 in the kernel. This is helpful if you are debugging code that
102 executes before the console is initialized.
103
4f5ef922
WD
104 Note that selecting this option will limit the kernel to a single
105 UART definition, as specified below. Attempting to boot the kernel
106 image on a different platform *will not work*, so this option should
107 not be enabled for kernels that are intended to be portable.
108
17916b28
WD
109choice
110 prompt "Kernel low-level debugging port"
111 depends on DEBUG_LL
112
3c215e64
TZ
113 config DEBUG_ALPINE_UART0
114 bool "Kernel low-level debugging messages via Alpine UART0"
115 depends on ARCH_ALPINE
116 select DEBUG_UART_8250
117 help
118 Say Y here if you want kernel low-level debugging support
119 on Alpine based platforms.
120
d5bd4e8d
OR
121 config DEBUG_ASM9260_UART
122 bool "Kernel low-level debugging via asm9260 UART"
123 depends on MACH_ASM9260
124 help
125 Say Y here if you want the debug print routines to direct
126 their output to an UART or USART port on asm9260 based
127 machines.
128
129 DEBUG_UART_PHYS | DEBUG_UART_VIRT
130
131 0x80000000 | 0xf0000000 | UART0
132 0x80004000 | 0xf0004000 | UART1
133 0x80008000 | 0xf0008000 | UART2
134 0x8000c000 | 0xf000c000 | UART3
135 0x80010000 | 0xf0010000 | UART4
136 0x80014000 | 0xf0014000 | UART5
137 0x80018000 | 0xf0018000 | UART6
138 0x8001c000 | 0xf001c000 | UART7
139 0x80020000 | 0xf0020000 | UART8
140 0x80024000 | 0xf0024000 | UART9
141
8b2f2d03
AB
142 config DEBUG_AT91_RM9200_DBGU
143 bool "Kernel low-level debugging on AT91RM9200, AT91SAM9 DBGU"
144 select DEBUG_AT91_UART
145 depends on SOC_AT91RM9200 || SOC_AT91SAM9
6f112a08 146 help
8b2f2d03
AB
147 Say Y here if you want kernel low-level debugging support
148 on the DBGU port of:
149 at91rm9200, at91sam9260, at91sam9g20, at91sam9261,
150 at91sam9g10, at91sam9n12, at91sam9rl64, at91sam9x5
13079a73 151
8b2f2d03
AB
152 config DEBUG_AT91_SAM9263_DBGU
153 bool "Kernel low-level debugging on AT91SAM{9263,9G45,A5D3} DBGU"
154 select DEBUG_AT91_UART
155 depends on SOC_AT91SAM9 || SOC_SAMA5D3
156 help
157 Say Y here if you want kernel low-level debugging support
158 on the DBGU port of:
159 at91sam9263, at91sam9g45, at91sam9m10,
160 sama5d3
2dc850b6 161
8b2f2d03
AB
162 config DEBUG_AT91_SAMA5D2_UART1
163 bool "Kernel low-level debugging on SAMA5D2 UART1"
164 select DEBUG_AT91_UART
165 depends on SOC_SAMA5D2
166 help
167 Say Y here if you want kernel low-level debugging support
168 on the UART1 port of sama5d2.
169
170 config DEBUG_AT91_SAMA5D4_USART3
171 bool "Kernel low-level debugging on SAMA5D4 USART3"
172 select DEBUG_AT91_UART
173 depends on SOC_SAMA5D4
174 help
175 Say Y here if you want kernel low-level debugging support
176 on the USART3 port of sama5d4.
c268a743 177
63e07c0f
SA
178 config DEBUG_AT91_SAMV7_USART1
179 bool "Kernel low-level debugging via SAMV7 USART1"
180 select DEBUG_AT91_UART
181 depends on SOC_SAMV7
182 help
183 Say Y here if you want the debug print routines to direct
184 their output to the USART1 port on SAMV7 based
185 machines.
186
f1ac922d
SW
187 config DEBUG_BCM2835
188 bool "Kernel low-level debugging on BCM2835 PL011 UART"
5234c34e
EA
189 depends on ARCH_BCM2835 && ARCH_MULTI_V6
190 select DEBUG_UART_PL01X
191
192 config DEBUG_BCM2836
193 bool "Kernel low-level debugging on BCM2836 PL011 UART"
194 depends on ARCH_BCM2835 && ARCH_MULTI_V7
5c972af4 195 select DEBUG_UART_PL01X
f1ac922d 196
06580275 197 config DEBUG_BCM_5301X
2dc9e0b9
FF
198 bool "Kernel low-level debugging on BCM5301X/NSP UART1"
199 depends on ARCH_BCM_5301X || ARCH_BCM_NSP
140bd603 200 select DEBUG_UART_8250
06580275 201
fa1e581d
FF
202 config DEBUG_BCM_HR2
203 bool "Kernel low-level debugging on Hurricane 2 UART2"
204 depends on ARCH_BCM_HR2
205 select DEBUG_UART_8250
206
753d1243
CD
207 config DEBUG_BCM_KONA_UART
208 bool "Kernel low-level debugging messages via BCM KONA UART"
7aa2077b 209 depends on ARCH_BCM_MOBILE
753d1243
CD
210 select DEBUG_UART_8250
211 help
212 Say Y here if you want kernel low-level debugging support
213 on Broadcom SoC platforms.
214 This low level debug works for Broadcom
215 mobile SoCs in the Kona family of chips (e.g. bcm28155,
216 bcm11351, etc...)
217
6c548099 218 config DEBUG_BCM63XX_UART
b51312be
FF
219 bool "Kernel low-level debugging on BCM63XX UART"
220 depends on ARCH_BCM_63XX
b51312be 221
caad0b41
SH
222 config DEBUG_BERLIN_UART
223 bool "Marvell Berlin SoC Debug UART"
224 depends on ARCH_BERLIN
225 select DEBUG_UART_8250
226 help
227 Say Y here if you want kernel low-level debugging support
228 on Marvell Berlin SoC based platforms.
229
81b43a6e
MC
230 config DEBUG_BRCMSTB_UART
231 bool "Use BRCMSTB UART for low-level debug"
232 depends on ARCH_BRCMSTB
81b43a6e
MC
233 help
234 Say Y here if you want the debug print routines to direct
d0cf9d8a
FF
235 their output to the first serial port on these devices. The
236 UART physical and virtual address is automatically provided
237 based on the chip identification register value.
81b43a6e
MC
238
239 If you have a Broadcom STB chip and would like early print
240 messages to appear over the UART, select this option.
241
164acf96
SB
242 config DEBUG_CLPS711X_UART1
243 bool "Kernel low-level debugging messages via UART1"
244 depends on ARCH_CLPS711X
245 help
246 Say Y here if you want the debug print routines to direct
247 their output to the first serial port on these devices.
17916b28
WD
248
249 config DEBUG_CLPS711X_UART2
250 bool "Kernel low-level debugging messages via UART2"
251 depends on ARCH_CLPS711X
252 help
253 Say Y here if you want the debug print routines to direct
254 their output to the second serial port on these devices.
17916b28 255
29c9b7be
AB
256 config DEBUG_CNS3XXX
257 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
258 depends on ARCH_CNS3XXX
b125170a 259 select DEBUG_UART_8250
29c9b7be
AB
260 help
261 Say Y here if you want the debug print routines to direct
262 their output to the CNS3xxx UART0.
263
477099f1
UKK
264 config DEBUG_DAVINCI_DA8XX_UART1
265 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
266 depends on ARCH_DAVINCI_DA8XX
97bd1a48 267 select DEBUG_UART_8250
477099f1
UKK
268 help
269 Say Y here if you want the debug print routines to direct
270 their output to UART1 serial port on DaVinci DA8XX devices.
271
272 config DEBUG_DAVINCI_DA8XX_UART2
273 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
274 depends on ARCH_DAVINCI_DA8XX
97bd1a48 275 select DEBUG_UART_8250
477099f1
UKK
276 help
277 Say Y here if you want the debug print routines to direct
278 their output to UART2 serial port on DaVinci DA8XX devices.
279
280 config DEBUG_DAVINCI_DMx_UART0
281 bool "Kernel low-level debugging on DaVinci DMx using UART0"
282 depends on ARCH_DAVINCI_DMx
97bd1a48 283 select DEBUG_UART_8250
477099f1
UKK
284 help
285 Say Y here if you want the debug print routines to direct
286 their output to UART0 serial port on DaVinci DMx devices.
287
e76f4750
RK
288 config DEBUG_DC21285_PORT
289 bool "Kernel low-level debugging messages via footbridge serial port"
290 depends on FOOTBRIDGE
291 help
292 Say Y here if you want the debug print routines to direct
293 their output to the serial port in the DC21285 (Footbridge).
294
e23814da
BS
295 config DEBUG_DIGICOLOR_UA0
296 bool "Kernel low-level debugging messages via Digicolor UA0"
297 depends on ARCH_DIGICOLOR
298 help
299 Say Y here if you want the debug print routines to direct
300 their output to the UA0 serial port in the CX92755.
301
f06455fa
AB
302 config DEBUG_EP93XX
303 bool "Kernel low-level debugging messages via ep93xx UART"
304 depends on ARCH_EP93XX
305 select DEBUG_UART_PL01X
306 help
307 Say Y here if you want kernel low-level debugging support
308 on Cirrus Logic EP93xx based platforms.
309
e76f4750
RK
310 config DEBUG_FOOTBRIDGE_COM1
311 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
312 depends on FOOTBRIDGE
0045c0dd 313 select DEBUG_UART_8250
e76f4750
RK
314 help
315 Say Y here if you want the debug print routines to direct
316 their output to the 8250 at PCI COM1.
317
d7175a3b
AB
318 config DEBUG_GEMINI
319 bool "Kernel low-level debugging messages via Cortina Systems Gemini UART"
320 depends on ARCH_GEMINI
321 select DEBUG_UART_8250
322 help
323 Say Y here if you want kernel low-level debugging support
324 on Cortina Gemini based platforms.
325
8d258beb
HZ
326 config DEBUG_HI3620_UART
327 bool "Hisilicon HI3620 Debug UART"
328 depends on ARCH_HI3xxx
329 select DEBUG_UART_PL01X
330 help
331 Say Y here if you want kernel low-level debugging support
332 on HI3620 UART.
333
220e6cf7
RH
334 config DEBUG_HIGHBANK_UART
335 bool "Kernel low-level debugging messages via Highbank UART"
336 depends on ARCH_HIGHBANK
5c972af4 337 select DEBUG_UART_PL01X
220e6cf7
RH
338 help
339 Say Y here if you want the debug print routines to direct
340 their output to the UART on Highbank based devices.
341
27dafaa8
WL
342 config DEBUG_HIP01_UART
343 bool "Hisilicon Hip01 Debug UART"
344 depends on ARCH_HIP01
345 select DEBUG_UART_8250
346 help
347 Say Y here if you want kernel low-level debugging support
348 on HIP01 UART.
349
c9a1df48
HZ
350 config DEBUG_HIP04_UART
351 bool "Hisilicon HiP04 Debug UART"
352 depends on ARCH_HIP04
353 select DEBUG_UART_8250
354 help
355 Say Y here if you want kernel low-level debugging support
356 on HIP04 UART.
357
37bdaf82
OJ
358 config DEBUG_HIX5HD2_UART
359 bool "Hisilicon Hix5hd2 Debug UART"
360 depends on ARCH_HIX5HD2
5c972af4 361 select DEBUG_UART_PL01X
220e6cf7 362 help
37bdaf82
OJ
363 Say Y here if you want kernel low-level debugging support
364 on Hix5hd2 UART.
220e6cf7 365
f350b861
SG
366 config DEBUG_IMX1_UART
367 bool "i.MX1 Debug UART"
368 depends on SOC_IMX1
369 help
370 Say Y here if you want kernel low-level debugging support
371 on i.MX1.
372
373 config DEBUG_IMX23_UART
374 bool "i.MX23 Debug UART"
375 depends on SOC_IMX23
5c972af4 376 select DEBUG_UART_PL01X
f350b861
SG
377 help
378 Say Y here if you want kernel low-level debugging support
379 on i.MX23.
380
381 config DEBUG_IMX25_UART
382 bool "i.MX25 Debug UART"
383 depends on SOC_IMX25
384 help
385 Say Y here if you want kernel low-level debugging support
386 on i.MX25.
387
388 config DEBUG_IMX21_IMX27_UART
389 bool "i.MX21 and i.MX27 Debug UART"
390 depends on SOC_IMX21 || SOC_IMX27
391 help
392 Say Y here if you want kernel low-level debugging support
393 on i.MX21 or i.MX27.
394
395 config DEBUG_IMX28_UART
396 bool "i.MX28 Debug UART"
397 depends on SOC_IMX28
5c972af4 398 select DEBUG_UART_PL01X
f350b861
SG
399 help
400 Say Y here if you want kernel low-level debugging support
401 on i.MX28.
402
4ad625d4
SG
403 config DEBUG_IMX31_UART
404 bool "i.MX31 Debug UART"
405 depends on SOC_IMX31
f350b861
SG
406 help
407 Say Y here if you want kernel low-level debugging support
4ad625d4
SG
408 on i.MX31.
409
410 config DEBUG_IMX35_UART
411 bool "i.MX35 Debug UART"
412 depends on SOC_IMX35
413 help
414 Say Y here if you want kernel low-level debugging support
415 on i.MX35.
f350b861 416
ad364a70
GU
417 config DEBUG_IMX50_UART
418 bool "i.MX50 Debug UART"
419 depends on SOC_IMX50
420 help
421 Say Y here if you want kernel low-level debugging support
422 on i.MX50.
423
f350b861
SG
424 config DEBUG_IMX51_UART
425 bool "i.MX51 Debug UART"
426 depends on SOC_IMX51
427 help
428 Say Y here if you want kernel low-level debugging support
429 on i.MX51.
430
7356420c
FE
431 config DEBUG_IMX53_UART
432 bool "i.MX53 Debug UART"
433 depends on SOC_IMX53
f350b861
SG
434 help
435 Say Y here if you want kernel low-level debugging support
7356420c 436 on i.MX53.
f350b861 437
49c9e60e 438 config DEBUG_IMX6Q_UART
3c03a2fe 439 bool "i.MX6Q/DL Debug UART"
785d7fab
DB
440 depends on SOC_IMX6Q
441 help
442 Say Y here if you want kernel low-level debugging support
3c03a2fe 443 on i.MX6Q/DL.
bac89d75 444
34e8a16b
SG
445 config DEBUG_IMX6SL_UART
446 bool "i.MX6SL Debug UART"
447 depends on SOC_IMX6SL
448 help
449 Say Y here if you want kernel low-level debugging support
450 on i.MX6SL.
451
74368e81
SG
452 config DEBUG_IMX6SX_UART
453 bool "i.MX6SX Debug UART"
454 depends on SOC_IMX6SX
455 help
456 Say Y here if you want kernel low-level debugging support
457 on i.MX6SX.
458
20c305f6
AH
459 config DEBUG_IMX6UL_UART
460 bool "i.MX6UL Debug UART"
461 depends on SOC_IMX6UL
462 help
463 Say Y here if you want kernel low-level debugging support
464 on i.MX6UL.
465
52d7aec2
AH
466 config DEBUG_IMX7D_UART
467 bool "i.MX7D Debug UART"
468 depends on SOC_IMX7D
469 help
470 Say Y here if you want kernel low-level debugging support
471 on i.MX7D.
472
4db22c10
AB
473 config DEBUG_INTEGRATOR
474 bool "Kernel low-level debugging messages via ARM Integrator UART"
475 depends on ARCH_INTEGRATOR
476 select DEBUG_UART_PL01X
477 help
478 Say Y here if you want kernel low-level debugging support
479 on ARM Integrator platforms.
480
828989ad
SS
481 config DEBUG_KEYSTONE_UART0
482 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
483 depends on ARCH_KEYSTONE
f2acf003 484 select DEBUG_UART_8250
828989ad
SS
485 help
486 Say Y here if you want the debug print routines to direct
487 their output to UART0 serial port on KEYSTONE2 devices.
488
489 config DEBUG_KEYSTONE_UART1
490 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
491 depends on ARCH_KEYSTONE
f2acf003 492 select DEBUG_UART_8250
828989ad
SS
493 help
494 Say Y here if you want the debug print routines to direct
495 their output to UART1 serial port on KEYSTONE2 devices.
496
abbfb21e
DT
497 config DEBUG_KS8695_UART
498 bool "KS8695 Debug UART"
499 depends on ARCH_KS8695
500 help
501 Say Y here if you want kernel low-level debugging support
502 on KS8695.
503
0aed6a37
JE
504 config DEBUG_LPC18XX_UART0
505 bool "Kernel low-level debugging via LPC18xx/43xx UART0"
506 depends on ARCH_LPC18XX
507 select DEBUG_UART_8250
508 help
509 Say Y here if you want kernel low-level debugging support
510 on NXP LPC18xx/43xx UART0.
511
59bd4c38
AB
512 config DEBUG_LPC32XX
513 bool "Kernel low-level debugging messages via NXP LPC32xx UART"
514 depends on ARCH_LPC32XX
515 select DEBUG_UART_8250
516 help
517 Say Y here if you want kernel low-level debugging support
518 on NXP LPC32xx based platforms.
519
d8a00916
CC
520 config DEBUG_MESON_UARTAO
521 bool "Kernel low-level debugging via Meson6 UARTAO"
522 depends on ARCH_MESON
523 help
524 Say Y here if you want kernel low-lever debugging support
525 on Amlogic Meson6 based platforms on the UARTAO.
526
fa4cd2a8
HZ
527 config DEBUG_MMP_UART2
528 bool "Kernel low-level debugging message via MMP UART2"
529 depends on ARCH_MMP
4a003647 530 select DEBUG_UART_8250
fa4cd2a8
HZ
531 help
532 Say Y here if you want kernel low-level debugging support
533 on MMP UART2.
534
535 config DEBUG_MMP_UART3
536 bool "Kernel low-level debugging message via MMP UART3"
537 depends on ARCH_MMP
4a003647 538 select DEBUG_UART_8250
fa4cd2a8
HZ
539 help
540 Say Y here if you want kernel low-level debugging support
541 on MMP UART3.
542
d91125dd
MR
543 config DEBUG_MVEBU_UART0
544 bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
bfd5af99 545 depends on ARCH_MVEBU
c047f529 546 depends on ARCH_MVEBU && CPU_V7
4a003647 547 select DEBUG_UART_8250
bfd5af99
RH
548 help
549 Say Y here if you want kernel low-level debugging support
d91125dd 550 on MVEBU based platforms on UART0.
bfd5af99 551
c2804cd6
TP
552 This option should be used with the old bootloaders
553 that left the internal registers mapped at
554 0xd0000000. As of today, this is the case on
555 platforms such as the Globalscale Mirabox or the
556 Plathome OpenBlocks AX3, when using the original
557 bootloader.
558
c047f529
AB
559 This option will not work on older Marvell platforms
560 (Kirkwood, Dove, MV78xx0, Orion5x), which should pick
561 the "new bootloader" variant.
562
c2804cd6
TP
563 If the wrong DEBUG_MVEBU_UART* option is selected,
564 when u-boot hands over to the kernel, the system
565 silently crashes, with no serial output at all.
566
d91125dd
MR
567 config DEBUG_MVEBU_UART0_ALTERNATE
568 bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
c047f529 569 depends on ARCH_MVEBU || ARCH_DOVE || ARCH_MV78XX0 || ARCH_ORION5X
4a003647 570 select DEBUG_UART_8250
c2804cd6
TP
571 help
572 Say Y here if you want kernel low-level debugging support
c047f529
AB
573 on MVEBU based platforms on UART0. (Armada XP, Armada 3xx,
574 Kirkwood, Dove, MV78xx0, Orion5x).
575
c2804cd6
TP
576
577 This option should be used with the new bootloaders
578 that remap the internal registers at 0xf1000000.
579
580 If the wrong DEBUG_MVEBU_UART* option is selected,
581 when u-boot hands over to the kernel, the system
582 silently crashes, with no serial output at all.
583
bd920490
MR
584 config DEBUG_MVEBU_UART1_ALTERNATE
585 bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
c2804cd6 586 depends on ARCH_MVEBU
4a003647 587 select DEBUG_UART_8250
c2804cd6
TP
588 help
589 Say Y here if you want kernel low-level debugging support
c047f529
AB
590 on MVEBU based platforms on UART1. (Armada XP, Armada 3xx,
591 Kirkwood, Dove, MV78xx0, Orion5x).
c2804cd6
TP
592
593 This option should be used with the new bootloaders
594 that remap the internal registers at 0xf1000000.
c047f529
AB
595 All of the older (pre Armada XP/370) platforms also use
596 this address, regardless of the boot loader version.
c2804cd6
TP
597
598 If the wrong DEBUG_MVEBU_UART* option is selected,
599 when u-boot hands over to the kernel, the system
600 silently crashes, with no serial output at all.
601
1dc93416
AB
602 config DEBUG_MT6589_UART0
603 bool "Mediatek mt6589 UART0"
604 depends on ARCH_MEDIATEK
605 select DEBUG_UART_8250
c7c3eac6
SG
606 help
607 Say Y here if you want kernel low-level debugging support
1dc93416
AB
608 for Mediatek mt6589 based platforms on UART0.
609
610 config DEBUG_MT8127_UART0
611 bool "Mediatek mt8127/mt6592 UART0"
612 depends on ARCH_MEDIATEK
613 select DEBUG_UART_8250
614 help
615 Say Y here if you want kernel low-level debugging support
616 for Mediatek mt8127 based platforms on UART0.
617
618 config DEBUG_MT8135_UART3
619 bool "Mediatek mt8135 UART3"
620 depends on ARCH_MEDIATEK
621 select DEBUG_UART_8250
622 help
623 Say Y here if you want kernel low-level debugging support
624 for Mediatek mt8135 based platforms on UART3.
c7c3eac6 625
4d31e664
DT
626 config DEBUG_NETX_UART
627 bool "Kernel low-level debugging messages via NetX UART"
628 depends on ARCH_NETX
629 help
630 Say Y here if you want kernel low-level debugging support
631 on Hilscher NetX based platforms.
632
266c3479
LW
633 config DEBUG_NOMADIK_UART
634 bool "Kernel low-level debugging messages via NOMADIK UART"
635 depends on ARCH_NOMADIK
5c972af4 636 select DEBUG_UART_PL01X
266c3479
LW
637 help
638 Say Y here if you want kernel low-level debugging support
639 on NOMADIK based platforms.
640
9851ca57
DT
641 config DEBUG_NSPIRE_CLASSIC_UART
642 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
643 depends on ARCH_NSPIRE
4a003647 644 select DEBUG_UART_8250
9851ca57
DT
645 help
646 Say Y here if you want kernel low-level debugging support
647 on TI-NSPIRE classic models.
648
649 config DEBUG_NSPIRE_CX_UART
650 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
651 depends on ARCH_NSPIRE
5c972af4 652 select DEBUG_UART_PL01X
9851ca57
DT
653 help
654 Say Y here if you want kernel low-level debugging support
655 on TI-NSPIRE CX models.
656
c26b9993
DT
657 config DEBUG_OMAP1UART1
658 bool "Kernel low-level debugging via OMAP1 UART1"
659 depends on ARCH_OMAP1
660 select DEBUG_UART_8250
661 help
662 Say Y here if you want kernel low-level debugging support
663 on OMAP1 based platforms (except OMAP730) on the UART1.
664
665 config DEBUG_OMAP1UART2
666 bool "Kernel low-level debugging via OMAP1 UART2"
667 depends on ARCH_OMAP1
668 select DEBUG_UART_8250
669 help
670 Say Y here if you want kernel low-level debugging support
671 on OMAP1 based platforms (except OMAP730) on the UART2.
672
673 config DEBUG_OMAP1UART3
674 bool "Kernel low-level debugging via OMAP1 UART3"
675 depends on ARCH_OMAP1
676 select DEBUG_UART_8250
677 help
678 Say Y here if you want kernel low-level debugging support
679 on OMAP1 based platforms (except OMAP730) on the UART3.
680
cce278d2
RK
681 config DEBUG_OMAP2UART1
682 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
808b7e07 683 depends on ARCH_OMAP2PLUS
d2b310b0 684 select DEBUG_UART_8250
808b7e07 685 help
cce278d2
RK
686 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
687 omap3 torpedo and 3530 lv som.
688
689 config DEBUG_OMAP2UART2
690 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
691 depends on ARCH_OMAP2PLUS
d2b310b0 692 select DEBUG_UART_8250
cce278d2
RK
693
694 config DEBUG_OMAP2UART3
695 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
696 depends on ARCH_OMAP2PLUS
d2b310b0 697 select DEBUG_UART_8250
cce278d2
RK
698
699 config DEBUG_OMAP3UART3
700 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
701 depends on ARCH_OMAP2PLUS
fc23beb8 702 select DEBUG_UART_8250
cce278d2
RK
703 help
704 This covers at least cm_t3x, beagle, crane, devkit8000,
705 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
706 and 3517evm.
707
708 config DEBUG_OMAP4UART3
709 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
710 depends on ARCH_OMAP2PLUS
fc23beb8 711 select DEBUG_UART_8250
cce278d2
RK
712
713 config DEBUG_OMAP3UART4
714 bool "Kernel low-level debugging messages via OMAP36XX UART4"
715 depends on ARCH_OMAP2PLUS
fc23beb8 716 select DEBUG_UART_8250
cce278d2
RK
717
718 config DEBUG_OMAP4UART4
719 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
720 depends on ARCH_OMAP2PLUS
fc23beb8 721 select DEBUG_UART_8250
cce278d2 722
c26b9993
DT
723 config DEBUG_OMAP7XXUART1
724 bool "Kernel low-level debugging via OMAP730 UART1"
725 depends on ARCH_OMAP730
726 select DEBUG_UART_8250
727 help
728 Say Y here if you want kernel low-level debugging support
729 on OMAP730 based platforms on the UART1.
730
731 config DEBUG_OMAP7XXUART2
732 bool "Kernel low-level debugging via OMAP730 UART2"
733 depends on ARCH_OMAP730
734 select DEBUG_UART_8250
735 help
736 Say Y here if you want kernel low-level debugging support
737 on OMAP730 based platforms on the UART2.
738
739 config DEBUG_OMAP7XXUART3
740 bool "Kernel low-level debugging via OMAP730 UART3"
741 depends on ARCH_OMAP730
742 select DEBUG_UART_8250
743 help
744 Say Y here if you want kernel low-level debugging support
745 on OMAP730 based platforms on the UART3.
746
cce278d2
RK
747 config DEBUG_TI81XXUART1
748 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
749 depends on ARCH_OMAP2PLUS
2d1f7d2e 750 select DEBUG_UART_8250
cce278d2
RK
751
752 config DEBUG_TI81XXUART2
753 bool "Kernel low-level debugging messages via TI81XX UART2"
754 depends on ARCH_OMAP2PLUS
2d1f7d2e 755 select DEBUG_UART_8250
cce278d2
RK
756
757 config DEBUG_TI81XXUART3
758 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
759 depends on ARCH_OMAP2PLUS
2d1f7d2e 760 select DEBUG_UART_8250
cce278d2
RK
761
762 config DEBUG_AM33XXUART1
763 bool "Kernel low-level debugging messages via AM33XX UART1"
764 depends on ARCH_OMAP2PLUS
51ef7003 765 select DEBUG_UART_8250
cce278d2
RK
766
767 config DEBUG_ZOOM_UART
768 bool "Kernel low-level debugging messages via Zoom2/3 UART"
769 depends on ARCH_OMAP2PLUS
770 select DEBUG_OMAP2PLUS_UART
808b7e07 771
59bba2a9
RH
772 config DEBUG_PICOXCELL_UART
773 depends on ARCH_PICOXCELL
774 bool "Use PicoXcell UART for low-level debug"
0b4cccbe 775 select DEBUG_UART_8250
59bba2a9
RH
776 help
777 Say Y here if you want kernel low-level debugging support
778 on PicoXcell based platforms.
779
0a43cd3b
HZ
780 config DEBUG_PXA_UART1
781 depends on ARCH_PXA
782 bool "Use PXA UART1 for low-level debug"
4a003647 783 select DEBUG_UART_8250
0a43cd3b
HZ
784 help
785 Say Y here if you want kernel low-level debugging support
786 on PXA UART1.
787
1dc93416
AB
788 config DEBUG_QCOM_UARTDM
789 bool "Kernel low-level debugging messages via QCOM UARTDM"
790 depends on ARCH_QCOM
791 help
792 Say Y here if you want the debug print routines to direct
793 their output to the serial port on Qualcomm devices.
794
795 ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
796 APQ8064 0x16640000 0xf0040000
797 APQ8084 0xf995e000 0xfa75e000
7b87fe94 798 IPQ4019 0x078af000 0xf78af000
1dc93416
AB
799 MSM8X60 0x19c40000 0xf0040000
800 MSM8960 0x16440000 0xf0040000
801 MSM8974 0xf991e000 0xfa71e000
802
803 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
804 options based on your needs.
805
1285b8f8
WD
806 config DEBUG_REALVIEW_STD_PORT
807 bool "RealView Default UART"
808 depends on ARCH_REALVIEW
5c972af4 809 select DEBUG_UART_PL01X
1285b8f8
WD
810 help
811 Say Y here if you want the debug print routines to direct
812 their output to the serial port on RealView EB, PB11MP, PBA8
813 and PBX platforms.
814
815 config DEBUG_REALVIEW_PB1176_PORT
816 bool "RealView PB1176 UART"
817 depends on MACH_REALVIEW_PB1176
5c972af4 818 select DEBUG_UART_PL01X
1285b8f8
WD
819 help
820 Say Y here if you want the debug print routines to direct
821 their output to the standard serial port on the RealView
822 PB1176 platform.
823
a3b882f9
AY
824 config DEBUG_RV1108_UART0
825 bool "Kernel low-level debugging messages via Rockchip RV1108 UART0"
826 depends on ARCH_ROCKCHIP
827 select DEBUG_UART_8250
828 help
829 Say Y here if you want kernel low-level debugging support
830 on Rockchip RV1108 based platforms.
831
832 config DEBUG_RV1108_UART1
833 bool "Kernel low-level debugging messages via Rockchip RV1108 UART1"
834 depends on ARCH_ROCKCHIP
835 select DEBUG_UART_8250
836 help
837 Say Y here if you want kernel low-level debugging support
838 on Rockchip RV1108 based platforms.
839
840 config DEBUG_RV1108_UART2
841 bool "Kernel low-level debugging messages via Rockchip RV1108 UART2"
842 depends on ARCH_ROCKCHIP
843 select DEBUG_UART_8250
844 help
845 Say Y here if you want kernel low-level debugging support
846 on Rockchip RV1108 based platforms.
847
cce278d2
RK
848 config DEBUG_RK29_UART0
849 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
850 depends on ARCH_ROCKCHIP
4a003647 851 select DEBUG_UART_8250
cce278d2
RK
852 help
853 Say Y here if you want kernel low-level debugging support
854 on Rockchip based platforms.
855
856 config DEBUG_RK29_UART1
857 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
858 depends on ARCH_ROCKCHIP
4a003647 859 select DEBUG_UART_8250
cce278d2
RK
860 help
861 Say Y here if you want kernel low-level debugging support
862 on Rockchip based platforms.
863
864 config DEBUG_RK29_UART2
865 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
866 depends on ARCH_ROCKCHIP
4a003647 867 select DEBUG_UART_8250
cce278d2
RK
868 help
869 Say Y here if you want kernel low-level debugging support
870 on Rockchip based platforms.
871
872 config DEBUG_RK3X_UART0
aa9c4f74 873 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
cce278d2 874 depends on ARCH_ROCKCHIP
4a003647 875 select DEBUG_UART_8250
cce278d2
RK
876 help
877 Say Y here if you want kernel low-level debugging support
878 on Rockchip based platforms.
879
880 config DEBUG_RK3X_UART1
aa9c4f74 881 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
38bd6892 882 depends on ARCH_ROCKCHIP
4a003647 883 select DEBUG_UART_8250
cce278d2
RK
884 help
885 Say Y here if you want kernel low-level debugging support
886 on Rockchip based platforms.
887
888 config DEBUG_RK3X_UART2
aa9c4f74 889 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
cce278d2 890 depends on ARCH_ROCKCHIP
4a003647 891 select DEBUG_UART_8250
cce278d2
RK
892 help
893 Say Y here if you want kernel low-level debugging support
894 on Rockchip based platforms.
895
896 config DEBUG_RK3X_UART3
aa9c4f74 897 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
cce278d2 898 depends on ARCH_ROCKCHIP
4a003647 899 select DEBUG_UART_8250
38bd6892
HS
900 help
901 Say Y here if you want kernel low-level debugging support
902 on Rockchip based platforms.
903
efd02ee9
HS
904 config DEBUG_RK32_UART2
905 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
906 depends on ARCH_ROCKCHIP
907 select DEBUG_UART_8250
908 help
909 Say Y here if you want kernel low-level debugging support
910 on Rockchip RK32xx based platforms.
911
7a2071c5
GU
912 config DEBUG_R7S72100_SCIF2
913 bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
914 depends on ARCH_R7S72100
915 help
916 Say Y here if you want kernel low-level debugging support
917 via SCIF2 on Renesas RZ/A1H (R7S72100).
918
919 config DEBUG_RCAR_GEN1_SCIF0
920 bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
921 depends on ARCH_R8A7778
922 help
923 Say Y here if you want kernel low-level debugging support
924 via SCIF0 on Renesas R-Car M1A (R8A7778).
925
926 config DEBUG_RCAR_GEN1_SCIF2
927 bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
928 depends on ARCH_R8A7779
929 help
930 Say Y here if you want kernel low-level debugging support
931 via SCIF2 on Renesas R-Car H1 (R8A7779).
932
933 config DEBUG_RCAR_GEN2_SCIF0
fcfbb6f1
CP
934 bool "Kernel low-level debugging messages via SCIF0 on R-Car Gen2 and RZ/G1"
935 depends on ARCH_R8A7743 || ARCH_R8A7790 || ARCH_R8A7791 || \
936 ARCH_R8A7792 || ARCH_R8A7793
7a2071c5
GU
937 help
938 Say Y here if you want kernel low-level debugging support
fcfbb6f1
CP
939 via SCIF0 on Renesas RZ/G1M (R8A7743), R-Car H2 (R8A7790),
940 M2-W (R8A7791), V2H (R8A7792), or M2-N (R8A7793).
7a2071c5 941
2f095c26
BD
942 config DEBUG_RCAR_GEN2_SCIF1
943 bool "Kernel low-level debugging messages via SCIF1 on R8A77470"
944 depends on ARCH_R8A77470
945 help
946 Say Y here if you want kernel low-level debugging support
947 via SCIF1 on Renesas RZ/G1C (R8A77470).
948
7a2071c5
GU
949 config DEBUG_RCAR_GEN2_SCIF2
950 bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
951 depends on ARCH_R8A7794
952 help
953 Say Y here if you want kernel low-level debugging support
954 via SCIF2 on Renesas R-Car E2 (R8A7794).
955
8e5f2d65
FC
956 config DEBUG_RCAR_GEN2_SCIF4
957 bool "Kernel low-level debugging messages via SCIF4 on R8A7745"
958 depends on ARCH_R8A7745
959 help
960 Say Y here if you want kernel low-level debugging support
961 via SCIF4 on Renesas RZ/G1E (R8A7745).
962
7a2071c5 963 config DEBUG_RMOBILE_SCIFA0
59b89af1
MD
964 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
965 depends on ARCH_R8A73A4
7a2071c5
GU
966 help
967 Say Y here if you want kernel low-level debugging support
59b89af1 968 via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
7a2071c5
GU
969
970 config DEBUG_RMOBILE_SCIFA1
971 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
972 depends on ARCH_R8A7740
973 help
974 Say Y here if you want kernel low-level debugging support
975 via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
976
977 config DEBUG_RMOBILE_SCIFA4
978 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
979 depends on ARCH_SH73A0
980 help
981 Say Y here if you want kernel low-level debugging support
982 via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
983
e76f4750
RK
984 config DEBUG_S3C_UART0
985 depends on PLAT_SAMSUNG
a2e40710 986 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1899de28 987 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
bb08dea1 988 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
7bab7d9e 989 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 990 bool "Use Samsung S3C UART 0 for low-level debug"
650e3f0d
SB
991 help
992 Say Y here if you want the debug print routines to direct
e76f4750
RK
993 their output to UART 0. The port must have been initialised
994 by the boot-loader before use.
650e3f0d 995
e76f4750
RK
996 config DEBUG_S3C_UART1
997 depends on PLAT_SAMSUNG
a2e40710 998 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1899de28 999 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
bb08dea1 1000 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
7bab7d9e 1001 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 1002 bool "Use Samsung S3C UART 1 for low-level debug"
650e3f0d
SB
1003 help
1004 Say Y here if you want the debug print routines to direct
e76f4750
RK
1005 their output to UART 1. The port must have been initialised
1006 by the boot-loader before use.
650e3f0d 1007
e76f4750
RK
1008 config DEBUG_S3C_UART2
1009 depends on PLAT_SAMSUNG
a2e40710 1010 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1899de28 1011 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
bb08dea1 1012 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
7bab7d9e 1013 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 1014 bool "Use Samsung S3C UART 2 for low-level debug"
650e3f0d
SB
1015 help
1016 Say Y here if you want the debug print routines to direct
e76f4750
RK
1017 their output to UART 2. The port must have been initialised
1018 by the boot-loader before use.
650e3f0d 1019
5fa23dde 1020 config DEBUG_S3C_UART3
7bab7d9e
TF
1021 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
1022 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
bb08dea1 1023 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
7bab7d9e 1024 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 1025 bool "Use Samsung S3C UART 3 for low-level debug"
5fa23dde
OJ
1026 help
1027 Say Y here if you want the debug print routines to direct
1028 their output to UART 3. The port must have been initialised
1029 by the boot-loader before use.
1030
daf67dfc
HS
1031 config DEBUG_S3C2410_UART0
1032 depends on ARCH_S3C24XX
1033 select DEBUG_S3C2410_UART
1034 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
1035 help
1036 Say Y here if you want the debug print routines to direct
1037 their output to UART 0. The port must have been initialised
1038 by the boot-loader before use.
1039
1040 config DEBUG_S3C2410_UART1
1041 depends on ARCH_S3C24XX
1042 select DEBUG_S3C2410_UART
1043 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
1044 help
1045 Say Y here if you want the debug print routines to direct
1046 their output to UART 1. The port must have been initialised
1047 by the boot-loader before use.
1048
1049 config DEBUG_S3C2410_UART2
1050 depends on ARCH_S3C24XX
1051 select DEBUG_S3C2410_UART
1052 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
1053 help
1054 Say Y here if you want the debug print routines to direct
1055 their output to UART 2. The port must have been initialised
1056 by the boot-loader before use.
1057
e6131fa3
DES
1058 config DEBUG_SA1100
1059 depends on ARCH_SA1100
1060 bool "Use SA1100 UARTs for low-level debug"
1061 help
1062 Say Y here if you want kernel low-level debugging support
1063 on SA-11x0 UART ports. The kernel will check for the first
1064 enabled UART in a sequence 3-1-2.
1065
de73c162 1066 config DEBUG_SOCFPGA_UART0
6111bf7c 1067 depends on ARCH_SOCFPGA
de73c162 1068 bool "Use SOCFPGA UART0 for low-level debug"
0b4cccbe 1069 select DEBUG_UART_8250
6111bf7c
RH
1070 help
1071 Say Y here if you want kernel low-level debugging support
de73c162
DN
1072 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1073
1074 config DEBUG_SOCFPGA_UART1
1075 depends on ARCH_SOCFPGA
1076 bool "Use SOCFPGA UART1 for low-level debug"
1077 select DEBUG_UART_8250
1078 help
1079 Say Y here if you want kernel low-level debugging support
1080 on SOCFPGA(Arria 10) based platforms.
1081
6111bf7c 1082
d4da889a
CYT
1083 config DEBUG_SUN9I_UART0
1084 bool "Kernel low-level debugging messages via sun9i UART0"
1085 depends on MACH_SUN9I
1086 select DEBUG_UART_8250
1087 help
1088 Say Y here if you want kernel low-level debugging support
1089 on Allwinner A80 based platforms on the UART0.
1090
aa25115a
SR
1091 config DEBUG_SUNXI_UART0
1092 bool "Kernel low-level debugging messages via sunXi UART0"
1093 depends on ARCH_SUNXI
4a003647 1094 select DEBUG_UART_8250
aa25115a
SR
1095 help
1096 Say Y here if you want kernel low-level debugging support
1097 on Allwinner A1X based platforms on the UART0.
1098
cb84fa18
MR
1099 config DEBUG_SUNXI_UART1
1100 bool "Kernel low-level debugging messages via sunXi UART1"
1101 depends on ARCH_SUNXI
4a003647 1102 select DEBUG_UART_8250
cb84fa18
MR
1103 help
1104 Say Y here if you want kernel low-level debugging support
1105 on Allwinner A1X based platforms on the UART1.
1106
c4718543
CYT
1107 config DEBUG_SUNXI_R_UART
1108 bool "Kernel low-level debugging messages via sunXi R_UART"
1109 depends on MACH_SUN6I || MACH_SUN8I
1110 select DEBUG_UART_8250
1111 help
1112 Say Y here if you want kernel low-level debugging support
1113 on Allwinner A31/A23 based platforms on the R_UART.
1114
7f46a107
BS
1115 config DEBUG_SIRFPRIMA2_UART1
1116 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
1117 depends on ARCH_PRIMA2
01ea63d9 1118 select DEBUG_SIRFSOC_UART
7f46a107
BS
1119 help
1120 Say Y here if you want the debug print routines to direct
1121 their output to the uart1 port on SiRFprimaII devices.
1122
01ea63d9
GZ
1123 config DEBUG_SIRFATLAS7_UART0
1124 bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
1125 depends on ARCH_ATLAS7
1126 select DEBUG_SIRFSOC_UART
7f46a107
BS
1127 help
1128 Say Y here if you want the debug print routines to direct
01ea63d9
GZ
1129 their output to the uart0 port on SiRFATLAS7 devices.The uart0
1130 is used on SiRFATLAS7 as a extra debug port.sometimes an extra
1131 debug port can be very useful.
1132
1133 config DEBUG_SIRFATLAS7_UART1
1134 bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
1135 depends on ARCH_ATLAS7
1136 select DEBUG_SIRFSOC_UART
1137 help
1138 Say Y here if you want the debug print routines to direct
1139 their output to the uart1 port on SiRFATLAS7 devices.
7f46a107 1140
375d84cf
AB
1141 config DEBUG_SPEAR3XX
1142 bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
1143 depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
1144 select DEBUG_UART_PL01X
1145 help
1146 Say Y here if you want kernel low-level debugging support
1147 on ST SPEAr based platforms.
1148
1149 config DEBUG_SPEAR13XX
1150 bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
1151 depends on ARCH_SPEAR13XX
1152 select DEBUG_UART_PL01X
1153 help
1154 Say Y here if you want kernel low-level debugging support
1155 on ST SPEAr13xx based platforms.
1156
cce278d2
RK
1157 config STIH41X_DEBUG_ASC2
1158 bool "Use StiH415/416 ASC2 UART for low-level debug"
1159 depends on ARCH_STI
1160 select DEBUG_STI_UART
1161 help
1162 Say Y here if you want kernel low-level debugging support
1163 on STiH415/416 based platforms like b2000, which has
1164 default UART wired up to ASC2.
1165
1166 If unsure, say N.
1167
1168 config STIH41X_DEBUG_SBC_ASC1
1169 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
5562b800 1170 depends on ARCH_STI
cce278d2 1171 select DEBUG_STI_UART
5562b800
AB
1172 help
1173 Say Y here if you want kernel low-level debugging support
cce278d2
RK
1174 on STiH415/416 based platforms like b2020. which has
1175 default UART wired up to SBC ASC1.
5562b800
AB
1176
1177 If unsure, say N.
1178
cce278d2
RK
1179 config TEGRA_DEBUG_UART_AUTO_ODMDATA
1180 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
46067803 1181 depends on ARCH_TEGRA
cce278d2
RK
1182 select DEBUG_TEGRA_UART
1183 help
1184 Automatically determines which UART to use for low-level
1185 debug based on the ODMDATA value. This value is part of
1186 the BCT, and is written to the boot memory device using
1187 nvflash, or other flashing tool. When bits 19:18 are 3,
1188 then bits 17:15 indicate which UART to use; 0/1/2/3/4
1189 are UART A/B/C/D/E.
1190
1191 config TEGRA_DEBUG_UARTA
1192 bool "Kernel low-level debugging messages via Tegra UART A"
1193 depends on ARCH_TEGRA
1194 select DEBUG_TEGRA_UART
1195 help
1196 Say Y here if you want kernel low-level debugging support
1197 on Tegra based platforms.
1198
1199 config TEGRA_DEBUG_UARTB
1200 bool "Kernel low-level debugging messages via Tegra UART B"
1201 depends on ARCH_TEGRA
1202 select DEBUG_TEGRA_UART
1203 help
1204 Say Y here if you want kernel low-level debugging support
1205 on Tegra based platforms.
1206
1207 config TEGRA_DEBUG_UARTC
1208 bool "Kernel low-level debugging messages via Tegra UART C"
1209 depends on ARCH_TEGRA
1210 select DEBUG_TEGRA_UART
1211 help
1212 Say Y here if you want kernel low-level debugging support
1213 on Tegra based platforms.
1214
1215 config TEGRA_DEBUG_UARTD
1216 bool "Kernel low-level debugging messages via Tegra UART D"
1217 depends on ARCH_TEGRA
1218 select DEBUG_TEGRA_UART
1219 help
1220 Say Y here if you want kernel low-level debugging support
1221 on Tegra based platforms.
1222
1223 config TEGRA_DEBUG_UARTE
1224 bool "Kernel low-level debugging messages via Tegra UART E"
1225 depends on ARCH_TEGRA
1226 select DEBUG_TEGRA_UART
46067803
SW
1227 help
1228 Say Y here if you want kernel low-level debugging support
1229 on Tegra based platforms.
1230
dd324da7
LW
1231 config DEBUG_U300_UART
1232 bool "Kernel low-level debugging messages via U300 UART0"
1233 depends on ARCH_U300
5c972af4 1234 select DEBUG_UART_PL01X
dd324da7
LW
1235 help
1236 Say Y here if you want the debug print routines to direct
1237 their output to the uart port on U300 devices.
1238
f87b95dd
LW
1239 config DEBUG_UX500_UART
1240 depends on ARCH_U8500
1241 bool "Use Ux500 UART for low-level debug"
1242 help
1243 Say Y here if you want kernel low-level debugging support
1244 on Ux500 based platforms.
1245
4db22c10
AB
1246 config DEBUG_VERSATILE
1247 bool "Kernel low-level debugging messages via ARM Versatile UART"
1248 depends on ARCH_VERSATILE
1249 select DEBUG_UART_PL01X
65ec48c0
J
1250 help
1251 Say Y here if you want kernel low-level debugging support
4db22c10 1252 on ARM Versatile platforms.
65ec48c0 1253
1b820eaf
PM
1254 config DEBUG_VEXPRESS_UART0_DETECT
1255 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
1256 depends on ARCH_VEXPRESS && CPU_CP15_MMU
1257 help
1258 This option enables a simple heuristic which tries to determine
1259 the motherboard's memory map variant (original or RS1) and then
1260 choose the relevant UART0 base address.
1261
1262 Note that this will only work with standard A-class core tiles,
1263 and may fail with non-standard SMM or custom software models.
1264
1265 config DEBUG_VEXPRESS_UART0_CA9
1266 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
1267 depends on ARCH_VEXPRESS
5c972af4 1268 select DEBUG_UART_PL01X
1b820eaf
PM
1269 help
1270 This option selects UART0 at 0x10009000. Except for custom models,
1271 this applies only to the V2P-CA9 tile.
1272
1273 config DEBUG_VEXPRESS_UART0_RS1
1274 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
1275 depends on ARCH_VEXPRESS
5c972af4 1276 select DEBUG_UART_PL01X
1b820eaf
PM
1277 help
1278 This option selects UART0 at 0x1c090000. This applies to most
1279 of the tiles using the RS1 memory map, including all new A-class
1280 core tiles, FPGA-based SMMs and software models.
1281
ed18bdc8
JA
1282 config DEBUG_VEXPRESS_UART0_CRX
1283 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1284 depends on ARCH_VEXPRESS && !MMU
5c972af4 1285 select DEBUG_UART_PL01X
ed18bdc8
JA
1286 help
1287 This option selects UART0 at 0xb0090000. This is appropriate for
1288 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1289
1dc93416
AB
1290 config DEBUG_VF_UART
1291 bool "Vybrid UART"
1292 depends on SOC_VF610
1293 help
1294 Say Y here if you want kernel low-level debugging support
1295 on Vybrid based platforms.
1296
b61a2722
TP
1297 config DEBUG_VT8500_UART0
1298 bool "Use UART0 on VIA/Wondermedia SoCs"
1299 depends on ARCH_VT8500
1300 help
1301 This option selects UART0 on VIA/Wondermedia System-on-a-chip
1302 devices, including VT8500, WM8505, WM8650 and WM8850.
1303
1dc93416
AB
1304 config DEBUG_ZTE_ZX
1305 bool "Use ZTE ZX UART"
1306 select DEBUG_UART_PL01X
1307 depends on ARCH_ZX
1308 help
1309 Say Y here if you are enabling ZTE ZX296702 SOC and need
1310 debug uart support.
1311
1312 This option is preferred over the platform specific
1313 options; the platform specific options are deprecated
1314 and will be soon removed.
1315
1316 config DEBUG_ZYNQ_UART0
1317 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
1318 depends on ARCH_ZYNQ
1319 help
1320 Say Y here if you want the debug print routines to direct
1321 their output to UART0 on the Zynq platform.
1322
1323 config DEBUG_ZYNQ_UART1
1324 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
1325 depends on ARCH_ZYNQ
1326 help
1327 Say Y here if you want the debug print routines to direct
1328 their output to UART1 on the Zynq platform.
1329
1330 If you have a ZC702 board and want early boot messages to
1331 appear on the USB serial adaptor, select this option.
1332
e76f4750
RK
1333 config DEBUG_ICEDCC
1334 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
a3d3ef9d
SB
1335 help
1336 Say Y here if you want the debug print routines to direct
e76f4750
RK
1337 their output to the EmbeddedICE macrocell's DCC channel using
1338 co-processor 14. This is known to work on the ARM9 style ICE
1339 channel and on the XScale with the PEEDI.
1340
1341 Note that the system will appear to hang during boot if there
1342 is nothing connected to read from the DCC.
a3d3ef9d 1343
b0df8986 1344 config DEBUG_SEMIHOSTING
62194bda 1345 bool "Kernel low-level debug output via semihosting I/O"
650e3f0d 1346 help
b0df8986
RK
1347 Semihosting enables code running on an ARM target to use
1348 the I/O facilities on a host debugger/emulator through a
62194bda 1349 simple SVC call. The host debugger or emulator must have
b0df8986
RK
1350 semihosting enabled for the special svc call to be trapped
1351 otherwise the kernel will crash.
650e3f0d 1352
62194bda 1353 This is known to work with OpenOCD, as well as
b0df8986
RK
1354 ARM's Fast Models, or any other controlling environment
1355 that implements semihosting.
a3d3ef9d 1356
b0df8986
RK
1357 For more details about semihosting, please see
1358 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
a3d3ef9d 1359
f8f1279c
RK
1360 config DEBUG_LL_UART_8250
1361 bool "Kernel low-level debugging via 8250 UART"
1362 help
1363 Say Y here if you wish the debug print routes to direct
1364 their output to an 8250 UART. You can use this option
1365 to provide the parameters for the 8250 UART rather than
1366 selecting one of the platform specific options above if
1367 you know the parameters for the port.
1368
1369 This option is preferred over the platform specific
1370 options; the platform specific options are deprecated
1371 and will be soon removed.
1372
494e492d
UKK
1373 config DEBUG_LL_UART_EFM32
1374 bool "Kernel low-level debugging via efm32 UART"
1375 depends on ARCH_EFM32
1376 help
1377 Say Y here if you want the debug print routines to direct
1378 their output to an UART or USART port on efm32 based
1379 machines. Use the following addresses for DEBUG_UART_PHYS:
1380
1381 0x4000c000 | USART0
1382 0x4000c400 | USART1
1383 0x4000c800 | USART2
1384 0x4000e000 | UART0
1385 0x4000e400 | UART1
1386
f8f1279c
RK
1387 config DEBUG_LL_UART_PL01X
1388 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1389 help
1390 Say Y here if you wish the debug print routes to direct
1391 their output to a PL01x Primecell UART. You can use
1392 this option to provide the parameters for the UART
1393 rather than selecting one of the platform specific
1394 options above if you know the parameters for the port.
1395
1396 This option is preferred over the platform specific
1397 options; the platform specific options are deprecated
1398 and will be soon removed.
1399
17916b28
WD
1400endchoice
1401
8b2f2d03
AB
1402config DEBUG_AT91_UART
1403 bool
1404 depends on ARCH_AT91
1405
a2e40710
AB
1406config DEBUG_EXYNOS_UART
1407 bool
1408
daf67dfc
HS
1409config DEBUG_S3C2410_UART
1410 bool
1899de28
HS
1411 select DEBUG_S3C24XX_UART
1412
1413config DEBUG_S3C24XX_UART
1414 bool
daf67dfc 1415
bb08dea1
AB
1416config DEBUG_S3C64XX_UART
1417 bool
1418
7bab7d9e
TF
1419config DEBUG_S5PV210_UART
1420 bool
1421
cce278d2
RK
1422config DEBUG_OMAP2PLUS_UART
1423 bool
1424 depends on ARCH_OMAP2PLUS
1425
f8c95fe6
SG
1426config DEBUG_IMX_UART_PORT
1427 int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1428 DEBUG_IMX25_UART || \
1429 DEBUG_IMX21_IMX27_UART || \
1430 DEBUG_IMX31_UART || \
1431 DEBUG_IMX35_UART || \
ad364a70 1432 DEBUG_IMX50_UART || \
f8c95fe6 1433 DEBUG_IMX51_UART || \
0c52db7e 1434 DEBUG_IMX53_UART || \
34e8a16b 1435 DEBUG_IMX6Q_UART || \
74368e81 1436 DEBUG_IMX6SL_UART || \
52d7aec2 1437 DEBUG_IMX6SX_UART || \
20c305f6 1438 DEBUG_IMX6UL_UART || \
52d7aec2 1439 DEBUG_IMX7D_UART
49c9e60e 1440 default 1
287939a3 1441 depends on ARCH_MXC
49c9e60e
SG
1442 help
1443 Choose UART port on which kernel low-level debug messages
1444 should be output.
1445
cfdb7d56
SA
1446config DEBUG_VF_UART_PORT
1447 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1448 default 1
1449 range 0 3
1450 depends on SOC_VF610
1451 help
1452 Choose UART port on which kernel low-level debug messages
1453 should be output.
1454
cce278d2
RK
1455config DEBUG_TEGRA_UART
1456 bool
1457 depends on ARCH_TEGRA
5026aecf 1458
cce278d2
RK
1459config DEBUG_STI_UART
1460 bool
1461 depends on ARCH_STI
5026aecf 1462
01ea63d9
GZ
1463config DEBUG_SIRFSOC_UART
1464 bool
1465 depends on ARCH_SIRF
1466
91a9fec0
RH
1467config DEBUG_LL_INCLUDE
1468 string
e6131fa3 1469 default "debug/sa1100.S" if DEBUG_SA1100
0c532546 1470 default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
f8f1279c 1471 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
42dfd1e1 1472 default "debug/at91.S" if DEBUG_AT91_UART
d5bd4e8d 1473 default "debug/asm9260.S" if DEBUG_ASM9260_UART
dd99eef5 1474 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
0045c0dd 1475 default "debug/dc21285.S" if DEBUG_DC21285_PORT
d8a00916 1476 default "debug/meson.S" if DEBUG_MESON_UARTAO
f8f1279c 1477 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
a2e40710 1478 default "debug/exynos.S" if DEBUG_EXYNOS_UART
494e492d 1479 default "debug/efm32.S" if DEBUG_LL_UART_EFM32
91a9fec0 1480 default "debug/icedcc.S" if DEBUG_ICEDCC
6dde5ac5
SG
1481 default "debug/imx.S" if DEBUG_IMX1_UART || \
1482 DEBUG_IMX25_UART || \
1483 DEBUG_IMX21_IMX27_UART || \
4ad625d4
SG
1484 DEBUG_IMX31_UART || \
1485 DEBUG_IMX35_UART || \
ad364a70 1486 DEBUG_IMX50_UART || \
6dde5ac5 1487 DEBUG_IMX51_UART || \
7356420c 1488 DEBUG_IMX53_UART ||\
34e8a16b 1489 DEBUG_IMX6Q_UART || \
74368e81 1490 DEBUG_IMX6SL_UART || \
52d7aec2 1491 DEBUG_IMX6SX_UART || \
20c305f6 1492 DEBUG_IMX6UL_UART || \
52d7aec2 1493 DEBUG_IMX7D_UART
abbfb21e 1494 default "debug/ks8695.S" if DEBUG_KS8695_UART
c0c89faf 1495 default "debug/msm.S" if DEBUG_QCOM_UARTDM
4d31e664 1496 default "debug/netx.S" if DEBUG_NETX_UART
808b7e07 1497 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
7a2071c5
GU
1498 default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
1499 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
1500 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
1501 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
2f095c26 1502 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF1
7a2071c5 1503 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
8e5f2d65 1504 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4
7a2071c5
GU
1505 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
1506 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
1507 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
bb08dea1 1508 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
7bab7d9e 1509 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
01ea63d9 1510 default "debug/sirf.S" if DEBUG_SIRFSOC_UART
5026aecf 1511 default "debug/sti.S" if DEBUG_STI_UART
150a8dcf
LT
1512 default "debug/tegra.S" if DEBUG_TEGRA_UART
1513 default "debug/ux500.S" if DEBUG_UX500_UART
4e218b99 1514 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
c7c3eac6 1515 default "debug/vf.S" if DEBUG_VF_UART
b61a2722 1516 default "debug/vt8500.S" if DEBUG_VT8500_UART0
385f02b1 1517 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
6c548099 1518 default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
e23814da 1519 default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
d0cf9d8a 1520 default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
91a9fec0
RH
1521 default "mach/debug-macro.S"
1522
f8f1279c 1523# Compatibility options for PL01x
5c972af4 1524config DEBUG_UART_PL01X
a61cbf51 1525 bool
5c972af4 1526
f8f1279c 1527# Compatibility options for 8250
7610b607 1528config DEBUG_UART_8250
0045c0dd 1529 def_bool ARCH_EBSA110 || \
d7175a3b 1530 ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \
59bd4c38 1531 ARCH_RPC
4a003647 1532
c3faa9b7
RK
1533config DEBUG_UART_PHYS
1534 hex "Physical base address of debug UART"
4d31e664 1535 default 0x00100a00 if DEBUG_NETX_UART
97bd1a48 1536 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
c3faa9b7
RK
1537 default 0x01c28000 if DEBUG_SUNXI_UART0
1538 default 0x01c28400 if DEBUG_SUNXI_UART1
97bd1a48
RK
1539 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1540 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
c4718543 1541 default 0x01f02800 if DEBUG_SUNXI_R_UART
f2acf003
RK
1542 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1543 default 0x02531000 if DEBUG_KEYSTONE_UART1
c3faa9b7 1544 default 0x03010fe0 if ARCH_RPC
d4da889a 1545 default 0x07000000 if DEBUG_SUN9I_UART0
58d03985 1546 default 0x09405000 if DEBUG_ZTE_ZX
b125170a 1547 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
5c972af4
RK
1548 DEBUG_VEXPRESS_UART0_CA9
1549 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
c3faa9b7
RK
1550 default 0x10124000 if DEBUG_RK3X_UART0
1551 default 0x10126000 if DEBUG_RK3X_UART1
4db22c10 1552 default 0x101f1000 if DEBUG_VERSATILE
5c972af4 1553 default 0x101fb000 if DEBUG_NOMADIK_UART
a3b882f9
AY
1554 default 0x10210000 if DEBUG_RV1108_UART2
1555 default 0x10220000 if DEBUG_RV1108_UART1
1556 default 0x10230000 if DEBUG_RV1108_UART0
65ec48c0 1557 default 0x11002000 if DEBUG_MT8127_UART0
d6682085 1558 default 0x11006000 if DEBUG_MT6589_UART0
65ec48c0 1559 default 0x11009000 if DEBUG_MT8135_UART3
4db22c10 1560 default 0x16000000 if DEBUG_INTEGRATOR
06580275 1561 default 0x18000300 if DEBUG_BCM_5301X
fa1e581d 1562 default 0x18000400 if DEBUG_BCM_HR2
01ea63d9
GZ
1563 default 0x18010000 if DEBUG_SIRFATLAS7_UART0
1564 default 0x18020000 if DEBUG_SIRFATLAS7_UART1
5c972af4 1565 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
27dafaa8 1566 default 0x20001000 if DEBUG_HIP01_UART
c3faa9b7
RK
1567 default 0x20060000 if DEBUG_RK29_UART0
1568 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1569 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
5c972af4 1570 default 0x20201000 if DEBUG_BCM2835
5234c34e 1571 default 0x3f201000 if DEBUG_BCM2836
753d1243 1572 default 0x3e000000 if DEBUG_BCM_KONA_UART
494e492d 1573 default 0x4000e400 if DEBUG_LL_UART_EFM32
63e07c0f 1574 default 0x40028000 if DEBUG_AT91_SAMV7_USART1
0aed6a37 1575 default 0x40081000 if DEBUG_LPC18XX_UART0
59bd4c38 1576 default 0x40090000 if DEBUG_LPC32XX
c3faa9b7 1577 default 0x40100000 if DEBUG_PXA_UART1
d7175a3b 1578 default 0x42000000 if DEBUG_GEMINI
51ef7003 1579 default 0x44e09000 if DEBUG_AM33XXUART1
2d1f7d2e
TL
1580 default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1581 default 0x48022000 if DEBUG_TI81XXUART2
1582 default 0x48024000 if DEBUG_TI81XXUART3
d2b310b0
TL
1583 default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1584 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1585 default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1586 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
fc23beb8
TL
1587 default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1588 default 0x49020000 if DEBUG_OMAP3UART3
1589 default 0x49042000 if DEBUG_OMAP3UART4
1899de28
HS
1590 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1591 DEBUG_S3C2410_UART0)
1592 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1593 DEBUG_S3C2410_UART1)
1594 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1595 DEBUG_S3C2410_UART2)
c3ca2130 1596 default 0x78000000 if DEBUG_CNS3XXX
0045c0dd 1597 default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
bb08dea1
AB
1598 default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1599 default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1600 default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1601 default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
d5bd4e8d 1602 default 0x80010000 if DEBUG_ASM9260_UART
5c972af4
RK
1603 default 0x80070000 if DEBUG_IMX23_UART
1604 default 0x80074000 if DEBUG_IMX28_UART
c39e1ef7 1605 default 0x80230000 if DEBUG_PICOXCELL_UART
f06455fa 1606 default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
5c972af4 1607 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
01ea63d9 1608 default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
5c972af4
RK
1609 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1610 default 0xc0013000 if DEBUG_U300_UART
c3faa9b7
RK
1611 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1612 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
375d84cf 1613 default 0xd0000000 if DEBUG_SPEAR3XX
d91125dd 1614 default 0xd0012000 if DEBUG_MVEBU_UART0
d8a00916 1615 default 0xc81004c0 if DEBUG_MESON_UARTAO
c3faa9b7
RK
1616 default 0xd4017000 if DEBUG_MMP_UART2
1617 default 0xd4018000 if DEBUG_MMP_UART3
375d84cf 1618 default 0xe0000000 if DEBUG_SPEAR13XX
c9a1df48 1619 default 0xe4007000 if DEBUG_HIP04_UART
7a2071c5
GU
1620 default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
1621 default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
1622 default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
1623 default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
1624 default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
2f095c26 1625 default 0xe6e68000 if DEBUG_RCAR_GEN2_SCIF1
8e5f2d65 1626 default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4
7a2071c5 1627 default 0xe8008000 if DEBUG_R7S72100_SCIF2
c3faa9b7 1628 default 0xf0000be0 if ARCH_EBSA110
d91125dd 1629 default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
bd920490 1630 default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
caad0b41 1631 default 0xf7fc9000 if DEBUG_BERLIN_UART
8b2f2d03 1632 default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
12aae309 1633 default 0xf8b00000 if DEBUG_HIX5HD2_UART
7098cff2 1634 default 0xf991e000 if DEBUG_QCOM_UARTDM
8b2f2d03 1635 default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
8d258beb 1636 default 0xfcb00000 if DEBUG_HI3620_UART
3c215e64 1637 default 0xfd883000 if DEBUG_ALPINE_UART0
c3faa9b7 1638 default 0xfe800000 if ARCH_IOP32X
efd02ee9 1639 default 0xff690000 if DEBUG_RK32_UART2
de73c162
DN
1640 default 0xffc02000 if DEBUG_SOCFPGA_UART0
1641 default 0xffc02100 if DEBUG_SOCFPGA_UART1
c3faa9b7 1642 default 0xffd82340 if ARCH_IOP13XX
7a2071c5
GU
1643 default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
1644 default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
5c972af4 1645 default 0xfff36000 if DEBUG_HIGHBANK_UART
c26b9993
DT
1646 default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1647 default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1648 default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
6c548099 1649 default 0xfffe8600 if DEBUG_BCM63XX_UART
8b2f2d03
AB
1650 default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
1651 default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
c3faa9b7 1652 default 0xfffff700 if ARCH_IOP33X
d02fde7f
DT
1653 depends on ARCH_EP93XX || \
1654 DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
494e492d 1655 DEBUG_LL_UART_EFM32 || \
d8a00916 1656 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
c0c89faf 1657 DEBUG_NETX_UART || \
4d31e664 1658 DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
7a2071c5 1659 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
2f095c26
BD
1660 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF1 || \
1661 DEBUG_RCAR_GEN2_SCIF2 || DEBUG_RCAR_GEN2_SCIF4 || \
7a2071c5
GU
1662 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
1663 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
bb08dea1 1664 DEBUG_S3C64XX_UART || \
6c548099 1665 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
6f112a08
AB
1666 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1667 DEBUG_AT91_UART
c3faa9b7
RK
1668
1669config DEBUG_UART_VIRT
1670 hex "Virtual base address of debug UART"
a3b882f9
AY
1671 default 0xc881f000 if DEBUG_RV1108_UART2
1672 default 0xc8821000 if DEBUG_RV1108_UART1
1673 default 0xc8912000 if DEBUG_RV1108_UART0
4d31e664 1674 default 0xe0000a00 if DEBUG_NETX_UART
c3faa9b7
RK
1675 default 0xe0010fe0 if ARCH_RPC
1676 default 0xf0000be0 if ARCH_EBSA110
d5bd4e8d 1677 default 0xf0010000 if DEBUG_ASM9260_UART
5c972af4 1678 default 0xf01fb000 if DEBUG_NOMADIK_UART
5234c34e 1679 default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
06580275 1680 default 0xf1000300 if DEBUG_BCM_5301X
fa1e581d 1681 default 0xf1000400 if DEBUG_BCM_HR2
65ec48c0 1682 default 0xf1002000 if DEBUG_MT8127_UART0
d6682085 1683 default 0xf1006000 if DEBUG_MT6589_UART0
65ec48c0 1684 default 0xf1009000 if DEBUG_MT8135_UART3
4db22c10
AB
1685 default 0xf11f1000 if DEBUG_VERSATILE
1686 default 0xf1600000 if DEBUG_INTEGRATOR
c3faa9b7
RK
1687 default 0xf1c28000 if DEBUG_SUNXI_UART0
1688 default 0xf1c28400 if DEBUG_SUNXI_UART1
c4718543 1689 default 0xf1f02800 if DEBUG_SUNXI_R_UART
1dc93416 1690 default 0xf31004c0 if DEBUG_MESON_UARTAO
59bd4c38 1691 default 0xf4090000 if DEBUG_LPC32XX
d7175a3b 1692 default 0xf4200000 if DEBUG_GEMINI
cde7fc87 1693 default 0xf6200000 if DEBUG_PXA_UART1
d4da889a 1694 default 0xf7000000 if DEBUG_SUN9I_UART0
bb08dea1 1695 default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1899de28
HS
1696 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1697 DEBUG_S3C2410_UART0)
bb08dea1
AB
1698 default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1699 default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1700 default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1899de28
HS
1701 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1702 DEBUG_S3C2410_UART1)
1703 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1704 DEBUG_S3C2410_UART2)
8b2f2d03 1705 default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
caad0b41 1706 default 0xf7fc9000 if DEBUG_BERLIN_UART
c9a1df48 1707 default 0xf8007000 if DEBUG_HIP04_UART
5c972af4
RK
1708 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1709 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
8b2f2d03
AB
1710 default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
1711 default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
51ef7003 1712 default 0xf9e09000 if DEBUG_AM33XXUART1
2d1f7d2e
TL
1713 default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1714 default 0xfa022000 if DEBUG_TI81XXUART2
1715 default 0xfa024000 if DEBUG_TI81XXUART3
d2b310b0
TL
1716 default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1717 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1718 default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1719 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
fc23beb8 1720 default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
7098cff2 1721 default 0xfa71e000 if DEBUG_QCOM_UARTDM
b125170a 1722 default 0xfb002000 if DEBUG_CNS3XXX
5c972af4 1723 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
8b2f2d03 1724 default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
fc23beb8
TL
1725 default 0xfb020000 if DEBUG_OMAP3UART3
1726 default 0xfb042000 if DEBUG_OMAP3UART4
5c972af4 1727 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
58d03985 1728 default 0xfc705000 if DEBUG_ZTE_ZX
6c548099 1729 default 0xfcfe8600 if DEBUG_BCM63XX_UART
375d84cf 1730 default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
c047f529 1731 default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0
3c215e64 1732 default 0xfd883000 if DEBUG_ALPINE_UART0
c047f529
AB
1733 default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE
1734 default 0xfe012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_ORION5X
c3faa9b7
RK
1735 default 0xfe017000 if DEBUG_MMP_UART2
1736 default 0xfe018000 if DEBUG_MMP_UART3
5c972af4 1737 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
0b4cccbe 1738 default 0xfe230000 if DEBUG_PICOXCELL_UART
753d1243 1739 default 0xfe300000 if DEBUG_BCM_KONA_UART
c3faa9b7 1740 default 0xfe800000 if ARCH_IOP32X
12aae309 1741 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
c3faa9b7
RK
1742 default 0xfeb24000 if DEBUG_RK3X_UART0
1743 default 0xfeb26000 if DEBUG_RK3X_UART1
f2acf003
RK
1744 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1745 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
de73c162
DN
1746 default 0xfec02000 if DEBUG_SOCFPGA_UART0
1747 default 0xfec02100 if DEBUG_SOCFPGA_UART1
c047f529 1748 default 0xfec12000 if (DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE) && ARCH_MVEBU
bd920490 1749 default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
01ea63d9 1750 default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
97bd1a48 1751 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
01ea63d9
GZ
1752 default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
1753 default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
efd02ee9 1754 default 0xfec90000 if DEBUG_RK32_UART2
97bd1a48
RK
1755 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1756 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
c39e1ef7
AS
1757 default 0xfed60000 if DEBUG_RK29_UART0
1758 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1759 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
f06455fa 1760 default 0xfedc0000 if DEBUG_EP93XX
0045c0dd 1761 default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
5c972af4 1762 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
c3faa9b7
RK
1763 default 0xfee82340 if ARCH_IOP13XX
1764 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1765 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
c39e1ef7 1766 default 0xfef36000 if DEBUG_HIGHBANK_UART
c26b9993
DT
1767 default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1768 default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1769 default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
c3faa9b7 1770 default 0xfefff700 if ARCH_IOP33X
5c972af4 1771 default 0xff003000 if DEBUG_U300_UART
27dafaa8 1772 default 0xffd01000 if DEBUG_HIP01_UART
5c972af4 1773 default DEBUG_UART_PHYS if !MMU
f8f1279c 1774 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
d8a00916 1775 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
c0c89faf 1776 DEBUG_NETX_UART || \
4d31e664 1777 DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
bb08dea1 1778 DEBUG_S3C64XX_UART || \
6c548099 1779 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
0b37e9e8
AB
1780 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1781 DEBUG_AT91_UART
c3faa9b7 1782
4a003647
RK
1783config DEBUG_UART_8250_SHIFT
1784 int "Register offset shift for the 8250 debug UART"
f8f1279c 1785 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
0045c0dd 1786 default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
fa1e581d
FF
1787 DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
1788 DEBUG_OMAP7XXUART3
4a003647 1789 default 2
7610b607 1790
0b4cccbe
RK
1791config DEBUG_UART_8250_WORD
1792 bool "Use 32-bit accesses for 8250 UART"
f8f1279c 1793 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
0b4cccbe 1794 depends on DEBUG_UART_8250_SHIFT >= 2
cdd2e08b
AB
1795 default y if DEBUG_PICOXCELL_UART || \
1796 DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_UART1 || \
1797 DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
de73c162 1798 DEBUG_ALPINE_UART0 || \
97bd1a48 1799 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
9d6eccb9 1800 DEBUG_DAVINCI_DA8XX_UART2 || \
d0cf9d8a 1801 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
0b4cccbe 1802
0c532546
MR
1803config DEBUG_UART_8250_PALMCHIP
1804 bool "8250 UART is Palmchip BK-310x"
1805 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1806 help
1807 Palmchip provides a UART implementation compatible with 16550
1808 except for having a different register layout. Say Y here if
1809 the debug UART is of this type.
1810
7610b607
RK
1811config DEBUG_UART_8250_FLOW_CONTROL
1812 bool "Enable flow control for 8250 UART"
f8f1279c 1813 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
0045c0dd 1814 default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
7610b607 1815
3b4af9bc 1816config DEBUG_UNCOMPRESS
29337b60 1817 bool "Enable decompressor debugging via DEBUG_LL output"
9c77bc43 1818 depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
29337b60 1819 depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
d0cf9d8a
FF
1820 (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
1821 !DEBUG_BRCMSTB_UART
b6992fa9
RK
1822 help
1823 This option influences the normal decompressor output for
1824 multiplatform kernels. Normally, multiplatform kernels disable
1825 decompressor output because it is not possible to know where to
1826 send the decompressor output.
1827
1828 When this option is set, the selected DEBUG_LL output method
1829 will be re-used for normal decompressor output on multiplatform
1830 kernels.
1831
3b4af9bc 1832
615967b0
SG
1833config UNCOMPRESS_INCLUDE
1834 string
ffd80ecc 1835 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
36d6c928 1836 PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
615967b0
SG
1837 default "mach/uncompress.h"
1838
93fd03a8
CM
1839config EARLY_PRINTK
1840 bool "Early printk"
1841 depends on DEBUG_LL
1842 help
1843 Say Y here if you want to have an early console using the
1844 kernel low-level debugging functions. Add earlyprintk to your
1845 kernel parameters to enable this console.
1846
4189bc71
JM
1847config ARM_KPROBES_TEST
1848 tristate "Kprobes test module"
1849 depends on KPROBES && MODULES
1850 help
1851 Perform tests of kprobes API and instruction set simulation.
1852
575320d6
WD
1853config PID_IN_CONTEXTIDR
1854 bool "Write the current PID to the CONTEXTIDR register"
1855 depends on CPU_COPY_V6
1856 help
1857 Enabling this option causes the kernel to write the current PID to
1858 the PROCID field of the CONTEXTIDR register, at the expense of some
1859 additional instructions during context switch. Say Y here only if you
1860 are planning to use hardware trace tools with this kernel.
1861
01081f5a 1862source "drivers/hwtracing/coresight/Kconfig"