1 # SPDX-License-Identifier: GPL-2.0
6 config ARM_PTDUMP_DEBUGFS
7 bool "Export kernel pagetable layout to userspace via debugfs"
8 depends on DEBUG_KERNEL
10 select ARM_PTDUMP_CORE
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
21 bool "Warn on W+X mappings at boot"
23 select ARM_PTDUMP_CORE
25 Generate a warning if any W+X mappings are found at boot.
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.
30 Look for a message in dmesg output like this:
32 arm/mm: Checked W+X mappings: passed, no W+X pages found.
34 or like this, if the check failed:
36 arm/mm: Checked W+X mappings: FAILED, <N> W+X pages found.
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.
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.
49 prompt "Choose kernel unwinder"
50 default UNWINDER_ARM if AEABI
51 default UNWINDER_FRAME_POINTER if !AEABI
53 This determines which method will be used for unwinding kernel stack
54 traces for panics, oopses, bugs, warnings, perf, /proc/<pid>/stack,
55 livepatch, lockdep, and more.
57 config UNWINDER_FRAME_POINTER
58 bool "Frame pointer unwinder"
59 depends on !THUMB2_KERNEL
60 select ARCH_WANT_FRAME_POINTERS
63 This option enables the frame pointer unwinder for unwinding
67 bool "ARM EABI stack unwinder"
68 depends on AEABI && !FUNCTION_GRAPH_TRACER
69 # https://github.com/ClangBuiltLinux/linux/issues/732
70 depends on !LD_IS_LLD || LLD_VERSION >= 110000
73 This option enables stack unwinding support in the kernel
74 using the information automatically generated by the
75 compiler. The resulting kernel image is slightly bigger but
76 the performance is not affected. Currently, this feature
77 only works with EABI compilers.
88 bool "Verbose user fault messages"
90 When a user program crashes due to an exception, the kernel can
91 print a brief message explaining what the problem was. This is
92 sometimes helpful for debugging but serves no purpose on a
93 production system. Most people should say N here.
95 In addition, you need to pass user_debug=N on the kernel command
96 line to enable this feature. N consists of the sum of:
98 1 - undefined instruction events
100 4 - invalid data aborts
104 # These options are only for real kernel hackers who want to get their hands dirty.
106 bool "Kernel low-level debugging functions (read help!)"
107 depends on DEBUG_KERNEL
109 Say Y here to include definitions of printascii, printch, printhex
110 in the kernel. This is helpful if you are debugging code that
111 executes before the console is initialized.
113 Note that selecting this option will limit the kernel to a single
114 UART definition, as specified below. Attempting to boot the kernel
115 image on a different platform *will not work*, so this option should
116 not be enabled for kernels that are intended to be portable.
119 prompt "Kernel low-level debugging port"
122 config DEBUG_ALPINE_UART0
123 bool "Kernel low-level debugging messages via Alpine UART0"
124 depends on ARCH_ALPINE
125 select DEBUG_UART_8250
127 Say Y here if you want kernel low-level debugging support
128 on Alpine based platforms.
130 config DEBUG_ASM9260_UART
131 bool "Kernel low-level debugging via asm9260 UART"
132 depends on MACH_ASM9260
134 Say Y here if you want the debug print routines to direct
135 their output to an UART or USART port on asm9260 based
138 DEBUG_UART_PHYS | DEBUG_UART_VIRT
140 0x80000000 | 0xf0000000 | UART0
141 0x80004000 | 0xf0004000 | UART1
142 0x80008000 | 0xf0008000 | UART2
143 0x8000c000 | 0xf000c000 | UART3
144 0x80010000 | 0xf0010000 | UART4
145 0x80014000 | 0xf0014000 | UART5
146 0x80018000 | 0xf0018000 | UART6
147 0x8001c000 | 0xf001c000 | UART7
148 0x80020000 | 0xf0020000 | UART8
149 0x80024000 | 0xf0024000 | UART9
151 config DEBUG_AT91_RM9200_DBGU
152 bool "Kernel low-level debugging on AT91RM9200, AT91SAM9, SAM9X60 DBGU"
153 select DEBUG_AT91_UART
154 depends on SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60
156 Say Y here if you want kernel low-level debugging support
158 at91rm9200, at91sam9260, at91sam9g20, at91sam9261,
159 at91sam9g10, at91sam9n12, at91sam9rl64, at91sam9x5, sam9x60
161 config DEBUG_AT91_SAM9263_DBGU
162 bool "Kernel low-level debugging on AT91SAM{9263,9G45,A5D3} DBGU"
163 select DEBUG_AT91_UART
164 depends on SOC_AT91SAM9 || SOC_SAMA5D3
166 Say Y here if you want kernel low-level debugging support
168 at91sam9263, at91sam9g45, at91sam9m10,
171 config DEBUG_AT91_SAMA5D2_UART1
172 bool "Kernel low-level debugging on SAMA5D2 UART1"
173 select DEBUG_AT91_UART
174 depends on SOC_SAMA5D2
176 Say Y here if you want kernel low-level debugging support
177 on the UART1 port of sama5d2.
179 config DEBUG_AT91_SAMA5D4_USART3
180 bool "Kernel low-level debugging on SAMA5D4 USART3"
181 select DEBUG_AT91_UART
182 depends on SOC_SAMA5D4
184 Say Y here if you want kernel low-level debugging support
185 on the USART3 port of sama5d4.
187 config DEBUG_AT91_SAMV7_USART1
188 bool "Kernel low-level debugging via SAMV7 USART1"
189 select DEBUG_AT91_UART
192 Say Y here if you want the debug print routines to direct
193 their output to the USART1 port on SAMV7 based
197 bool "Kernel low-level debugging on BCM2835 PL011 UART"
198 depends on ARCH_BCM2835 && ARCH_MULTI_V6
199 select DEBUG_UART_PL01X
202 bool "Kernel low-level debugging on BCM2836 PL011 UART"
203 depends on ARCH_BCM2835 && ARCH_MULTI_V7
204 select DEBUG_UART_PL01X
206 config DEBUG_BCM_5301X
207 bool "Kernel low-level debugging on BCM5301X/NSP UART1"
208 depends on ARCH_BCM_5301X || ARCH_BCM_NSP
209 select DEBUG_UART_8250
212 bool "Kernel low-level debugging on Hurricane 2 UART2"
213 depends on ARCH_BCM_HR2
214 select DEBUG_UART_8250
216 config DEBUG_BCM_IPROC_UART3
217 bool "Kernel low-level debugging on BCM IPROC UART3"
218 depends on ARCH_BCM_CYGNUS
219 select DEBUG_UART_8250
221 Say Y here if you want the debug print routines to direct
222 their output to the third serial port on these devices.
224 config DEBUG_BCM_KONA_UART
225 bool "Kernel low-level debugging messages via BCM KONA UART"
226 depends on ARCH_BCM_MOBILE
227 select DEBUG_UART_8250
229 Say Y here if you want kernel low-level debugging support
230 on Broadcom SoC platforms.
231 This low level debug works for Broadcom
232 mobile SoCs in the Kona family of chips (e.g. bcm28155,
235 config DEBUG_BCM63XX_UART
236 bool "Kernel low-level debugging on BCM63XX UART"
237 depends on ARCH_BCM_63XX
239 config DEBUG_BERLIN_UART
240 bool "Marvell Berlin SoC Debug UART"
241 depends on ARCH_BERLIN
242 select DEBUG_UART_8250
244 Say Y here if you want kernel low-level debugging support
245 on Marvell Berlin SoC based platforms.
247 config DEBUG_BRCMSTB_UART
248 bool "Use BRCMSTB UART for low-level debug"
249 depends on ARCH_BRCMSTB
251 Say Y here if you want the debug print routines to direct
252 their output to the first serial port on these devices. The
253 UART physical and virtual address is automatically provided
254 based on the chip identification register value.
256 If you have a Broadcom STB chip and would like early print
257 messages to appear over the UART, select this option.
259 config DEBUG_CLPS711X_UART1
260 bool "Kernel low-level debugging messages via UART1"
261 depends on ARCH_CLPS711X
263 Say Y here if you want the debug print routines to direct
264 their output to the first serial port on these devices.
266 config DEBUG_CLPS711X_UART2
267 bool "Kernel low-level debugging messages via UART2"
268 depends on ARCH_CLPS711X
270 Say Y here if you want the debug print routines to direct
271 their output to the second serial port on these devices.
274 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
275 depends on ARCH_CNS3XXX
276 select DEBUG_UART_8250
278 Say Y here if you want the debug print routines to direct
279 their output to the CNS3xxx UART0.
281 config DEBUG_DAVINCI_DA8XX_UART1
282 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
283 depends on ARCH_DAVINCI_DA8XX
284 select DEBUG_UART_8250
286 Say Y here if you want the debug print routines to direct
287 their output to UART1 serial port on DaVinci DA8XX devices.
289 config DEBUG_DAVINCI_DA8XX_UART2
290 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
291 depends on ARCH_DAVINCI_DA8XX
292 select DEBUG_UART_8250
294 Say Y here if you want the debug print routines to direct
295 their output to UART2 serial port on DaVinci DA8XX devices.
297 config DEBUG_DAVINCI_DMx_UART0
298 bool "Kernel low-level debugging on DaVinci DMx using UART0"
299 depends on ARCH_DAVINCI_DMx
300 select DEBUG_UART_8250
302 Say Y here if you want the debug print routines to direct
303 their output to UART0 serial port on DaVinci DMx devices.
305 config DEBUG_DC21285_PORT
306 bool "Kernel low-level debugging messages via footbridge serial port"
307 depends on FOOTBRIDGE
309 Say Y here if you want the debug print routines to direct
310 their output to the serial port in the DC21285 (Footbridge).
312 config DEBUG_DIGICOLOR_UA0
313 bool "Kernel low-level debugging messages via Digicolor UA0"
314 depends on ARCH_DIGICOLOR
316 Say Y here if you want the debug print routines to direct
317 their output to the UA0 serial port in the CX92755.
320 bool "Kernel low-level debugging messages via ep93xx UART"
321 depends on ARCH_EP93XX
322 select DEBUG_UART_PL01X
324 Say Y here if you want kernel low-level debugging support
325 on Cirrus Logic EP93xx based platforms.
327 config DEBUG_FOOTBRIDGE_COM1
328 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
329 depends on FOOTBRIDGE
330 select DEBUG_UART_8250
332 Say Y here if you want the debug print routines to direct
333 their output to the 8250 at PCI COM1.
336 bool "Kernel low-level debugging messages via Cortina Systems Gemini UART"
337 depends on ARCH_GEMINI
338 select DEBUG_UART_8250
340 Say Y here if you want kernel low-level debugging support
341 on Cortina Gemini based platforms.
343 config DEBUG_HI3620_UART
344 bool "Hisilicon HI3620 Debug UART"
345 depends on ARCH_HI3xxx
346 select DEBUG_UART_PL01X
348 Say Y here if you want kernel low-level debugging support
351 config DEBUG_HIGHBANK_UART
352 bool "Kernel low-level debugging messages via Highbank UART"
353 depends on ARCH_HIGHBANK
354 select DEBUG_UART_PL01X
356 Say Y here if you want the debug print routines to direct
357 their output to the UART on Highbank based devices.
359 config DEBUG_HIP01_UART
360 bool "Hisilicon Hip01 Debug UART"
361 depends on ARCH_HIP01
362 select DEBUG_UART_8250
364 Say Y here if you want kernel low-level debugging support
367 config DEBUG_HIP04_UART
368 bool "Hisilicon HiP04 Debug UART"
369 depends on ARCH_HIP04
370 select DEBUG_UART_8250
372 Say Y here if you want kernel low-level debugging support
375 config DEBUG_HIX5HD2_UART
376 bool "Hisilicon Hix5hd2 Debug UART"
377 depends on ARCH_HIX5HD2
378 select DEBUG_UART_PL01X
380 Say Y here if you want kernel low-level debugging support
383 config DEBUG_IMX1_UART
384 bool "i.MX1 Debug UART"
387 Say Y here if you want kernel low-level debugging support
390 config DEBUG_IMX23_UART
391 bool "i.MX23 Debug UART"
393 select DEBUG_UART_PL01X
395 Say Y here if you want kernel low-level debugging support
398 config DEBUG_IMX25_UART
399 bool "i.MX25 Debug UART"
402 Say Y here if you want kernel low-level debugging support
405 config DEBUG_IMX21_IMX27_UART
406 bool "i.MX21 and i.MX27 Debug UART"
407 depends on SOC_IMX21 || SOC_IMX27
409 Say Y here if you want kernel low-level debugging support
412 config DEBUG_IMX28_UART
413 bool "i.MX28 Debug UART"
415 select DEBUG_UART_PL01X
417 Say Y here if you want kernel low-level debugging support
420 config DEBUG_IMX31_UART
421 bool "i.MX31 Debug UART"
424 Say Y here if you want kernel low-level debugging support
427 config DEBUG_IMX35_UART
428 bool "i.MX35 Debug UART"
431 Say Y here if you want kernel low-level debugging support
434 config DEBUG_IMX50_UART
435 bool "i.MX50 Debug UART"
438 Say Y here if you want kernel low-level debugging support
441 config DEBUG_IMX51_UART
442 bool "i.MX51 Debug UART"
445 Say Y here if you want kernel low-level debugging support
448 config DEBUG_IMX53_UART
449 bool "i.MX53 Debug UART"
452 Say Y here if you want kernel low-level debugging support
455 config DEBUG_IMX6Q_UART
456 bool "i.MX6Q/DL Debug UART"
459 Say Y here if you want kernel low-level debugging support
462 config DEBUG_IMX6SL_UART
463 bool "i.MX6SL Debug UART"
464 depends on SOC_IMX6SL
466 Say Y here if you want kernel low-level debugging support
469 config DEBUG_IMX6SX_UART
470 bool "i.MX6SX Debug UART"
471 depends on SOC_IMX6SX
473 Say Y here if you want kernel low-level debugging support
476 config DEBUG_IMX6UL_UART
477 bool "i.MX6UL Debug UART"
478 depends on SOC_IMX6UL
480 Say Y here if you want kernel low-level debugging support
483 config DEBUG_IMX7D_UART
484 bool "i.MX7D Debug UART"
487 Say Y here if you want kernel low-level debugging support
490 config DEBUG_INTEGRATOR
491 bool "Kernel low-level debugging messages via ARM Integrator UART"
492 depends on ARCH_INTEGRATOR
493 select DEBUG_UART_PL01X
495 Say Y here if you want kernel low-level debugging support
496 on ARM Integrator platforms.
498 config DEBUG_KEYSTONE_UART0
499 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
500 depends on ARCH_KEYSTONE
501 select DEBUG_UART_8250
503 Say Y here if you want the debug print routines to direct
504 their output to UART0 serial port on KEYSTONE2 devices.
506 config DEBUG_KEYSTONE_UART1
507 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
508 depends on ARCH_KEYSTONE
509 select DEBUG_UART_8250
511 Say Y here if you want the debug print routines to direct
512 their output to UART1 serial port on KEYSTONE2 devices.
514 config DEBUG_LPC18XX_UART0
515 bool "Kernel low-level debugging via LPC18xx/43xx UART0"
516 depends on ARCH_LPC18XX
517 select DEBUG_UART_8250
519 Say Y here if you want kernel low-level debugging support
520 on NXP LPC18xx/43xx UART0.
523 bool "Kernel low-level debugging messages via NXP LPC32xx UART"
524 depends on ARCH_LPC32XX
525 select DEBUG_UART_8250
527 Say Y here if you want kernel low-level debugging support
528 on NXP LPC32xx based platforms.
530 config DEBUG_MESON_UARTAO
531 bool "Kernel low-level debugging via Meson6 UARTAO"
532 depends on ARCH_MESON
534 Say Y here if you want kernel low-lever debugging support
535 on Amlogic Meson6 based platforms on the UARTAO.
537 config DEBUG_MMP_UART2
538 bool "Kernel low-level debugging message via MMP UART2"
540 select DEBUG_UART_8250
542 Say Y here if you want kernel low-level debugging support
545 config DEBUG_MMP_UART3
546 bool "Kernel low-level debugging message via MMP UART3"
548 select DEBUG_UART_8250
550 Say Y here if you want kernel low-level debugging support
553 config DEBUG_MVEBU_UART0
554 bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
555 depends on ARCH_MVEBU
556 depends on ARCH_MVEBU && CPU_V7
557 select DEBUG_UART_8250
559 Say Y here if you want kernel low-level debugging support
560 on MVEBU based platforms on UART0.
562 This option should be used with the old bootloaders
563 that left the internal registers mapped at
564 0xd0000000. As of today, this is the case on
565 platforms such as the Globalscale Mirabox or the
566 Plathome OpenBlocks AX3, when using the original
569 This option will not work on older Marvell platforms
570 (Kirkwood, Dove, MV78xx0, Orion5x), which should pick
571 the "new bootloader" variant.
573 If the wrong DEBUG_MVEBU_UART* option is selected,
574 when u-boot hands over to the kernel, the system
575 silently crashes, with no serial output at all.
577 config DEBUG_MVEBU_UART0_ALTERNATE
578 bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
579 depends on ARCH_MVEBU || ARCH_DOVE || ARCH_MV78XX0 || ARCH_ORION5X
580 select DEBUG_UART_8250
582 Say Y here if you want kernel low-level debugging support
583 on MVEBU based platforms on UART0. (Armada XP, Armada 3xx,
584 Kirkwood, Dove, MV78xx0, Orion5x).
587 This option should be used with the new bootloaders
588 that remap the internal registers at 0xf1000000.
590 If the wrong DEBUG_MVEBU_UART* option is selected,
591 when u-boot hands over to the kernel, the system
592 silently crashes, with no serial output at all.
594 config DEBUG_MVEBU_UART1_ALTERNATE
595 bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
596 depends on ARCH_MVEBU
597 select DEBUG_UART_8250
599 Say Y here if you want kernel low-level debugging support
600 on MVEBU based platforms on UART1. (Armada XP, Armada 3xx,
601 Kirkwood, Dove, MV78xx0, Orion5x).
603 This option should be used with the new bootloaders
604 that remap the internal registers at 0xf1000000.
605 All of the older (pre Armada XP/370) platforms also use
606 this address, regardless of the boot loader version.
608 If the wrong DEBUG_MVEBU_UART* option is selected,
609 when u-boot hands over to the kernel, the system
610 silently crashes, with no serial output at all.
612 config DEBUG_MSTARV7_PMUART
613 bool "Kernel low-level debugging messages via MSTARV7 PM UART"
614 depends on ARCH_MSTARV7
615 select DEBUG_UART_8250
617 Say Y here if you want kernel low-level debugging support
618 for MSTAR ARMv7-based platforms on PM UART.
620 config DEBUG_MT6589_UART0
621 bool "Mediatek mt6589 UART0"
622 depends on ARCH_MEDIATEK
623 select DEBUG_UART_8250
625 Say Y here if you want kernel low-level debugging support
626 for Mediatek mt6589 based platforms on UART0.
628 config DEBUG_MT8127_UART0
629 bool "Mediatek mt8127/mt6592 UART0"
630 depends on ARCH_MEDIATEK
631 select DEBUG_UART_8250
633 Say Y here if you want kernel low-level debugging support
634 for Mediatek mt8127 based platforms on UART0.
636 config DEBUG_MT8135_UART3
637 bool "Mediatek mt8135 UART3"
638 depends on ARCH_MEDIATEK
639 select DEBUG_UART_8250
641 Say Y here if you want kernel low-level debugging support
642 for Mediatek mt8135 based platforms on UART3.
644 config DEBUG_NOMADIK_UART
645 bool "Kernel low-level debugging messages via NOMADIK UART"
646 depends on ARCH_NOMADIK
647 select DEBUG_UART_PL01X
649 Say Y here if you want kernel low-level debugging support
650 on NOMADIK based platforms.
652 config DEBUG_NSPIRE_CLASSIC_UART
653 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
654 depends on ARCH_NSPIRE
655 select DEBUG_UART_8250
657 Say Y here if you want kernel low-level debugging support
658 on TI-NSPIRE classic models.
660 config DEBUG_NSPIRE_CX_UART
661 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
662 depends on ARCH_NSPIRE
663 select DEBUG_UART_PL01X
665 Say Y here if you want kernel low-level debugging support
666 on TI-NSPIRE CX models.
668 config DEBUG_OMAP1UART1
669 bool "Kernel low-level debugging via OMAP1 UART1"
670 depends on ARCH_OMAP1
671 select DEBUG_UART_8250
673 Say Y here if you want kernel low-level debugging support
674 on OMAP1 based platforms (except OMAP730) on the UART1.
676 config DEBUG_OMAP1UART2
677 bool "Kernel low-level debugging via OMAP1 UART2"
678 depends on ARCH_OMAP1
679 select DEBUG_UART_8250
681 Say Y here if you want kernel low-level debugging support
682 on OMAP1 based platforms (except OMAP730) on the UART2.
684 config DEBUG_OMAP1UART3
685 bool "Kernel low-level debugging via OMAP1 UART3"
686 depends on ARCH_OMAP1
687 select DEBUG_UART_8250
689 Say Y here if you want kernel low-level debugging support
690 on OMAP1 based platforms (except OMAP730) on the UART3.
692 config DEBUG_OMAP2UART1
693 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
694 depends on ARCH_OMAP2PLUS
695 select DEBUG_UART_8250
697 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
698 omap3 torpedo and 3530 lv som.
700 config DEBUG_OMAP2UART2
701 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
702 depends on ARCH_OMAP2PLUS
703 select DEBUG_UART_8250
705 config DEBUG_OMAP2UART3
706 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
707 depends on ARCH_OMAP2PLUS
708 select DEBUG_UART_8250
710 config DEBUG_OMAP3UART3
711 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
712 depends on ARCH_OMAP2PLUS
713 select DEBUG_UART_8250
715 This covers at least cm_t3x, beagle, crane, devkit8000,
716 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
719 config DEBUG_OMAP4UART3
720 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
721 depends on ARCH_OMAP2PLUS
722 select DEBUG_UART_8250
724 config DEBUG_OMAP3UART4
725 bool "Kernel low-level debugging messages via OMAP36XX UART4"
726 depends on ARCH_OMAP2PLUS
727 select DEBUG_UART_8250
729 config DEBUG_OMAP4UART4
730 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
731 depends on ARCH_OMAP2PLUS
732 select DEBUG_UART_8250
734 config DEBUG_OMAP7XXUART1
735 bool "Kernel low-level debugging via OMAP730 UART1"
736 depends on ARCH_OMAP730
737 select DEBUG_UART_8250
739 Say Y here if you want kernel low-level debugging support
740 on OMAP730 based platforms on the UART1.
742 config DEBUG_OMAP7XXUART2
743 bool "Kernel low-level debugging via OMAP730 UART2"
744 depends on ARCH_OMAP730
745 select DEBUG_UART_8250
747 Say Y here if you want kernel low-level debugging support
748 on OMAP730 based platforms on the UART2.
750 config DEBUG_OMAP7XXUART3
751 bool "Kernel low-level debugging via OMAP730 UART3"
752 depends on ARCH_OMAP730
753 select DEBUG_UART_8250
755 Say Y here if you want kernel low-level debugging support
756 on OMAP730 based platforms on the UART3.
758 config DEBUG_TI81XXUART1
759 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
760 depends on ARCH_OMAP2PLUS
761 select DEBUG_UART_8250
763 config DEBUG_TI81XXUART2
764 bool "Kernel low-level debugging messages via TI81XX UART2"
765 depends on ARCH_OMAP2PLUS
766 select DEBUG_UART_8250
768 config DEBUG_TI81XXUART3
769 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
770 depends on ARCH_OMAP2PLUS
771 select DEBUG_UART_8250
773 config DEBUG_AM33XXUART1
774 bool "Kernel low-level debugging messages via AM33XX UART1"
775 depends on ARCH_OMAP2PLUS
776 select DEBUG_UART_8250
778 config DEBUG_ZOOM_UART
779 bool "Kernel low-level debugging messages via Zoom2/3 UART"
780 depends on ARCH_OMAP2PLUS
781 select DEBUG_OMAP2PLUS_UART
783 config DEBUG_PXA_UART1
785 bool "Use PXA UART1 for low-level debug"
786 select DEBUG_UART_8250
788 Say Y here if you want kernel low-level debugging support
791 config DEBUG_QCOM_UARTDM
792 bool "Kernel low-level debugging messages via QCOM UARTDM"
795 Say Y here if you want the debug print routines to direct
796 their output to the serial port on Qualcomm devices.
798 ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
799 APQ8064 0x16640000 0xf0040000
800 APQ8084 0xf995e000 0xfa75e000
801 IPQ4019 0x078af000 0xf78af000
802 MSM8X60 0x19c40000 0xf0040000
803 MSM8960 0x16440000 0xf0040000
804 MSM8974 0xf991e000 0xfa71e000
806 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
807 options based on your needs.
809 config DEBUG_REALVIEW_STD_PORT
810 bool "RealView Default UART"
811 depends on ARCH_REALVIEW
812 select DEBUG_UART_PL01X
814 Say Y here if you want the debug print routines to direct
815 their output to the serial port on RealView EB, PB11MP, PBA8
818 config DEBUG_REALVIEW_PB1176_PORT
819 bool "RealView PB1176 UART"
820 depends on MACH_REALVIEW_PB1176
821 select DEBUG_UART_PL01X
823 Say Y here if you want the debug print routines to direct
824 their output to the standard serial port on the RealView
827 config DEBUG_RV1108_UART0
828 bool "Kernel low-level debugging messages via Rockchip RV1108 UART0"
829 depends on ARCH_ROCKCHIP
830 select DEBUG_UART_8250
832 Say Y here if you want kernel low-level debugging support
833 on Rockchip RV1108 based platforms.
835 config DEBUG_RV1108_UART1
836 bool "Kernel low-level debugging messages via Rockchip RV1108 UART1"
837 depends on ARCH_ROCKCHIP
838 select DEBUG_UART_8250
840 Say Y here if you want kernel low-level debugging support
841 on Rockchip RV1108 based platforms.
843 config DEBUG_RV1108_UART2
844 bool "Kernel low-level debugging messages via Rockchip RV1108 UART2"
845 depends on ARCH_ROCKCHIP
846 select DEBUG_UART_8250
848 Say Y here if you want kernel low-level debugging support
849 on Rockchip RV1108 based platforms.
851 config DEBUG_RK29_UART0
852 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
853 depends on ARCH_ROCKCHIP
854 select DEBUG_UART_8250
856 Say Y here if you want kernel low-level debugging support
857 on Rockchip based platforms.
859 config DEBUG_RK29_UART1
860 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
861 depends on ARCH_ROCKCHIP
862 select DEBUG_UART_8250
864 Say Y here if you want kernel low-level debugging support
865 on Rockchip based platforms.
867 config DEBUG_RK29_UART2
868 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
869 depends on ARCH_ROCKCHIP
870 select DEBUG_UART_8250
872 Say Y here if you want kernel low-level debugging support
873 on Rockchip based platforms.
875 config DEBUG_RK3X_UART0
876 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
877 depends on ARCH_ROCKCHIP
878 select DEBUG_UART_8250
880 Say Y here if you want kernel low-level debugging support
881 on Rockchip based platforms.
883 config DEBUG_RK3X_UART1
884 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
885 depends on ARCH_ROCKCHIP
886 select DEBUG_UART_8250
888 Say Y here if you want kernel low-level debugging support
889 on Rockchip based platforms.
891 config DEBUG_RK3X_UART2
892 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
893 depends on ARCH_ROCKCHIP
894 select DEBUG_UART_8250
896 Say Y here if you want kernel low-level debugging support
897 on Rockchip based platforms.
899 config DEBUG_RK3X_UART3
900 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
901 depends on ARCH_ROCKCHIP
902 select DEBUG_UART_8250
904 Say Y here if you want kernel low-level debugging support
905 on Rockchip based platforms.
907 config DEBUG_RK32_UART2
908 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
909 depends on ARCH_ROCKCHIP
910 select DEBUG_UART_8250
912 Say Y here if you want kernel low-level debugging support
913 on Rockchip RK32xx based platforms.
915 config DEBUG_R7S72100_SCIF2
916 bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
917 depends on ARCH_R7S72100
919 Say Y here if you want kernel low-level debugging support
920 via SCIF2 on Renesas RZ/A1H (R7S72100).
922 config DEBUG_R7S9210_SCIF2
923 bool "Kernel low-level debugging messages via SCIF2 on R7S9210"
924 depends on ARCH_R7S9210
926 Say Y here if you want kernel low-level debugging support
927 via SCIF2 on Renesas RZ/A2M (R7S9210).
929 config DEBUG_R7S9210_SCIF4
930 bool "Kernel low-level debugging messages via SCIF4 on R7S9210"
931 depends on ARCH_R7S9210
933 Say Y here if you want kernel low-level debugging support
934 via SCIF4 on Renesas RZ/A2M (R7S9210).
936 config DEBUG_RCAR_GEN1_SCIF0
937 bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
938 depends on ARCH_R8A7778
940 Say Y here if you want kernel low-level debugging support
941 via SCIF0 on Renesas R-Car M1A (R8A7778).
943 config DEBUG_RCAR_GEN1_SCIF2
944 bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
945 depends on ARCH_R8A7779
947 Say Y here if you want kernel low-level debugging support
948 via SCIF2 on Renesas R-Car H1 (R8A7779).
950 config DEBUG_RCAR_GEN2_SCIF0
951 bool "Kernel low-level debugging messages via SCIF0 on R-Car Gen2 and RZ/G1"
952 depends on ARCH_R8A7743 || ARCH_R8A7744 || ARCH_R8A7790 || \
953 ARCH_R8A7791 || ARCH_R8A7792 || ARCH_R8A7793
955 Say Y here if you want kernel low-level debugging support
956 via SCIF0 on Renesas RZ/G1M (R8A7743), RZ/G1N (R8A7744),
957 R-Car H2 (R8A7790), M2-W (R8A7791), V2H (R8A7792), or
960 config DEBUG_RCAR_GEN2_SCIF1
961 bool "Kernel low-level debugging messages via SCIF1 on R8A77470"
962 depends on ARCH_R8A77470
964 Say Y here if you want kernel low-level debugging support
965 via SCIF1 on Renesas RZ/G1C (R8A77470).
967 config DEBUG_RCAR_GEN2_SCIF2
968 bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
969 depends on ARCH_R8A7794
971 Say Y here if you want kernel low-level debugging support
972 via SCIF2 on Renesas R-Car E2 (R8A7794).
974 config DEBUG_RCAR_GEN2_SCIF4
975 bool "Kernel low-level debugging messages via SCIF4 on R8A7745"
976 depends on ARCH_R8A7745
978 Say Y here if you want kernel low-level debugging support
979 via SCIF4 on Renesas RZ/G1E (R8A7745).
981 config DEBUG_RCAR_GEN2_SCIFA2
982 bool "Kernel low-level debugging messages via SCIFA2 on R8A7742"
983 depends on ARCH_R8A7742
985 Say Y here if you want kernel low-level debugging support
986 via SCIFA2 on Renesas RZ/G1H (R8A7742).
988 config DEBUG_RMOBILE_SCIFA0
989 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
990 depends on ARCH_R8A73A4
992 Say Y here if you want kernel low-level debugging support
993 via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
995 config DEBUG_RMOBILE_SCIFA1
996 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
997 depends on ARCH_R8A7740
999 Say Y here if you want kernel low-level debugging support
1000 via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
1002 config DEBUG_RMOBILE_SCIFA4
1003 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
1004 depends on ARCH_SH73A0
1006 Say Y here if you want kernel low-level debugging support
1007 via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
1009 config DEBUG_S3C_UART0
1010 depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS
1011 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1012 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1013 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1014 select DEBUG_S5PV210_UART if ARCH_S5PV210
1015 bool "Use Samsung S3C UART 0 for low-level debug"
1017 Say Y here if you want the debug print routines to direct
1018 their output to UART 0. The port must have been initialised
1019 by the boot-loader before use.
1021 config DEBUG_S3C_UART1
1022 depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS
1023 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1024 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1025 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1026 select DEBUG_S5PV210_UART if ARCH_S5PV210
1027 bool "Use Samsung S3C UART 1 for low-level debug"
1029 Say Y here if you want the debug print routines to direct
1030 their output to UART 1. The port must have been initialised
1031 by the boot-loader before use.
1033 config DEBUG_S3C_UART2
1034 depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS
1035 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1036 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1037 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1038 select DEBUG_S5PV210_UART if ARCH_S5PV210
1039 bool "Use Samsung S3C UART 2 for low-level debug"
1041 Say Y here if you want the debug print routines to direct
1042 their output to UART 2. The port must have been initialised
1043 by the boot-loader before use.
1045 config DEBUG_S3C_UART3
1046 depends on ARCH_EXYNOS || ARCH_S5PV210
1047 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1048 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1049 select DEBUG_S5PV210_UART if ARCH_S5PV210
1050 bool "Use Samsung S3C UART 3 for low-level debug"
1052 Say Y here if you want the debug print routines to direct
1053 their output to UART 3. The port must have been initialised
1054 by the boot-loader before use.
1056 config DEBUG_S3C2410_UART0
1057 depends on ARCH_S3C24XX
1058 select DEBUG_S3C2410_UART
1059 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
1061 Say Y here if you want the debug print routines to direct
1062 their output to UART 0. The port must have been initialised
1063 by the boot-loader before use.
1065 config DEBUG_S3C2410_UART1
1066 depends on ARCH_S3C24XX
1067 select DEBUG_S3C2410_UART
1068 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
1070 Say Y here if you want the debug print routines to direct
1071 their output to UART 1. The port must have been initialised
1072 by the boot-loader before use.
1074 config DEBUG_S3C2410_UART2
1075 depends on ARCH_S3C24XX
1076 select DEBUG_S3C2410_UART
1077 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
1079 Say Y here if you want the debug print routines to direct
1080 their output to UART 2. The port must have been initialised
1081 by the boot-loader before use.
1084 depends on ARCH_SA1100
1085 bool "Use SA1100 UARTs for low-level debug"
1087 Say Y here if you want kernel low-level debugging support
1088 on SA-11x0 UART ports. The kernel will check for the first
1089 enabled UART in a sequence 3-1-2.
1091 config DEBUG_SD5203_UART
1092 bool "Hisilicon SD5203 Debug UART"
1093 depends on ARCH_SD5203
1094 select DEBUG_UART_8250
1096 Say Y here if you want kernel low-level debugging support
1099 config DEBUG_SOCFPGA_UART0
1100 depends on ARCH_INTEL_SOCFPGA
1101 bool "Use SOCFPGA UART0 for low-level debug"
1102 select DEBUG_UART_8250
1104 Say Y here if you want kernel low-level debugging support
1105 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1107 config DEBUG_SOCFPGA_ARRIA10_UART1
1108 depends on ARCH_INTEL_SOCFPGA
1109 bool "Use SOCFPGA Arria10 UART1 for low-level debug"
1110 select DEBUG_UART_8250
1112 Say Y here if you want kernel low-level debugging support
1113 on SOCFPGA(Arria 10) based platforms.
1115 config DEBUG_SOCFPGA_CYCLONE5_UART1
1116 depends on ARCH_INTEL_SOCFPGA
1117 bool "Use SOCFPGA Cyclone 5 UART1 for low-level debug"
1118 select DEBUG_UART_8250
1120 Say Y here if you want kernel low-level debugging support
1121 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1123 config DEBUG_SUN9I_UART0
1124 bool "Kernel low-level debugging messages via sun9i UART0"
1125 depends on MACH_SUN9I
1126 select DEBUG_UART_8250
1128 Say Y here if you want kernel low-level debugging support
1129 on Allwinner A80 based platforms on the UART0.
1131 config DEBUG_SUNXI_UART0
1132 bool "Kernel low-level debugging messages via sunXi UART0"
1133 depends on ARCH_SUNXI
1134 select DEBUG_UART_8250
1136 Say Y here if you want kernel low-level debugging support
1137 on Allwinner A1X based platforms on the UART0.
1139 config DEBUG_SUNXI_UART1
1140 bool "Kernel low-level debugging messages via sunXi UART1"
1141 depends on ARCH_SUNXI
1142 select DEBUG_UART_8250
1144 Say Y here if you want kernel low-level debugging support
1145 on Allwinner A1X based platforms on the UART1.
1147 config DEBUG_SUNXI_R_UART
1148 bool "Kernel low-level debugging messages via sunXi R_UART"
1149 depends on MACH_SUN6I || MACH_SUN8I
1150 select DEBUG_UART_8250
1152 Say Y here if you want kernel low-level debugging support
1153 on Allwinner A31/A23 based platforms on the R_UART.
1155 config DEBUG_SPEAR3XX
1156 bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
1157 depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
1158 select DEBUG_UART_PL01X
1160 Say Y here if you want kernel low-level debugging support
1161 on ST SPEAr based platforms.
1163 config DEBUG_SPEAR13XX
1164 bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
1165 depends on ARCH_SPEAR13XX
1166 select DEBUG_UART_PL01X
1168 Say Y here if you want kernel low-level debugging support
1169 on ST SPEAr13xx based platforms.
1171 config DEBUG_STIH41X_ASC2
1172 bool "Use StiH415/416 ASC2 UART for low-level debug"
1175 Say Y here if you want kernel low-level debugging support
1176 on STiH415/416 based platforms like b2000, which has
1177 default UART wired up to ASC2.
1181 config DEBUG_STIH41X_SBC_ASC1
1182 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1185 Say Y here if you want kernel low-level debugging support
1186 on STiH415/416 based platforms like b2020. which has
1187 default UART wired up to SBC ASC1.
1191 config DEBUG_STIH418_SBC_ASC0
1192 bool "Use StiH418 SBC ASC0 UART for low-level debug"
1195 Say Y here if you want kernel low-level debugging support
1196 on STiH418 based platforms which has default UART wired
1201 config STM32F4_DEBUG_UART
1202 bool "Use STM32F4 UART for low-level debug"
1203 depends on MACH_STM32F429 || MACH_STM32F469
1204 select DEBUG_STM32_UART
1206 Say Y here if you want kernel low-level debugging support
1207 on STM32F4 based platforms, which default UART is wired on
1208 USART1, but another UART instance can be selected by modifying
1209 CONFIG_DEBUG_UART_PHYS.
1213 config STM32F7_DEBUG_UART
1214 bool "Use STM32F7 UART for low-level debug"
1215 depends on MACH_STM32F746 || MACH_STM32F769
1216 select DEBUG_STM32_UART
1218 Say Y here if you want kernel low-level debugging support
1219 on STM32F7 based platforms, which default UART is wired on
1220 USART1, but another UART instance can be selected by modifying
1221 CONFIG_DEBUG_UART_PHYS.
1225 config STM32H7_DEBUG_UART
1226 bool "Use STM32H7 UART for low-level debug"
1227 depends on MACH_STM32H743
1228 select DEBUG_STM32_UART
1230 Say Y here if you want kernel low-level debugging support
1231 on STM32H7 based platforms, which default UART is wired on
1232 USART1, but another UART instance can be selected by modifying
1233 CONFIG_DEBUG_UART_PHYS.
1237 config STM32MP1_DEBUG_UART
1238 bool "Use STM32MP1 UART for low-level debug"
1239 depends on MACH_STM32MP157
1240 select DEBUG_STM32_UART
1242 Say Y here if you want kernel low-level debugging support
1243 on STM32MP1 based platforms, wich default UART is wired on
1244 UART4, but another UART instance can be selected by modifying
1245 CONFIG_DEBUG_UART_PHYS and CONFIG_DEBUG_UART_VIRT.
1249 config TEGRA_DEBUG_UART_AUTO_ODMDATA
1250 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
1251 depends on ARCH_TEGRA
1252 select DEBUG_TEGRA_UART
1254 Automatically determines which UART to use for low-level
1255 debug based on the ODMDATA value. This value is part of
1256 the BCT, and is written to the boot memory device using
1257 nvflash, or other flashing tool. When bits 19:18 are 3,
1258 then bits 17:15 indicate which UART to use; 0/1/2/3/4
1261 config TEGRA_DEBUG_UARTA
1262 bool "Kernel low-level debugging messages via Tegra UART A"
1263 depends on ARCH_TEGRA
1264 select DEBUG_TEGRA_UART
1266 Say Y here if you want kernel low-level debugging support
1267 on Tegra based platforms.
1269 config TEGRA_DEBUG_UARTB
1270 bool "Kernel low-level debugging messages via Tegra UART B"
1271 depends on ARCH_TEGRA
1272 select DEBUG_TEGRA_UART
1274 Say Y here if you want kernel low-level debugging support
1275 on Tegra based platforms.
1277 config TEGRA_DEBUG_UARTC
1278 bool "Kernel low-level debugging messages via Tegra UART C"
1279 depends on ARCH_TEGRA
1280 select DEBUG_TEGRA_UART
1282 Say Y here if you want kernel low-level debugging support
1283 on Tegra based platforms.
1285 config TEGRA_DEBUG_UARTD
1286 bool "Kernel low-level debugging messages via Tegra UART D"
1287 depends on ARCH_TEGRA
1288 select DEBUG_TEGRA_UART
1290 Say Y here if you want kernel low-level debugging support
1291 on Tegra based platforms.
1293 config TEGRA_DEBUG_UARTE
1294 bool "Kernel low-level debugging messages via Tegra UART E"
1295 depends on ARCH_TEGRA
1296 select DEBUG_TEGRA_UART
1298 Say Y here if you want kernel low-level debugging support
1299 on Tegra based platforms.
1301 config DEBUG_UX500_UART
1302 depends on ARCH_U8500
1303 bool "Use Ux500 UART for low-level debug"
1305 Say Y here if you want kernel low-level debugging support
1306 on Ux500 based platforms.
1308 config DEBUG_VERSATILE
1309 bool "Kernel low-level debugging messages via ARM Versatile UART"
1310 depends on ARCH_VERSATILE
1311 select DEBUG_UART_PL01X
1313 Say Y here if you want kernel low-level debugging support
1314 on ARM Versatile platforms.
1316 config DEBUG_VEXPRESS_UART0_DETECT
1317 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
1318 depends on ARCH_VEXPRESS && CPU_CP15_MMU
1320 This option enables a simple heuristic which tries to determine
1321 the motherboard's memory map variant (original or RS1) and then
1322 choose the relevant UART0 base address.
1324 Note that this will only work with standard A-class core tiles,
1325 and may fail with non-standard SMM or custom software models.
1327 config DEBUG_VEXPRESS_UART0_CA9
1328 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
1329 depends on ARCH_VEXPRESS
1330 select DEBUG_UART_PL01X
1332 This option selects UART0 at 0x10009000. Except for custom models,
1333 this applies only to the V2P-CA9 tile.
1335 config DEBUG_VEXPRESS_UART0_RS1
1336 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
1337 depends on ARCH_VEXPRESS
1338 select DEBUG_UART_PL01X
1340 This option selects UART0 at 0x1c090000. This applies to most
1341 of the tiles using the RS1 memory map, including all new A-class
1342 core tiles, FPGA-based SMMs and software models.
1344 config DEBUG_VEXPRESS_UART0_CRX
1345 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1346 depends on ARCH_VEXPRESS && !MMU
1347 select DEBUG_UART_PL01X
1349 This option selects UART0 at 0xb0090000. This is appropriate for
1350 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1352 config DEBUG_VF_UART
1354 depends on SOC_VF610
1356 Say Y here if you want kernel low-level debugging support
1357 on Vybrid based platforms.
1359 config DEBUG_VT8500_UART0
1360 bool "Use UART0 on VIA/Wondermedia SoCs"
1361 depends on ARCH_VT8500
1363 This option selects UART0 on VIA/Wondermedia System-on-a-chip
1364 devices, including VT8500, WM8505, WM8650 and WM8850.
1366 config DEBUG_ZYNQ_UART0
1367 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
1368 depends on ARCH_ZYNQ
1370 Say Y here if you want the debug print routines to direct
1371 their output to UART0 on the Zynq platform.
1373 config DEBUG_ZYNQ_UART1
1374 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
1375 depends on ARCH_ZYNQ
1377 Say Y here if you want the debug print routines to direct
1378 their output to UART1 on the Zynq platform.
1380 If you have a ZC702 board and want early boot messages to
1381 appear on the USB serial adaptor, select this option.
1384 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1386 Say Y here if you want the debug print routines to direct
1387 their output to the EmbeddedICE macrocell's DCC channel using
1388 co-processor 14. This is known to work on the ARM9 style ICE
1389 channel and on the XScale with the PEEDI.
1391 Note that the system will appear to hang during boot if there
1392 is nothing connected to read from the DCC.
1394 config DEBUG_SEMIHOSTING
1395 bool "Kernel low-level debug output via semihosting I/O"
1397 Semihosting enables code running on an ARM target to use
1398 the I/O facilities on a host debugger/emulator through a
1399 simple SVC call. The host debugger or emulator must have
1400 semihosting enabled for the special svc call to be trapped
1401 otherwise the kernel will crash.
1403 This is known to work with OpenOCD, as well as
1404 ARM's Fast Models, or any other controlling environment
1405 that implements semihosting.
1407 For more details about semihosting, please see
1408 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1410 config DEBUG_LL_UART_8250
1411 bool "Kernel low-level debugging via 8250 UART"
1413 Say Y here if you wish the debug print routes to direct
1414 their output to an 8250 UART. You can use this option
1415 to provide the parameters for the 8250 UART rather than
1416 selecting one of the platform specific options above if
1417 you know the parameters for the port.
1419 This option is preferred over the platform specific
1420 options; the platform specific options are deprecated
1421 and will be soon removed.
1423 config DEBUG_LL_UART_PL01X
1424 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1426 Say Y here if you wish the debug print routes to direct
1427 their output to a PL01x Primecell UART. You can use
1428 this option to provide the parameters for the UART
1429 rather than selecting one of the platform specific
1430 options above if you know the parameters for the port.
1432 This option is preferred over the platform specific
1433 options; the platform specific options are deprecated
1434 and will be soon removed.
1438 config DEBUG_AT91_UART
1440 depends on ARCH_AT91
1442 config DEBUG_EXYNOS_UART
1445 config DEBUG_S3C2410_UART
1447 select DEBUG_S3C24XX_UART
1449 config DEBUG_S3C24XX_UART
1452 config DEBUG_S3C64XX_UART
1455 config DEBUG_S5PV210_UART
1458 config DEBUG_S3C_UART
1459 depends on DEBUG_S3C2410_UART || DEBUG_S3C24XX_UART || \
1460 DEBUG_S3C64XX_UART || DEBUG_S5PV210_UART || \
1463 default "0" if DEBUG_S3C_UART0
1464 default "1" if DEBUG_S3C_UART1
1465 default "2" if DEBUG_S3C_UART2
1466 default "3" if DEBUG_S3C_UART3
1468 config DEBUG_OMAP2PLUS_UART
1470 depends on ARCH_OMAP2PLUS
1472 config DEBUG_IMX_UART_PORT
1473 int "i.MX Debug UART Port Selection"
1474 depends on DEBUG_IMX1_UART || \
1475 DEBUG_IMX25_UART || \
1476 DEBUG_IMX21_IMX27_UART || \
1477 DEBUG_IMX31_UART || \
1478 DEBUG_IMX35_UART || \
1479 DEBUG_IMX50_UART || \
1480 DEBUG_IMX51_UART || \
1481 DEBUG_IMX53_UART || \
1482 DEBUG_IMX6Q_UART || \
1483 DEBUG_IMX6SL_UART || \
1484 DEBUG_IMX6SX_UART || \
1485 DEBUG_IMX6UL_UART || \
1489 Choose UART port on which kernel low-level debug messages
1492 config DEBUG_VF_UART_PORT
1493 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1496 depends on SOC_VF610
1498 Choose UART port on which kernel low-level debug messages
1501 config DEBUG_TEGRA_UART
1503 depends on ARCH_TEGRA
1505 config DEBUG_STM32_UART
1507 depends on ARCH_STM32
1509 config DEBUG_UART_FLOW_CONTROL
1510 bool "Enable flow control (CTS) for the debug UART"
1512 default y if DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
1514 Some UART ports are connected to terminals that will use modem
1515 control signals to indicate whether they are ready to receive text.
1516 In practice this means that the terminal is asserting the special
1517 control signal CTS (Clear To Send). If your debug UART supports
1518 this and your debug terminal will require it, enable this option.
1520 config DEBUG_LL_INCLUDE
1522 default "debug/sa1100.S" if DEBUG_SA1100
1523 default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
1524 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
1525 default "debug/at91.S" if DEBUG_AT91_UART
1526 default "debug/asm9260.S" if DEBUG_ASM9260_UART
1527 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1528 default "debug/dc21285.S" if DEBUG_DC21285_PORT
1529 default "debug/meson.S" if DEBUG_MESON_UARTAO
1530 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1531 default "debug/exynos.S" if DEBUG_EXYNOS_UART
1532 default "debug/icedcc.S" if DEBUG_ICEDCC
1533 default "debug/imx.S" if DEBUG_IMX1_UART || \
1534 DEBUG_IMX25_UART || \
1535 DEBUG_IMX21_IMX27_UART || \
1536 DEBUG_IMX31_UART || \
1537 DEBUG_IMX35_UART || \
1538 DEBUG_IMX50_UART || \
1539 DEBUG_IMX51_UART || \
1540 DEBUG_IMX53_UART ||\
1541 DEBUG_IMX6Q_UART || \
1542 DEBUG_IMX6SL_UART || \
1543 DEBUG_IMX6SX_UART || \
1544 DEBUG_IMX6UL_UART || \
1546 default "debug/msm.S" if DEBUG_QCOM_UARTDM
1547 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
1548 default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
1549 default "debug/renesas-scif.S" if DEBUG_R7S9210_SCIF2
1550 default "debug/renesas-scif.S" if DEBUG_R7S9210_SCIF4
1551 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
1552 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
1553 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
1554 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF1
1555 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
1556 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4
1557 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIFA2
1558 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
1559 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
1560 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
1561 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
1562 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
1563 default "debug/sti.S" if DEBUG_STIH41X_ASC2
1564 default "debug/sti.S" if DEBUG_STIH41X_SBC_ASC1
1565 default "debug/sti.S" if DEBUG_STIH418_SBC_ASC0
1566 default "debug/stm32.S" if DEBUG_STM32_UART
1567 default "debug/tegra.S" if DEBUG_TEGRA_UART
1568 default "debug/ux500.S" if DEBUG_UX500_UART
1569 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1570 default "debug/vf.S" if DEBUG_VF_UART
1571 default "debug/vt8500.S" if DEBUG_VT8500_UART0
1572 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1573 default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
1574 default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
1575 default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
1576 default "mach/debug-macro.S"
1578 # Compatibility options for PL01x
1579 config DEBUG_UART_PL01X
1582 # Compatibility options for 8250
1583 config DEBUG_UART_8250
1584 def_bool ARCH_IOP32X || ARCH_IXP4XX || ARCH_RPC
1586 config DEBUG_UART_PHYS
1587 hex "Physical base address of debug UART"
1588 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1589 default 0x01c28000 if DEBUG_SUNXI_UART0
1590 default 0x01c28400 if DEBUG_SUNXI_UART1
1591 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1592 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1593 default 0x01f02800 if DEBUG_SUNXI_R_UART
1594 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1595 default 0x02531000 if DEBUG_KEYSTONE_UART1
1596 default 0x03010fe0 if ARCH_RPC
1597 default 0x07000000 if DEBUG_SUN9I_UART0
1598 default 0x09530000 if DEBUG_STIH418_SBC_ASC0
1599 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
1600 DEBUG_VEXPRESS_UART0_CA9
1601 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1602 default 0x10124000 if DEBUG_RK3X_UART0
1603 default 0x10126000 if DEBUG_RK3X_UART1
1604 default 0x101f1000 if DEBUG_VERSATILE
1605 default 0x101fb000 if DEBUG_NOMADIK_UART
1606 default 0x10210000 if DEBUG_RV1108_UART2
1607 default 0x10220000 if DEBUG_RV1108_UART1
1608 default 0x10230000 if DEBUG_RV1108_UART0
1609 default 0x11002000 if DEBUG_MT8127_UART0
1610 default 0x11006000 if DEBUG_MT6589_UART0
1611 default 0x11009000 if DEBUG_MT8135_UART3
1612 default 0x16000000 if DEBUG_INTEGRATOR
1613 default 0x1600d000 if DEBUG_SD5203_UART
1614 default 0x18000300 if DEBUG_BCM_5301X
1615 default 0x18000400 if DEBUG_BCM_HR2
1616 default 0x18023000 if DEBUG_BCM_IPROC_UART3
1617 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
1618 default 0x1f221000 if DEBUG_MSTARV7_PMUART
1619 default 0x20001000 if DEBUG_HIP01_UART
1620 default 0x20060000 if DEBUG_RK29_UART0
1621 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1622 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1623 default 0x20201000 if DEBUG_BCM2835
1624 default 0x3e000000 if DEBUG_BCM_KONA_UART
1625 default 0x3f201000 if DEBUG_BCM2836
1626 default 0x40010000 if STM32MP1_DEBUG_UART
1627 default 0x40011000 if STM32F4_DEBUG_UART || STM32F7_DEBUG_UART || \
1629 default 0x40028000 if DEBUG_AT91_SAMV7_USART1
1630 default 0x40081000 if DEBUG_LPC18XX_UART0
1631 default 0x40090000 if DEBUG_LPC32XX
1632 default 0x40100000 if DEBUG_PXA_UART1
1633 default 0x42000000 if DEBUG_GEMINI
1634 default 0x44e09000 if DEBUG_AM33XXUART1
1635 default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1636 default 0x48022000 if DEBUG_TI81XXUART2
1637 default 0x48024000 if DEBUG_TI81XXUART3
1638 default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1639 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1640 default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1641 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1642 default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1643 default 0x49020000 if DEBUG_OMAP3UART3
1644 default 0x49042000 if DEBUG_OMAP3UART4
1645 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1646 DEBUG_S3C2410_UART0)
1647 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1648 DEBUG_S3C2410_UART1)
1649 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1650 DEBUG_S3C2410_UART2)
1651 default 0x78000000 if DEBUG_CNS3XXX
1652 default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
1653 default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1654 default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1655 default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1656 default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1657 default 0x80010000 if DEBUG_ASM9260_UART
1658 default 0x80070000 if DEBUG_IMX23_UART
1659 default 0x80074000 if DEBUG_IMX28_UART
1660 default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
1661 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1662 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1663 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1664 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1665 default 0xd0000000 if DEBUG_SPEAR3XX
1666 default 0xd0012000 if DEBUG_MVEBU_UART0
1667 default 0xc81004c0 if DEBUG_MESON_UARTAO
1668 default 0xd4017000 if DEBUG_MMP_UART2
1669 default 0xd4018000 if DEBUG_MMP_UART3
1670 default 0xe0000000 if DEBUG_SPEAR13XX
1671 default 0xe4007000 if DEBUG_HIP04_UART
1672 default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
1673 default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
1674 default 0xe6c60000 if DEBUG_RCAR_GEN2_SCIFA2
1675 default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
1676 default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
1677 default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
1678 default 0xe6e68000 if DEBUG_RCAR_GEN2_SCIF1
1679 default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4
1680 default 0xe8008000 if DEBUG_R7S72100_SCIF2 || DEBUG_R7S9210_SCIF2
1681 default 0xe8009000 if DEBUG_R7S9210_SCIF4
1682 default 0xf0000000 if DEBUG_DIGICOLOR_UA0
1683 default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1684 default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1685 default 0xf7fc9000 if DEBUG_BERLIN_UART
1686 default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
1687 default 0xf8b00000 if DEBUG_HIX5HD2_UART
1688 default 0xf991e000 if DEBUG_QCOM_UARTDM
1689 default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
1690 default 0xfcb00000 if DEBUG_HI3620_UART
1691 default 0xfd883000 if DEBUG_ALPINE_UART0
1692 default 0xfe531000 if DEBUG_STIH41X_SBC_ASC1
1693 default 0xfe800000 if ARCH_IOP32X
1694 default 0xfed32000 if DEBUG_STIH41X_ASC2
1695 default 0xff690000 if DEBUG_RK32_UART2
1696 default 0xffc02000 if DEBUG_SOCFPGA_UART0
1697 default 0xffc02100 if DEBUG_SOCFPGA_ARRIA10_UART1
1698 default 0xffc03000 if DEBUG_SOCFPGA_CYCLONE5_UART1
1699 default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
1700 default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
1701 default 0xfff36000 if DEBUG_HIGHBANK_UART
1702 default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1703 default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1704 default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1705 default 0xfffe8600 if DEBUG_BCM63XX_UART
1706 default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
1707 default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
1708 depends on ARCH_EP93XX || \
1709 DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1710 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1711 DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
1712 DEBUG_R7S9210_SCIF2 || DEBUG_R7S9210_SCIF4 || \
1713 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
1714 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF1 || \
1715 DEBUG_RCAR_GEN2_SCIF2 || DEBUG_RCAR_GEN2_SCIF4 || \
1716 DEBUG_RCAR_GEN2_SCIFA2 || \
1717 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
1718 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
1719 DEBUG_S3C64XX_UART || \
1720 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1721 DEBUG_DIGICOLOR_UA0 || \
1722 DEBUG_AT91_UART || DEBUG_STM32_UART || \
1723 DEBUG_STIH41X_ASC2 || DEBUG_STIH41X_SBC_ASC1 || \
1724 DEBUG_STIH418_SBC_ASC0
1726 config DEBUG_UART_VIRT
1727 hex "Virtual base address of debug UART"
1728 default 0xc881f000 if DEBUG_RV1108_UART2
1729 default 0xc8821000 if DEBUG_RV1108_UART1
1730 default 0xc8912000 if DEBUG_RV1108_UART0
1731 default 0xe0010fe0 if ARCH_RPC
1732 default 0xf0010000 if DEBUG_ASM9260_UART
1733 default 0xf0100000 if DEBUG_DIGICOLOR_UA0
1734 default 0xf01fb000 if DEBUG_NOMADIK_UART
1735 default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
1736 default 0xf0221000 if DEBUG_MSTARV7_PMUART
1737 default 0xf1000300 if DEBUG_BCM_5301X
1738 default 0xf1000400 if DEBUG_BCM_HR2
1739 default 0xf1002000 if DEBUG_MT8127_UART0
1740 default 0xf1006000 if DEBUG_MT6589_UART0
1741 default 0xf1009000 if DEBUG_MT8135_UART3
1742 default 0xf1023000 if DEBUG_BCM_IPROC_UART3
1743 default 0xf11f1000 if DEBUG_VERSATILE
1744 default 0xf1600000 if DEBUG_INTEGRATOR
1745 default 0xf1c28000 if DEBUG_SUNXI_UART0
1746 default 0xf1c28400 if DEBUG_SUNXI_UART1
1747 default 0xf1f02800 if DEBUG_SUNXI_R_UART
1748 default 0xf31004c0 if DEBUG_MESON_UARTAO
1749 default 0xf4090000 if DEBUG_LPC32XX
1750 default 0xf4200000 if DEBUG_GEMINI
1751 default 0xf6200000 if DEBUG_PXA_UART1
1752 default 0xf7000000 if DEBUG_SUN9I_UART0
1753 default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1754 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1755 DEBUG_S3C2410_UART0)
1756 default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1757 default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1758 default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1759 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1760 DEBUG_S3C2410_UART1)
1761 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1762 DEBUG_S3C2410_UART2)
1763 default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
1764 default 0xf7fc9000 if DEBUG_BERLIN_UART
1765 default 0xf8007000 if DEBUG_HIP04_UART
1766 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1767 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
1768 default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
1769 default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
1770 default 0xf9530000 if DEBUG_STIH418_SBC_ASC0
1771 default 0xf9e09000 if DEBUG_AM33XXUART1
1772 default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1773 default 0xfa022000 if DEBUG_TI81XXUART2
1774 default 0xfa024000 if DEBUG_TI81XXUART3
1775 default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1776 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1777 default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1778 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1779 default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1780 default 0xfa71e000 if DEBUG_QCOM_UARTDM
1781 default 0xfb002000 if DEBUG_CNS3XXX
1782 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1783 default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
1784 default 0xfb020000 if DEBUG_OMAP3UART3
1785 default 0xfb042000 if DEBUG_OMAP3UART4
1786 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
1787 default 0xfcfe8600 if DEBUG_BCM63XX_UART
1788 default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
1789 default 0xfd531000 if DEBUG_STIH41X_SBC_ASC1
1790 default 0xfd883000 if DEBUG_ALPINE_UART0
1791 default 0xfdd32000 if DEBUG_STIH41X_ASC2
1792 default 0xfe010000 if STM32MP1_DEBUG_UART
1793 default 0xfe017000 if DEBUG_MMP_UART2
1794 default 0xfe018000 if DEBUG_MMP_UART3
1795 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
1796 default 0xfe300000 if DEBUG_BCM_KONA_UART
1797 default 0xfe800000 if ARCH_IOP32X
1798 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1799 default 0xfeb24000 if DEBUG_RK3X_UART0
1800 default 0xfeb26000 if DEBUG_RK3X_UART1
1801 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1802 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1803 default 0xfec02000 if DEBUG_SOCFPGA_UART0
1804 default 0xfec02100 if DEBUG_SOCFPGA_ARRIA10_UART1
1805 default 0xfec03000 if DEBUG_SOCFPGA_CYCLONE5_UART1
1806 default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
1807 default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
1808 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
1809 default 0xfec90000 if DEBUG_RK32_UART2
1810 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1811 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_SD5203_UART
1812 default 0xfed60000 if DEBUG_RK29_UART0
1813 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1814 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1815 default 0xfedc0000 if DEBUG_EP93XX
1816 default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
1817 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1818 default 0xfec00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1819 default 0xfec00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1820 default 0xfef36000 if DEBUG_HIGHBANK_UART
1821 default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1822 default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1823 default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1824 default 0xffd01000 if DEBUG_HIP01_UART
1825 default DEBUG_UART_PHYS if !MMU
1826 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1827 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1828 DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1829 DEBUG_S3C64XX_UART || \
1830 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1831 DEBUG_DIGICOLOR_UA0 || \
1832 DEBUG_AT91_UART || DEBUG_STM32_UART || \
1833 DEBUG_STIH41X_ASC2 || DEBUG_STIH41X_SBC_ASC1 || \
1834 DEBUG_STIH418_SBC_ASC0
1836 config DEBUG_UART_8250_SHIFT
1837 int "Register offset shift for the 8250 debug UART"
1838 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1839 default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
1840 DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
1842 default 3 if DEBUG_MSTARV7_PMUART
1845 config DEBUG_UART_8250_WORD
1846 bool "Use 32-bit accesses for 8250 UART"
1847 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1848 depends on DEBUG_UART_8250_SHIFT >= 2
1849 default y if DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_ARRIA10_UART1 || \
1850 DEBUG_SOCFPGA_CYCLONE5_UART1 || DEBUG_KEYSTONE_UART0 || \
1851 DEBUG_KEYSTONE_UART1 || DEBUG_ALPINE_UART0 || \
1852 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
1853 DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
1854 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
1856 config DEBUG_UART_8250_PALMCHIP
1857 bool "8250 UART is Palmchip BK-310x"
1858 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1860 Palmchip provides a UART implementation compatible with 16550
1861 except for having a different register layout. Say Y here if
1862 the debug UART is of this type.
1864 config DEBUG_UNCOMPRESS
1865 bool "Enable decompressor debugging via DEBUG_LL output"
1866 depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1867 depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1868 (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
1869 !DEBUG_BRCMSTB_UART && !DEBUG_SEMIHOSTING
1871 This option influences the normal decompressor output for
1872 multiplatform kernels. Normally, multiplatform kernels disable
1873 decompressor output because it is not possible to know where to
1874 send the decompressor output.
1876 When this option is set, the selected DEBUG_LL output method
1877 will be re-used for normal decompressor output on multiplatform
1881 config UNCOMPRESS_INCLUDE
1883 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
1884 PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1885 default "mach/uncompress.h"
1891 Say Y here if you want to have an early console using the
1892 kernel low-level debugging functions. Add earlyprintk to your
1893 kernel parameters to enable this console.
1895 config ARM_KPROBES_TEST
1896 tristate "Kprobes test module"
1897 depends on KPROBES && MODULES
1899 Perform tests of kprobes API and instruction set simulation.
1901 config PID_IN_CONTEXTIDR
1902 bool "Write the current PID to the CONTEXTIDR register"
1903 depends on CPU_COPY_V6
1905 Enabling this option causes the kernel to write the current PID to
1906 the PROCID field of the CONTEXTIDR register, at the expense of some
1907 additional instructions during context switch. Say Y here only if you
1908 are planning to use hardware trace tools with this kernel.
1910 source "drivers/hwtracing/coresight/Kconfig"