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
71 This option enables stack unwinding support in the kernel
72 using the information automatically generated by the
73 compiler. The resulting kernel image is slightly bigger but
74 the performance is not affected. Currently, this feature
75 only works with EABI compilers.
86 bool "Verbose user fault messages"
88 When a user program crashes due to an exception, the kernel can
89 print a brief message explaining what the problem was. This is
90 sometimes helpful for debugging but serves no purpose on a
91 production system. Most people should say N here.
93 In addition, you need to pass user_debug=N on the kernel command
94 line to enable this feature. N consists of the sum of:
96 1 - undefined instruction events
98 4 - invalid data aborts
102 # These options are only for real kernel hackers who want to get their hands dirty.
104 bool "Kernel low-level debugging functions (read help!)"
105 depends on DEBUG_KERNEL
107 Say Y here to include definitions of printascii, printch, printhex
108 in the kernel. This is helpful if you are debugging code that
109 executes before the console is initialized.
111 Note that selecting this option will limit the kernel to a single
112 UART definition, as specified below. Attempting to boot the kernel
113 image on a different platform *will not work*, so this option should
114 not be enabled for kernels that are intended to be portable.
117 prompt "Kernel low-level debugging port"
120 config DEBUG_ALPINE_UART0
121 bool "Kernel low-level debugging messages via Alpine UART0"
122 depends on ARCH_ALPINE
123 select DEBUG_UART_8250
125 Say Y here if you want kernel low-level debugging support
126 on Alpine based platforms.
128 config DEBUG_ASM9260_UART
129 bool "Kernel low-level debugging via asm9260 UART"
130 depends on MACH_ASM9260
132 Say Y here if you want the debug print routines to direct
133 their output to an UART or USART port on asm9260 based
136 DEBUG_UART_PHYS | DEBUG_UART_VIRT
138 0x80000000 | 0xf0000000 | UART0
139 0x80004000 | 0xf0004000 | UART1
140 0x80008000 | 0xf0008000 | UART2
141 0x8000c000 | 0xf000c000 | UART3
142 0x80010000 | 0xf0010000 | UART4
143 0x80014000 | 0xf0014000 | UART5
144 0x80018000 | 0xf0018000 | UART6
145 0x8001c000 | 0xf001c000 | UART7
146 0x80020000 | 0xf0020000 | UART8
147 0x80024000 | 0xf0024000 | UART9
149 config DEBUG_AT91_RM9200_DBGU
150 bool "Kernel low-level debugging on AT91RM9200, AT91SAM9, SAM9X60 DBGU"
151 select DEBUG_AT91_UART
152 depends on SOC_AT91RM9200 || SOC_AT91SAM9 || SOC_SAM9X60
154 Say Y here if you want kernel low-level debugging support
156 at91rm9200, at91sam9260, at91sam9g20, at91sam9261,
157 at91sam9g10, at91sam9n12, at91sam9rl64, at91sam9x5, sam9x60
159 config DEBUG_AT91_SAM9263_DBGU
160 bool "Kernel low-level debugging on AT91SAM{9263,9G45,A5D3} DBGU"
161 select DEBUG_AT91_UART
162 depends on SOC_AT91SAM9 || SOC_SAMA5D3
164 Say Y here if you want kernel low-level debugging support
166 at91sam9263, at91sam9g45, at91sam9m10,
169 config DEBUG_AT91_SAMA5D2_UART1
170 bool "Kernel low-level debugging on SAMA5D2 UART1"
171 select DEBUG_AT91_UART
172 depends on SOC_SAMA5D2
174 Say Y here if you want kernel low-level debugging support
175 on the UART1 port of sama5d2.
177 config DEBUG_AT91_SAMA5D4_USART3
178 bool "Kernel low-level debugging on SAMA5D4 USART3"
179 select DEBUG_AT91_UART
180 depends on SOC_SAMA5D4
182 Say Y here if you want kernel low-level debugging support
183 on the USART3 port of sama5d4.
185 config DEBUG_AT91_SAMV7_USART1
186 bool "Kernel low-level debugging via SAMV7 USART1"
187 select DEBUG_AT91_UART
190 Say Y here if you want the debug print routines to direct
191 their output to the USART1 port on SAMV7 based
195 bool "Kernel low-level debugging on BCM2835 PL011 UART"
196 depends on ARCH_BCM2835 && ARCH_MULTI_V6
197 select DEBUG_UART_PL01X
200 bool "Kernel low-level debugging on BCM2836 PL011 UART"
201 depends on ARCH_BCM2835 && ARCH_MULTI_V7
202 select DEBUG_UART_PL01X
204 config DEBUG_BCM_5301X
205 bool "Kernel low-level debugging on BCM5301X/NSP UART1"
206 depends on ARCH_BCM_5301X || ARCH_BCM_NSP
207 select DEBUG_UART_8250
210 bool "Kernel low-level debugging on Hurricane 2 UART2"
211 depends on ARCH_BCM_HR2
212 select DEBUG_UART_8250
214 config DEBUG_BCM_IPROC_UART3
215 bool "Kernel low-level debugging on BCM IPROC UART3"
216 depends on ARCH_BCM_CYGNUS
217 select DEBUG_UART_8250
219 Say Y here if you want the debug print routines to direct
220 their output to the third serial port on these devices.
222 config DEBUG_BCM_KONA_UART
223 bool "Kernel low-level debugging messages via BCM KONA UART"
224 depends on ARCH_BCM_MOBILE
225 select DEBUG_UART_8250
227 Say Y here if you want kernel low-level debugging support
228 on Broadcom SoC platforms.
229 This low level debug works for Broadcom
230 mobile SoCs in the Kona family of chips (e.g. bcm28155,
233 config DEBUG_BCM63XX_UART
234 bool "Kernel low-level debugging on BCM63XX UART"
235 depends on ARCH_BCM_63XX
237 config DEBUG_BERLIN_UART
238 bool "Marvell Berlin SoC Debug UART"
239 depends on ARCH_BERLIN
240 select DEBUG_UART_8250
242 Say Y here if you want kernel low-level debugging support
243 on Marvell Berlin SoC based platforms.
245 config DEBUG_BRCMSTB_UART
246 bool "Use BRCMSTB UART for low-level debug"
247 depends on ARCH_BRCMSTB
249 Say Y here if you want the debug print routines to direct
250 their output to the first serial port on these devices. The
251 UART physical and virtual address is automatically provided
252 based on the chip identification register value.
254 If you have a Broadcom STB chip and would like early print
255 messages to appear over the UART, select this option.
257 config DEBUG_CLPS711X_UART1
258 bool "Kernel low-level debugging messages via UART1"
259 depends on ARCH_CLPS711X
261 Say Y here if you want the debug print routines to direct
262 their output to the first serial port on these devices.
264 config DEBUG_CLPS711X_UART2
265 bool "Kernel low-level debugging messages via UART2"
266 depends on ARCH_CLPS711X
268 Say Y here if you want the debug print routines to direct
269 their output to the second serial port on these devices.
272 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
273 depends on ARCH_CNS3XXX
274 select DEBUG_UART_8250
276 Say Y here if you want the debug print routines to direct
277 their output to the CNS3xxx UART0.
279 config DEBUG_DAVINCI_DA8XX_UART1
280 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
281 depends on ARCH_DAVINCI_DA8XX
282 select DEBUG_UART_8250
284 Say Y here if you want the debug print routines to direct
285 their output to UART1 serial port on DaVinci DA8XX devices.
287 config DEBUG_DAVINCI_DA8XX_UART2
288 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
289 depends on ARCH_DAVINCI_DA8XX
290 select DEBUG_UART_8250
292 Say Y here if you want the debug print routines to direct
293 their output to UART2 serial port on DaVinci DA8XX devices.
295 config DEBUG_DAVINCI_DMx_UART0
296 bool "Kernel low-level debugging on DaVinci DMx using UART0"
297 depends on ARCH_DAVINCI_DMx
298 select DEBUG_UART_8250
300 Say Y here if you want the debug print routines to direct
301 their output to UART0 serial port on DaVinci DMx devices.
303 config DEBUG_DC21285_PORT
304 bool "Kernel low-level debugging messages via footbridge serial port"
305 depends on FOOTBRIDGE
307 Say Y here if you want the debug print routines to direct
308 their output to the serial port in the DC21285 (Footbridge).
310 config DEBUG_DIGICOLOR_UA0
311 bool "Kernel low-level debugging messages via Digicolor UA0"
312 depends on ARCH_DIGICOLOR
314 Say Y here if you want the debug print routines to direct
315 their output to the UA0 serial port in the CX92755.
318 bool "Kernel low-level debugging messages via ep93xx UART"
319 depends on ARCH_EP93XX
320 select DEBUG_UART_PL01X
322 Say Y here if you want kernel low-level debugging support
323 on Cirrus Logic EP93xx based platforms.
325 config DEBUG_FOOTBRIDGE_COM1
326 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
327 depends on FOOTBRIDGE
328 select DEBUG_UART_8250
330 Say Y here if you want the debug print routines to direct
331 their output to the 8250 at PCI COM1.
334 bool "Kernel low-level debugging messages via Cortina Systems Gemini UART"
335 depends on ARCH_GEMINI
336 select DEBUG_UART_8250
338 Say Y here if you want kernel low-level debugging support
339 on Cortina Gemini based platforms.
341 config DEBUG_HI3620_UART
342 bool "Hisilicon HI3620 Debug UART"
343 depends on ARCH_HI3xxx
344 select DEBUG_UART_PL01X
346 Say Y here if you want kernel low-level debugging support
349 config DEBUG_HIGHBANK_UART
350 bool "Kernel low-level debugging messages via Highbank UART"
351 depends on ARCH_HIGHBANK
352 select DEBUG_UART_PL01X
354 Say Y here if you want the debug print routines to direct
355 their output to the UART on Highbank based devices.
357 config DEBUG_HIP01_UART
358 bool "Hisilicon Hip01 Debug UART"
359 depends on ARCH_HIP01
360 select DEBUG_UART_8250
362 Say Y here if you want kernel low-level debugging support
365 config DEBUG_HIP04_UART
366 bool "Hisilicon HiP04 Debug UART"
367 depends on ARCH_HIP04
368 select DEBUG_UART_8250
370 Say Y here if you want kernel low-level debugging support
373 config DEBUG_HIX5HD2_UART
374 bool "Hisilicon Hix5hd2 Debug UART"
375 depends on ARCH_HIX5HD2
376 select DEBUG_UART_PL01X
378 Say Y here if you want kernel low-level debugging support
381 config DEBUG_IMX1_UART
382 bool "i.MX1 Debug UART"
385 Say Y here if you want kernel low-level debugging support
388 config DEBUG_IMX23_UART
389 bool "i.MX23 Debug UART"
391 select DEBUG_UART_PL01X
393 Say Y here if you want kernel low-level debugging support
396 config DEBUG_IMX25_UART
397 bool "i.MX25 Debug UART"
400 Say Y here if you want kernel low-level debugging support
403 config DEBUG_IMX21_IMX27_UART
404 bool "i.MX21 and i.MX27 Debug UART"
405 depends on SOC_IMX21 || SOC_IMX27
407 Say Y here if you want kernel low-level debugging support
410 config DEBUG_IMX28_UART
411 bool "i.MX28 Debug UART"
413 select DEBUG_UART_PL01X
415 Say Y here if you want kernel low-level debugging support
418 config DEBUG_IMX31_UART
419 bool "i.MX31 Debug UART"
422 Say Y here if you want kernel low-level debugging support
425 config DEBUG_IMX35_UART
426 bool "i.MX35 Debug UART"
429 Say Y here if you want kernel low-level debugging support
432 config DEBUG_IMX50_UART
433 bool "i.MX50 Debug UART"
436 Say Y here if you want kernel low-level debugging support
439 config DEBUG_IMX51_UART
440 bool "i.MX51 Debug UART"
443 Say Y here if you want kernel low-level debugging support
446 config DEBUG_IMX53_UART
447 bool "i.MX53 Debug UART"
450 Say Y here if you want kernel low-level debugging support
453 config DEBUG_IMX6Q_UART
454 bool "i.MX6Q/DL Debug UART"
457 Say Y here if you want kernel low-level debugging support
460 config DEBUG_IMX6SL_UART
461 bool "i.MX6SL Debug UART"
462 depends on SOC_IMX6SL
464 Say Y here if you want kernel low-level debugging support
467 config DEBUG_IMX6SX_UART
468 bool "i.MX6SX Debug UART"
469 depends on SOC_IMX6SX
471 Say Y here if you want kernel low-level debugging support
474 config DEBUG_IMX6UL_UART
475 bool "i.MX6UL Debug UART"
476 depends on SOC_IMX6UL
478 Say Y here if you want kernel low-level debugging support
481 config DEBUG_IMX7D_UART
482 bool "i.MX7D Debug UART"
485 Say Y here if you want kernel low-level debugging support
488 config DEBUG_INTEGRATOR
489 bool "Kernel low-level debugging messages via ARM Integrator UART"
490 depends on ARCH_INTEGRATOR
491 select DEBUG_UART_PL01X
493 Say Y here if you want kernel low-level debugging support
494 on ARM Integrator platforms.
496 config DEBUG_KEYSTONE_UART0
497 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
498 depends on ARCH_KEYSTONE
499 select DEBUG_UART_8250
501 Say Y here if you want the debug print routines to direct
502 their output to UART0 serial port on KEYSTONE2 devices.
504 config DEBUG_KEYSTONE_UART1
505 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
506 depends on ARCH_KEYSTONE
507 select DEBUG_UART_8250
509 Say Y here if you want the debug print routines to direct
510 their output to UART1 serial port on KEYSTONE2 devices.
512 config DEBUG_LPC18XX_UART0
513 bool "Kernel low-level debugging via LPC18xx/43xx UART0"
514 depends on ARCH_LPC18XX
515 select DEBUG_UART_8250
517 Say Y here if you want kernel low-level debugging support
518 on NXP LPC18xx/43xx UART0.
521 bool "Kernel low-level debugging messages via NXP LPC32xx UART"
522 depends on ARCH_LPC32XX
523 select DEBUG_UART_8250
525 Say Y here if you want kernel low-level debugging support
526 on NXP LPC32xx based platforms.
528 config DEBUG_MESON_UARTAO
529 bool "Kernel low-level debugging via Meson6 UARTAO"
530 depends on ARCH_MESON
532 Say Y here if you want kernel low-lever debugging support
533 on Amlogic Meson6 based platforms on the UARTAO.
535 config DEBUG_MMP_UART2
536 bool "Kernel low-level debugging message via MMP UART2"
538 select DEBUG_UART_8250
540 Say Y here if you want kernel low-level debugging support
543 config DEBUG_MMP_UART3
544 bool "Kernel low-level debugging message via MMP UART3"
546 select DEBUG_UART_8250
548 Say Y here if you want kernel low-level debugging support
551 config DEBUG_MVEBU_UART0
552 bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
553 depends on ARCH_MVEBU
554 depends on ARCH_MVEBU && CPU_V7
555 select DEBUG_UART_8250
557 Say Y here if you want kernel low-level debugging support
558 on MVEBU based platforms on UART0.
560 This option should be used with the old bootloaders
561 that left the internal registers mapped at
562 0xd0000000. As of today, this is the case on
563 platforms such as the Globalscale Mirabox or the
564 Plathome OpenBlocks AX3, when using the original
567 This option will not work on older Marvell platforms
568 (Kirkwood, Dove, MV78xx0, Orion5x), which should pick
569 the "new bootloader" variant.
571 If the wrong DEBUG_MVEBU_UART* option is selected,
572 when u-boot hands over to the kernel, the system
573 silently crashes, with no serial output at all.
575 config DEBUG_MVEBU_UART0_ALTERNATE
576 bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
577 depends on ARCH_MVEBU || ARCH_DOVE || ARCH_MV78XX0 || ARCH_ORION5X
578 select DEBUG_UART_8250
580 Say Y here if you want kernel low-level debugging support
581 on MVEBU based platforms on UART0. (Armada XP, Armada 3xx,
582 Kirkwood, Dove, MV78xx0, Orion5x).
585 This option should be used with the new bootloaders
586 that remap the internal registers at 0xf1000000.
588 If the wrong DEBUG_MVEBU_UART* option is selected,
589 when u-boot hands over to the kernel, the system
590 silently crashes, with no serial output at all.
592 config DEBUG_MVEBU_UART1_ALTERNATE
593 bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
594 depends on ARCH_MVEBU
595 select DEBUG_UART_8250
597 Say Y here if you want kernel low-level debugging support
598 on MVEBU based platforms on UART1. (Armada XP, Armada 3xx,
599 Kirkwood, Dove, MV78xx0, Orion5x).
601 This option should be used with the new bootloaders
602 that remap the internal registers at 0xf1000000.
603 All of the older (pre Armada XP/370) platforms also use
604 this address, regardless of the boot loader version.
606 If the wrong DEBUG_MVEBU_UART* option is selected,
607 when u-boot hands over to the kernel, the system
608 silently crashes, with no serial output at all.
610 config DEBUG_MT6589_UART0
611 bool "Mediatek mt6589 UART0"
612 depends on ARCH_MEDIATEK
613 select DEBUG_UART_8250
615 Say Y here if you want kernel low-level debugging support
616 for Mediatek mt6589 based platforms on UART0.
618 config DEBUG_MT8127_UART0
619 bool "Mediatek mt8127/mt6592 UART0"
620 depends on ARCH_MEDIATEK
621 select DEBUG_UART_8250
623 Say Y here if you want kernel low-level debugging support
624 for Mediatek mt8127 based platforms on UART0.
626 config DEBUG_MT8135_UART3
627 bool "Mediatek mt8135 UART3"
628 depends on ARCH_MEDIATEK
629 select DEBUG_UART_8250
631 Say Y here if you want kernel low-level debugging support
632 for Mediatek mt8135 based platforms on UART3.
634 config DEBUG_NOMADIK_UART
635 bool "Kernel low-level debugging messages via NOMADIK UART"
636 depends on ARCH_NOMADIK
637 select DEBUG_UART_PL01X
639 Say Y here if you want kernel low-level debugging support
640 on NOMADIK based platforms.
642 config DEBUG_NSPIRE_CLASSIC_UART
643 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
644 depends on ARCH_NSPIRE
645 select DEBUG_UART_8250
647 Say Y here if you want kernel low-level debugging support
648 on TI-NSPIRE classic models.
650 config DEBUG_NSPIRE_CX_UART
651 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
652 depends on ARCH_NSPIRE
653 select DEBUG_UART_PL01X
655 Say Y here if you want kernel low-level debugging support
656 on TI-NSPIRE CX models.
658 config DEBUG_OMAP1UART1
659 bool "Kernel low-level debugging via OMAP1 UART1"
660 depends on ARCH_OMAP1
661 select DEBUG_UART_8250
663 Say Y here if you want kernel low-level debugging support
664 on OMAP1 based platforms (except OMAP730) on the UART1.
666 config DEBUG_OMAP1UART2
667 bool "Kernel low-level debugging via OMAP1 UART2"
668 depends on ARCH_OMAP1
669 select DEBUG_UART_8250
671 Say Y here if you want kernel low-level debugging support
672 on OMAP1 based platforms (except OMAP730) on the UART2.
674 config DEBUG_OMAP1UART3
675 bool "Kernel low-level debugging via OMAP1 UART3"
676 depends on ARCH_OMAP1
677 select DEBUG_UART_8250
679 Say Y here if you want kernel low-level debugging support
680 on OMAP1 based platforms (except OMAP730) on the UART3.
682 config DEBUG_OMAP2UART1
683 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
684 depends on ARCH_OMAP2PLUS
685 select DEBUG_UART_8250
687 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
688 omap3 torpedo and 3530 lv som.
690 config DEBUG_OMAP2UART2
691 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
692 depends on ARCH_OMAP2PLUS
693 select DEBUG_UART_8250
695 config DEBUG_OMAP2UART3
696 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
697 depends on ARCH_OMAP2PLUS
698 select DEBUG_UART_8250
700 config DEBUG_OMAP3UART3
701 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
702 depends on ARCH_OMAP2PLUS
703 select DEBUG_UART_8250
705 This covers at least cm_t3x, beagle, crane, devkit8000,
706 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
709 config DEBUG_OMAP4UART3
710 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
711 depends on ARCH_OMAP2PLUS
712 select DEBUG_UART_8250
714 config DEBUG_OMAP3UART4
715 bool "Kernel low-level debugging messages via OMAP36XX UART4"
716 depends on ARCH_OMAP2PLUS
717 select DEBUG_UART_8250
719 config DEBUG_OMAP4UART4
720 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
721 depends on ARCH_OMAP2PLUS
722 select DEBUG_UART_8250
724 config DEBUG_OMAP7XXUART1
725 bool "Kernel low-level debugging via OMAP730 UART1"
726 depends on ARCH_OMAP730
727 select DEBUG_UART_8250
729 Say Y here if you want kernel low-level debugging support
730 on OMAP730 based platforms on the UART1.
732 config DEBUG_OMAP7XXUART2
733 bool "Kernel low-level debugging via OMAP730 UART2"
734 depends on ARCH_OMAP730
735 select DEBUG_UART_8250
737 Say Y here if you want kernel low-level debugging support
738 on OMAP730 based platforms on the UART2.
740 config DEBUG_OMAP7XXUART3
741 bool "Kernel low-level debugging via OMAP730 UART3"
742 depends on ARCH_OMAP730
743 select DEBUG_UART_8250
745 Say Y here if you want kernel low-level debugging support
746 on OMAP730 based platforms on the UART3.
748 config DEBUG_TI81XXUART1
749 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
750 depends on ARCH_OMAP2PLUS
751 select DEBUG_UART_8250
753 config DEBUG_TI81XXUART2
754 bool "Kernel low-level debugging messages via TI81XX UART2"
755 depends on ARCH_OMAP2PLUS
756 select DEBUG_UART_8250
758 config DEBUG_TI81XXUART3
759 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
760 depends on ARCH_OMAP2PLUS
761 select DEBUG_UART_8250
763 config DEBUG_AM33XXUART1
764 bool "Kernel low-level debugging messages via AM33XX UART1"
765 depends on ARCH_OMAP2PLUS
766 select DEBUG_UART_8250
768 config DEBUG_ZOOM_UART
769 bool "Kernel low-level debugging messages via Zoom2/3 UART"
770 depends on ARCH_OMAP2PLUS
771 select DEBUG_OMAP2PLUS_UART
773 config DEBUG_PICOXCELL_UART
774 depends on ARCH_PICOXCELL
775 bool "Use PicoXcell UART for low-level debug"
776 select DEBUG_UART_8250
778 Say Y here if you want kernel low-level debugging support
779 on PicoXcell based platforms.
781 config DEBUG_PXA_UART1
783 bool "Use PXA UART1 for low-level debug"
784 select DEBUG_UART_8250
786 Say Y here if you want kernel low-level debugging support
789 config DEBUG_QCOM_UARTDM
790 bool "Kernel low-level debugging messages via QCOM UARTDM"
793 Say Y here if you want the debug print routines to direct
794 their output to the serial port on Qualcomm devices.
796 ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
797 APQ8064 0x16640000 0xf0040000
798 APQ8084 0xf995e000 0xfa75e000
799 IPQ4019 0x078af000 0xf78af000
800 MSM8X60 0x19c40000 0xf0040000
801 MSM8960 0x16440000 0xf0040000
802 MSM8974 0xf991e000 0xfa71e000
804 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
805 options based on your needs.
807 config DEBUG_REALVIEW_STD_PORT
808 bool "RealView Default UART"
809 depends on ARCH_REALVIEW
810 select DEBUG_UART_PL01X
812 Say Y here if you want the debug print routines to direct
813 their output to the serial port on RealView EB, PB11MP, PBA8
816 config DEBUG_REALVIEW_PB1176_PORT
817 bool "RealView PB1176 UART"
818 depends on MACH_REALVIEW_PB1176
819 select DEBUG_UART_PL01X
821 Say Y here if you want the debug print routines to direct
822 their output to the standard serial port on the RealView
825 config DEBUG_RV1108_UART0
826 bool "Kernel low-level debugging messages via Rockchip RV1108 UART0"
827 depends on ARCH_ROCKCHIP
828 select DEBUG_UART_8250
830 Say Y here if you want kernel low-level debugging support
831 on Rockchip RV1108 based platforms.
833 config DEBUG_RV1108_UART1
834 bool "Kernel low-level debugging messages via Rockchip RV1108 UART1"
835 depends on ARCH_ROCKCHIP
836 select DEBUG_UART_8250
838 Say Y here if you want kernel low-level debugging support
839 on Rockchip RV1108 based platforms.
841 config DEBUG_RV1108_UART2
842 bool "Kernel low-level debugging messages via Rockchip RV1108 UART2"
843 depends on ARCH_ROCKCHIP
844 select DEBUG_UART_8250
846 Say Y here if you want kernel low-level debugging support
847 on Rockchip RV1108 based platforms.
849 config DEBUG_RK29_UART0
850 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
851 depends on ARCH_ROCKCHIP
852 select DEBUG_UART_8250
854 Say Y here if you want kernel low-level debugging support
855 on Rockchip based platforms.
857 config DEBUG_RK29_UART1
858 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
859 depends on ARCH_ROCKCHIP
860 select DEBUG_UART_8250
862 Say Y here if you want kernel low-level debugging support
863 on Rockchip based platforms.
865 config DEBUG_RK29_UART2
866 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
867 depends on ARCH_ROCKCHIP
868 select DEBUG_UART_8250
870 Say Y here if you want kernel low-level debugging support
871 on Rockchip based platforms.
873 config DEBUG_RK3X_UART0
874 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
875 depends on ARCH_ROCKCHIP
876 select DEBUG_UART_8250
878 Say Y here if you want kernel low-level debugging support
879 on Rockchip based platforms.
881 config DEBUG_RK3X_UART1
882 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
883 depends on ARCH_ROCKCHIP
884 select DEBUG_UART_8250
886 Say Y here if you want kernel low-level debugging support
887 on Rockchip based platforms.
889 config DEBUG_RK3X_UART2
890 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
891 depends on ARCH_ROCKCHIP
892 select DEBUG_UART_8250
894 Say Y here if you want kernel low-level debugging support
895 on Rockchip based platforms.
897 config DEBUG_RK3X_UART3
898 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
899 depends on ARCH_ROCKCHIP
900 select DEBUG_UART_8250
902 Say Y here if you want kernel low-level debugging support
903 on Rockchip based platforms.
905 config DEBUG_RK32_UART2
906 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
907 depends on ARCH_ROCKCHIP
908 select DEBUG_UART_8250
910 Say Y here if you want kernel low-level debugging support
911 on Rockchip RK32xx based platforms.
913 config DEBUG_R7S72100_SCIF2
914 bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
915 depends on ARCH_R7S72100
917 Say Y here if you want kernel low-level debugging support
918 via SCIF2 on Renesas RZ/A1H (R7S72100).
920 config DEBUG_R7S9210_SCIF2
921 bool "Kernel low-level debugging messages via SCIF2 on R7S9210"
922 depends on ARCH_R7S9210
924 Say Y here if you want kernel low-level debugging support
925 via SCIF2 on Renesas RZ/A2M (R7S9210).
927 config DEBUG_R7S9210_SCIF4
928 bool "Kernel low-level debugging messages via SCIF4 on R7S9210"
929 depends on ARCH_R7S9210
931 Say Y here if you want kernel low-level debugging support
932 via SCIF4 on Renesas RZ/A2M (R7S9210).
934 config DEBUG_RCAR_GEN1_SCIF0
935 bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
936 depends on ARCH_R8A7778
938 Say Y here if you want kernel low-level debugging support
939 via SCIF0 on Renesas R-Car M1A (R8A7778).
941 config DEBUG_RCAR_GEN1_SCIF2
942 bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
943 depends on ARCH_R8A7779
945 Say Y here if you want kernel low-level debugging support
946 via SCIF2 on Renesas R-Car H1 (R8A7779).
948 config DEBUG_RCAR_GEN2_SCIF0
949 bool "Kernel low-level debugging messages via SCIF0 on R-Car Gen2 and RZ/G1"
950 depends on ARCH_R8A7743 || ARCH_R8A7744 || ARCH_R8A7790 || \
951 ARCH_R8A7791 || ARCH_R8A7792 || ARCH_R8A7793
953 Say Y here if you want kernel low-level debugging support
954 via SCIF0 on Renesas RZ/G1M (R8A7743), RZ/G1N (R8A7744),
955 R-Car H2 (R8A7790), M2-W (R8A7791), V2H (R8A7792), or
958 config DEBUG_RCAR_GEN2_SCIF1
959 bool "Kernel low-level debugging messages via SCIF1 on R8A77470"
960 depends on ARCH_R8A77470
962 Say Y here if you want kernel low-level debugging support
963 via SCIF1 on Renesas RZ/G1C (R8A77470).
965 config DEBUG_RCAR_GEN2_SCIF2
966 bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
967 depends on ARCH_R8A7794
969 Say Y here if you want kernel low-level debugging support
970 via SCIF2 on Renesas R-Car E2 (R8A7794).
972 config DEBUG_RCAR_GEN2_SCIF4
973 bool "Kernel low-level debugging messages via SCIF4 on R8A7745"
974 depends on ARCH_R8A7745
976 Say Y here if you want kernel low-level debugging support
977 via SCIF4 on Renesas RZ/G1E (R8A7745).
979 config DEBUG_RCAR_GEN2_SCIFA2
980 bool "Kernel low-level debugging messages via SCIFA2 on R8A7742"
981 depends on ARCH_R8A7742
983 Say Y here if you want kernel low-level debugging support
984 via SCIFA2 on Renesas RZ/G1H (R8A7742).
986 config DEBUG_RMOBILE_SCIFA0
987 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
988 depends on ARCH_R8A73A4
990 Say Y here if you want kernel low-level debugging support
991 via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
993 config DEBUG_RMOBILE_SCIFA1
994 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
995 depends on ARCH_R8A7740
997 Say Y here if you want kernel low-level debugging support
998 via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
1000 config DEBUG_RMOBILE_SCIFA4
1001 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
1002 depends on ARCH_SH73A0
1004 Say Y here if you want kernel low-level debugging support
1005 via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
1007 config DEBUG_S3C_UART0
1008 depends on PLAT_SAMSUNG
1009 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1010 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1011 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1012 select DEBUG_S5PV210_UART if ARCH_S5PV210
1013 bool "Use Samsung S3C UART 0 for low-level debug"
1015 Say Y here if you want the debug print routines to direct
1016 their output to UART 0. The port must have been initialised
1017 by the boot-loader before use.
1019 config DEBUG_S3C_UART1
1020 depends on PLAT_SAMSUNG
1021 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1022 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1023 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1024 select DEBUG_S5PV210_UART if ARCH_S5PV210
1025 bool "Use Samsung S3C UART 1 for low-level debug"
1027 Say Y here if you want the debug print routines to direct
1028 their output to UART 1. The port must have been initialised
1029 by the boot-loader before use.
1031 config DEBUG_S3C_UART2
1032 depends on PLAT_SAMSUNG
1033 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1034 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1035 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1036 select DEBUG_S5PV210_UART if ARCH_S5PV210
1037 bool "Use Samsung S3C UART 2 for low-level debug"
1039 Say Y here if you want the debug print routines to direct
1040 their output to UART 2. The port must have been initialised
1041 by the boot-loader before use.
1043 config DEBUG_S3C_UART3
1044 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
1045 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1046 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1047 select DEBUG_S5PV210_UART if ARCH_S5PV210
1048 bool "Use Samsung S3C UART 3 for low-level debug"
1050 Say Y here if you want the debug print routines to direct
1051 their output to UART 3. The port must have been initialised
1052 by the boot-loader before use.
1054 config DEBUG_S3C2410_UART0
1055 depends on ARCH_S3C24XX
1056 select DEBUG_S3C2410_UART
1057 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
1059 Say Y here if you want the debug print routines to direct
1060 their output to UART 0. The port must have been initialised
1061 by the boot-loader before use.
1063 config DEBUG_S3C2410_UART1
1064 depends on ARCH_S3C24XX
1065 select DEBUG_S3C2410_UART
1066 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
1068 Say Y here if you want the debug print routines to direct
1069 their output to UART 1. The port must have been initialised
1070 by the boot-loader before use.
1072 config DEBUG_S3C2410_UART2
1073 depends on ARCH_S3C24XX
1074 select DEBUG_S3C2410_UART
1075 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
1077 Say Y here if you want the debug print routines to direct
1078 their output to UART 2. The port must have been initialised
1079 by the boot-loader before use.
1082 depends on ARCH_SA1100
1083 bool "Use SA1100 UARTs for low-level debug"
1085 Say Y here if you want kernel low-level debugging support
1086 on SA-11x0 UART ports. The kernel will check for the first
1087 enabled UART in a sequence 3-1-2.
1089 config DEBUG_SOCFPGA_UART0
1090 depends on ARCH_SOCFPGA
1091 bool "Use SOCFPGA UART0 for low-level debug"
1092 select DEBUG_UART_8250
1094 Say Y here if you want kernel low-level debugging support
1095 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1097 config DEBUG_SOCFPGA_ARRIA10_UART1
1098 depends on ARCH_SOCFPGA
1099 bool "Use SOCFPGA Arria10 UART1 for low-level debug"
1100 select DEBUG_UART_8250
1102 Say Y here if you want kernel low-level debugging support
1103 on SOCFPGA(Arria 10) based platforms.
1105 config DEBUG_SOCFPGA_CYCLONE5_UART1
1106 depends on ARCH_SOCFPGA
1107 bool "Use SOCFPGA Cyclone 5 UART1 for low-level debug"
1108 select DEBUG_UART_8250
1110 Say Y here if you want kernel low-level debugging support
1111 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1113 config DEBUG_SUN9I_UART0
1114 bool "Kernel low-level debugging messages via sun9i UART0"
1115 depends on MACH_SUN9I
1116 select DEBUG_UART_8250
1118 Say Y here if you want kernel low-level debugging support
1119 on Allwinner A80 based platforms on the UART0.
1121 config DEBUG_SUNXI_UART0
1122 bool "Kernel low-level debugging messages via sunXi UART0"
1123 depends on ARCH_SUNXI
1124 select DEBUG_UART_8250
1126 Say Y here if you want kernel low-level debugging support
1127 on Allwinner A1X based platforms on the UART0.
1129 config DEBUG_SUNXI_UART1
1130 bool "Kernel low-level debugging messages via sunXi UART1"
1131 depends on ARCH_SUNXI
1132 select DEBUG_UART_8250
1134 Say Y here if you want kernel low-level debugging support
1135 on Allwinner A1X based platforms on the UART1.
1137 config DEBUG_SUNXI_R_UART
1138 bool "Kernel low-level debugging messages via sunXi R_UART"
1139 depends on MACH_SUN6I || MACH_SUN8I
1140 select DEBUG_UART_8250
1142 Say Y here if you want kernel low-level debugging support
1143 on Allwinner A31/A23 based platforms on the R_UART.
1145 config DEBUG_SIRFPRIMA2_UART1
1146 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
1147 depends on ARCH_PRIMA2
1148 select DEBUG_SIRFSOC_UART
1150 Say Y here if you want the debug print routines to direct
1151 their output to the uart1 port on SiRFprimaII devices.
1153 config DEBUG_SIRFATLAS7_UART0
1154 bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
1155 depends on ARCH_ATLAS7
1156 select DEBUG_SIRFSOC_UART
1158 Say Y here if you want the debug print routines to direct
1159 their output to the uart0 port on SiRFATLAS7 devices.The uart0
1160 is used on SiRFATLAS7 as a extra debug port.sometimes an extra
1161 debug port can be very useful.
1163 config DEBUG_SIRFATLAS7_UART1
1164 bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
1165 depends on ARCH_ATLAS7
1166 select DEBUG_SIRFSOC_UART
1168 Say Y here if you want the debug print routines to direct
1169 their output to the uart1 port on SiRFATLAS7 devices.
1171 config DEBUG_SPEAR3XX
1172 bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
1173 depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
1174 select DEBUG_UART_PL01X
1176 Say Y here if you want kernel low-level debugging support
1177 on ST SPEAr based platforms.
1179 config DEBUG_SPEAR13XX
1180 bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
1181 depends on ARCH_SPEAR13XX
1182 select DEBUG_UART_PL01X
1184 Say Y here if you want kernel low-level debugging support
1185 on ST SPEAr13xx based platforms.
1187 config STIH41X_DEBUG_ASC2
1188 bool "Use StiH415/416 ASC2 UART for low-level debug"
1190 select DEBUG_STI_UART
1192 Say Y here if you want kernel low-level debugging support
1193 on STiH415/416 based platforms like b2000, which has
1194 default UART wired up to ASC2.
1198 config STIH41X_DEBUG_SBC_ASC1
1199 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1201 select DEBUG_STI_UART
1203 Say Y here if you want kernel low-level debugging support
1204 on STiH415/416 based platforms like b2020. which has
1205 default UART wired up to SBC ASC1.
1209 config STM32F4_DEBUG_UART
1210 bool "Use STM32F4 UART for low-level debug"
1211 depends on MACH_STM32F429 || MACH_STM32F469
1212 select DEBUG_STM32_UART
1214 Say Y here if you want kernel low-level debugging support
1215 on STM32F4 based platforms, which default UART is wired on
1216 USART1, but another UART instance can be selected by modifying
1217 CONFIG_DEBUG_UART_PHYS.
1221 config STM32F7_DEBUG_UART
1222 bool "Use STM32F7 UART for low-level debug"
1223 depends on MACH_STM32F746 || MACH_STM32F769
1224 select DEBUG_STM32_UART
1226 Say Y here if you want kernel low-level debugging support
1227 on STM32F7 based platforms, which default UART is wired on
1228 USART1, but another UART instance can be selected by modifying
1229 CONFIG_DEBUG_UART_PHYS.
1233 config STM32H7_DEBUG_UART
1234 bool "Use STM32H7 UART for low-level debug"
1235 depends on MACH_STM32H743
1236 select DEBUG_STM32_UART
1238 Say Y here if you want kernel low-level debugging support
1239 on STM32H7 based platforms, which default UART is wired on
1240 USART1, but another UART instance can be selected by modifying
1241 CONFIG_DEBUG_UART_PHYS.
1245 config STM32MP1_DEBUG_UART
1246 bool "Use STM32MP1 UART for low-level debug"
1247 depends on MACH_STM32MP157
1248 select DEBUG_STM32_UART
1250 Say Y here if you want kernel low-level debugging support
1251 on STM32MP1 based platforms, wich default UART is wired on
1252 UART4, but another UART instance can be selected by modifying
1253 CONFIG_DEBUG_UART_PHYS and CONFIG_DEBUG_UART_VIRT.
1257 config TEGRA_DEBUG_UART_AUTO_ODMDATA
1258 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
1259 depends on ARCH_TEGRA
1260 select DEBUG_TEGRA_UART
1262 Automatically determines which UART to use for low-level
1263 debug based on the ODMDATA value. This value is part of
1264 the BCT, and is written to the boot memory device using
1265 nvflash, or other flashing tool. When bits 19:18 are 3,
1266 then bits 17:15 indicate which UART to use; 0/1/2/3/4
1269 config TEGRA_DEBUG_UARTA
1270 bool "Kernel low-level debugging messages via Tegra UART A"
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_UARTB
1278 bool "Kernel low-level debugging messages via Tegra UART B"
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_UARTC
1286 bool "Kernel low-level debugging messages via Tegra UART C"
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_UARTD
1294 bool "Kernel low-level debugging messages via Tegra UART D"
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 TEGRA_DEBUG_UARTE
1302 bool "Kernel low-level debugging messages via Tegra UART E"
1303 depends on ARCH_TEGRA
1304 select DEBUG_TEGRA_UART
1306 Say Y here if you want kernel low-level debugging support
1307 on Tegra based platforms.
1309 config DEBUG_U300_UART
1310 bool "Kernel low-level debugging messages via U300 UART0"
1311 depends on ARCH_U300
1312 select DEBUG_UART_PL01X
1314 Say Y here if you want the debug print routines to direct
1315 their output to the uart port on U300 devices.
1317 config DEBUG_UX500_UART
1318 depends on ARCH_U8500
1319 bool "Use Ux500 UART for low-level debug"
1321 Say Y here if you want kernel low-level debugging support
1322 on Ux500 based platforms.
1324 config DEBUG_VERSATILE
1325 bool "Kernel low-level debugging messages via ARM Versatile UART"
1326 depends on ARCH_VERSATILE
1327 select DEBUG_UART_PL01X
1329 Say Y here if you want kernel low-level debugging support
1330 on ARM Versatile platforms.
1332 config DEBUG_VEXPRESS_UART0_DETECT
1333 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
1334 depends on ARCH_VEXPRESS && CPU_CP15_MMU
1336 This option enables a simple heuristic which tries to determine
1337 the motherboard's memory map variant (original or RS1) and then
1338 choose the relevant UART0 base address.
1340 Note that this will only work with standard A-class core tiles,
1341 and may fail with non-standard SMM or custom software models.
1343 config DEBUG_VEXPRESS_UART0_CA9
1344 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
1345 depends on ARCH_VEXPRESS
1346 select DEBUG_UART_PL01X
1348 This option selects UART0 at 0x10009000. Except for custom models,
1349 this applies only to the V2P-CA9 tile.
1351 config DEBUG_VEXPRESS_UART0_RS1
1352 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
1353 depends on ARCH_VEXPRESS
1354 select DEBUG_UART_PL01X
1356 This option selects UART0 at 0x1c090000. This applies to most
1357 of the tiles using the RS1 memory map, including all new A-class
1358 core tiles, FPGA-based SMMs and software models.
1360 config DEBUG_VEXPRESS_UART0_CRX
1361 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1362 depends on ARCH_VEXPRESS && !MMU
1363 select DEBUG_UART_PL01X
1365 This option selects UART0 at 0xb0090000. This is appropriate for
1366 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1368 config DEBUG_VF_UART
1370 depends on SOC_VF610
1372 Say Y here if you want kernel low-level debugging support
1373 on Vybrid based platforms.
1375 config DEBUG_VT8500_UART0
1376 bool "Use UART0 on VIA/Wondermedia SoCs"
1377 depends on ARCH_VT8500
1379 This option selects UART0 on VIA/Wondermedia System-on-a-chip
1380 devices, including VT8500, WM8505, WM8650 and WM8850.
1383 bool "Use ZTE ZX UART"
1384 select DEBUG_UART_PL01X
1387 Say Y here if you are enabling ZTE ZX296702 SOC and need
1390 This option is preferred over the platform specific
1391 options; the platform specific options are deprecated
1392 and will be soon removed.
1394 config DEBUG_ZYNQ_UART0
1395 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
1396 depends on ARCH_ZYNQ
1398 Say Y here if you want the debug print routines to direct
1399 their output to UART0 on the Zynq platform.
1401 config DEBUG_ZYNQ_UART1
1402 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
1403 depends on ARCH_ZYNQ
1405 Say Y here if you want the debug print routines to direct
1406 their output to UART1 on the Zynq platform.
1408 If you have a ZC702 board and want early boot messages to
1409 appear on the USB serial adaptor, select this option.
1412 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1414 Say Y here if you want the debug print routines to direct
1415 their output to the EmbeddedICE macrocell's DCC channel using
1416 co-processor 14. This is known to work on the ARM9 style ICE
1417 channel and on the XScale with the PEEDI.
1419 Note that the system will appear to hang during boot if there
1420 is nothing connected to read from the DCC.
1422 config DEBUG_SEMIHOSTING
1423 bool "Kernel low-level debug output via semihosting I/O"
1425 Semihosting enables code running on an ARM target to use
1426 the I/O facilities on a host debugger/emulator through a
1427 simple SVC call. The host debugger or emulator must have
1428 semihosting enabled for the special svc call to be trapped
1429 otherwise the kernel will crash.
1431 This is known to work with OpenOCD, as well as
1432 ARM's Fast Models, or any other controlling environment
1433 that implements semihosting.
1435 For more details about semihosting, please see
1436 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1438 config DEBUG_LL_UART_8250
1439 bool "Kernel low-level debugging via 8250 UART"
1441 Say Y here if you wish the debug print routes to direct
1442 their output to an 8250 UART. You can use this option
1443 to provide the parameters for the 8250 UART rather than
1444 selecting one of the platform specific options above if
1445 you know the parameters for the port.
1447 This option is preferred over the platform specific
1448 options; the platform specific options are deprecated
1449 and will be soon removed.
1451 config DEBUG_LL_UART_EFM32
1452 bool "Kernel low-level debugging via efm32 UART"
1453 depends on ARCH_EFM32
1455 Say Y here if you want the debug print routines to direct
1456 their output to an UART or USART port on efm32 based
1457 machines. Use the following addresses for DEBUG_UART_PHYS:
1465 config DEBUG_LL_UART_PL01X
1466 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1468 Say Y here if you wish the debug print routes to direct
1469 their output to a PL01x Primecell UART. You can use
1470 this option to provide the parameters for the UART
1471 rather than selecting one of the platform specific
1472 options above if you know the parameters for the port.
1474 This option is preferred over the platform specific
1475 options; the platform specific options are deprecated
1476 and will be soon removed.
1480 config DEBUG_AT91_UART
1482 depends on ARCH_AT91
1484 config DEBUG_EXYNOS_UART
1487 config DEBUG_S3C2410_UART
1489 select DEBUG_S3C24XX_UART
1491 config DEBUG_S3C24XX_UART
1494 config DEBUG_S3C64XX_UART
1497 config DEBUG_S5PV210_UART
1500 config DEBUG_OMAP2PLUS_UART
1502 depends on ARCH_OMAP2PLUS
1504 config DEBUG_IMX_UART_PORT
1505 int "i.MX Debug UART Port Selection"
1506 depends on DEBUG_IMX1_UART || \
1507 DEBUG_IMX25_UART || \
1508 DEBUG_IMX21_IMX27_UART || \
1509 DEBUG_IMX31_UART || \
1510 DEBUG_IMX35_UART || \
1511 DEBUG_IMX50_UART || \
1512 DEBUG_IMX51_UART || \
1513 DEBUG_IMX53_UART || \
1514 DEBUG_IMX6Q_UART || \
1515 DEBUG_IMX6SL_UART || \
1516 DEBUG_IMX6SX_UART || \
1517 DEBUG_IMX6UL_UART || \
1521 Choose UART port on which kernel low-level debug messages
1524 config DEBUG_VF_UART_PORT
1525 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1528 depends on SOC_VF610
1530 Choose UART port on which kernel low-level debug messages
1533 config DEBUG_TEGRA_UART
1535 depends on ARCH_TEGRA
1537 config DEBUG_STI_UART
1541 config DEBUG_STM32_UART
1543 depends on ARCH_STM32
1545 config DEBUG_SIRFSOC_UART
1547 depends on ARCH_SIRF
1549 config DEBUG_LL_INCLUDE
1551 default "debug/sa1100.S" if DEBUG_SA1100
1552 default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
1553 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
1554 default "debug/at91.S" if DEBUG_AT91_UART
1555 default "debug/asm9260.S" if DEBUG_ASM9260_UART
1556 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1557 default "debug/dc21285.S" if DEBUG_DC21285_PORT
1558 default "debug/meson.S" if DEBUG_MESON_UARTAO
1559 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1560 default "debug/exynos.S" if DEBUG_EXYNOS_UART
1561 default "debug/efm32.S" if DEBUG_LL_UART_EFM32
1562 default "debug/icedcc.S" if DEBUG_ICEDCC
1563 default "debug/imx.S" if DEBUG_IMX1_UART || \
1564 DEBUG_IMX25_UART || \
1565 DEBUG_IMX21_IMX27_UART || \
1566 DEBUG_IMX31_UART || \
1567 DEBUG_IMX35_UART || \
1568 DEBUG_IMX50_UART || \
1569 DEBUG_IMX51_UART || \
1570 DEBUG_IMX53_UART ||\
1571 DEBUG_IMX6Q_UART || \
1572 DEBUG_IMX6SL_UART || \
1573 DEBUG_IMX6SX_UART || \
1574 DEBUG_IMX6UL_UART || \
1576 default "debug/msm.S" if DEBUG_QCOM_UARTDM
1577 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
1578 default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
1579 default "debug/renesas-scif.S" if DEBUG_R7S9210_SCIF2
1580 default "debug/renesas-scif.S" if DEBUG_R7S9210_SCIF4
1581 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
1582 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
1583 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
1584 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF1
1585 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
1586 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4
1587 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIFA2
1588 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
1589 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
1590 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
1591 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
1592 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
1593 default "debug/sirf.S" if DEBUG_SIRFSOC_UART
1594 default "debug/sti.S" if DEBUG_STI_UART
1595 default "debug/stm32.S" if DEBUG_STM32_UART
1596 default "debug/tegra.S" if DEBUG_TEGRA_UART
1597 default "debug/ux500.S" if DEBUG_UX500_UART
1598 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1599 default "debug/vf.S" if DEBUG_VF_UART
1600 default "debug/vt8500.S" if DEBUG_VT8500_UART0
1601 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1602 default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
1603 default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
1604 default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
1605 default "mach/debug-macro.S"
1607 # Compatibility options for PL01x
1608 config DEBUG_UART_PL01X
1611 # Compatibility options for 8250
1612 config DEBUG_UART_8250
1613 def_bool ARCH_EBSA110 || ARCH_IOP32X || ARCH_IXP4XX || ARCH_RPC
1615 config DEBUG_UART_PHYS
1616 hex "Physical base address of debug UART"
1617 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1618 default 0x01c28000 if DEBUG_SUNXI_UART0
1619 default 0x01c28400 if DEBUG_SUNXI_UART1
1620 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1621 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1622 default 0x01f02800 if DEBUG_SUNXI_R_UART
1623 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1624 default 0x02531000 if DEBUG_KEYSTONE_UART1
1625 default 0x03010fe0 if ARCH_RPC
1626 default 0x07000000 if DEBUG_SUN9I_UART0
1627 default 0x09405000 if DEBUG_ZTE_ZX
1628 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
1629 DEBUG_VEXPRESS_UART0_CA9
1630 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1631 default 0x10124000 if DEBUG_RK3X_UART0
1632 default 0x10126000 if DEBUG_RK3X_UART1
1633 default 0x101f1000 if DEBUG_VERSATILE
1634 default 0x101fb000 if DEBUG_NOMADIK_UART
1635 default 0x10210000 if DEBUG_RV1108_UART2
1636 default 0x10220000 if DEBUG_RV1108_UART1
1637 default 0x10230000 if DEBUG_RV1108_UART0
1638 default 0x11002000 if DEBUG_MT8127_UART0
1639 default 0x11006000 if DEBUG_MT6589_UART0
1640 default 0x11009000 if DEBUG_MT8135_UART3
1641 default 0x16000000 if DEBUG_INTEGRATOR
1642 default 0x18000300 if DEBUG_BCM_5301X
1643 default 0x18000400 if DEBUG_BCM_HR2
1644 default 0x18010000 if DEBUG_SIRFATLAS7_UART0
1645 default 0x18020000 if DEBUG_SIRFATLAS7_UART1
1646 default 0x18023000 if DEBUG_BCM_IPROC_UART3
1647 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
1648 default 0x20001000 if DEBUG_HIP01_UART
1649 default 0x20060000 if DEBUG_RK29_UART0
1650 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1651 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1652 default 0x20201000 if DEBUG_BCM2835
1653 default 0x3e000000 if DEBUG_BCM_KONA_UART
1654 default 0x3f201000 if DEBUG_BCM2836
1655 default 0x4000e400 if DEBUG_LL_UART_EFM32
1656 default 0x40010000 if STM32MP1_DEBUG_UART
1657 default 0x40011000 if STM32F4_DEBUG_UART || STM32F7_DEBUG_UART || \
1659 default 0x40028000 if DEBUG_AT91_SAMV7_USART1
1660 default 0x40081000 if DEBUG_LPC18XX_UART0
1661 default 0x40090000 if DEBUG_LPC32XX
1662 default 0x40100000 if DEBUG_PXA_UART1
1663 default 0x42000000 if DEBUG_GEMINI
1664 default 0x44e09000 if DEBUG_AM33XXUART1
1665 default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1666 default 0x48022000 if DEBUG_TI81XXUART2
1667 default 0x48024000 if DEBUG_TI81XXUART3
1668 default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1669 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1670 default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1671 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1672 default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1673 default 0x49020000 if DEBUG_OMAP3UART3
1674 default 0x49042000 if DEBUG_OMAP3UART4
1675 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1676 DEBUG_S3C2410_UART0)
1677 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1678 DEBUG_S3C2410_UART1)
1679 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1680 DEBUG_S3C2410_UART2)
1681 default 0x78000000 if DEBUG_CNS3XXX
1682 default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
1683 default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1684 default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1685 default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1686 default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1687 default 0x80010000 if DEBUG_ASM9260_UART
1688 default 0x80070000 if DEBUG_IMX23_UART
1689 default 0x80074000 if DEBUG_IMX28_UART
1690 default 0x80230000 if DEBUG_PICOXCELL_UART
1691 default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
1692 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1693 default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
1694 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1695 default 0xc0013000 if DEBUG_U300_UART
1696 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1697 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1698 default 0xd0000000 if DEBUG_SPEAR3XX
1699 default 0xd0012000 if DEBUG_MVEBU_UART0
1700 default 0xc81004c0 if DEBUG_MESON_UARTAO
1701 default 0xd4017000 if DEBUG_MMP_UART2
1702 default 0xd4018000 if DEBUG_MMP_UART3
1703 default 0xe0000000 if DEBUG_SPEAR13XX
1704 default 0xe4007000 if DEBUG_HIP04_UART
1705 default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
1706 default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
1707 default 0xe6c60000 if DEBUG_RCAR_GEN2_SCIFA2
1708 default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
1709 default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
1710 default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
1711 default 0xe6e68000 if DEBUG_RCAR_GEN2_SCIF1
1712 default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4
1713 default 0xe8008000 if DEBUG_R7S72100_SCIF2 || DEBUG_R7S9210_SCIF2
1714 default 0xe8009000 if DEBUG_R7S9210_SCIF4
1715 default 0xf0000000 if DEBUG_DIGICOLOR_UA0
1716 default 0xf0000be0 if ARCH_EBSA110
1717 default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1718 default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1719 default 0xf7fc9000 if DEBUG_BERLIN_UART
1720 default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
1721 default 0xf8b00000 if DEBUG_HIX5HD2_UART
1722 default 0xf991e000 if DEBUG_QCOM_UARTDM
1723 default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
1724 default 0xfcb00000 if DEBUG_HI3620_UART
1725 default 0xfd883000 if DEBUG_ALPINE_UART0
1726 default 0xfe800000 if ARCH_IOP32X
1727 default 0xff690000 if DEBUG_RK32_UART2
1728 default 0xffc02000 if DEBUG_SOCFPGA_UART0
1729 default 0xffc02100 if DEBUG_SOCFPGA_ARRIA10_UART1
1730 default 0xffc03000 if DEBUG_SOCFPGA_CYCLONE5_UART1
1731 default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
1732 default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
1733 default 0xfff36000 if DEBUG_HIGHBANK_UART
1734 default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1735 default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1736 default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1737 default 0xfffe8600 if DEBUG_BCM63XX_UART
1738 default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
1739 default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
1740 depends on ARCH_EP93XX || \
1741 DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1742 DEBUG_LL_UART_EFM32 || \
1743 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1744 DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
1745 DEBUG_R7S9210_SCIF2 || DEBUG_R7S9210_SCIF4 || \
1746 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
1747 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF1 || \
1748 DEBUG_RCAR_GEN2_SCIF2 || DEBUG_RCAR_GEN2_SCIF4 || \
1749 DEBUG_RCAR_GEN2_SCIFA2 || \
1750 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
1751 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
1752 DEBUG_S3C64XX_UART || \
1753 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1754 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1755 DEBUG_AT91_UART || DEBUG_STM32_UART
1757 config DEBUG_UART_VIRT
1758 hex "Virtual base address of debug UART"
1759 default 0xc881f000 if DEBUG_RV1108_UART2
1760 default 0xc8821000 if DEBUG_RV1108_UART1
1761 default 0xc8912000 if DEBUG_RV1108_UART0
1762 default 0xe0010fe0 if ARCH_RPC
1763 default 0xf0000be0 if ARCH_EBSA110
1764 default 0xf0010000 if DEBUG_ASM9260_UART
1765 default 0xf0100000 if DEBUG_DIGICOLOR_UA0
1766 default 0xf01fb000 if DEBUG_NOMADIK_UART
1767 default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
1768 default 0xf1000300 if DEBUG_BCM_5301X
1769 default 0xf1000400 if DEBUG_BCM_HR2
1770 default 0xf1002000 if DEBUG_MT8127_UART0
1771 default 0xf1006000 if DEBUG_MT6589_UART0
1772 default 0xf1009000 if DEBUG_MT8135_UART3
1773 default 0xf1023000 if DEBUG_BCM_IPROC_UART3
1774 default 0xf11f1000 if DEBUG_VERSATILE
1775 default 0xf1600000 if DEBUG_INTEGRATOR
1776 default 0xf1c28000 if DEBUG_SUNXI_UART0
1777 default 0xf1c28400 if DEBUG_SUNXI_UART1
1778 default 0xf1f02800 if DEBUG_SUNXI_R_UART
1779 default 0xf31004c0 if DEBUG_MESON_UARTAO
1780 default 0xf4090000 if DEBUG_LPC32XX
1781 default 0xf4200000 if DEBUG_GEMINI
1782 default 0xf6200000 if DEBUG_PXA_UART1
1783 default 0xf7000000 if DEBUG_SUN9I_UART0
1784 default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1785 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1786 DEBUG_S3C2410_UART0)
1787 default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1788 default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1789 default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1790 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1791 DEBUG_S3C2410_UART1)
1792 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1793 DEBUG_S3C2410_UART2)
1794 default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
1795 default 0xf7fc9000 if DEBUG_BERLIN_UART
1796 default 0xf8007000 if DEBUG_HIP04_UART
1797 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1798 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
1799 default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
1800 default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
1801 default 0xf9e09000 if DEBUG_AM33XXUART1
1802 default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1803 default 0xfa022000 if DEBUG_TI81XXUART2
1804 default 0xfa024000 if DEBUG_TI81XXUART3
1805 default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1806 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1807 default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1808 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1809 default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1810 default 0xfa71e000 if DEBUG_QCOM_UARTDM
1811 default 0xfb002000 if DEBUG_CNS3XXX
1812 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1813 default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
1814 default 0xfb020000 if DEBUG_OMAP3UART3
1815 default 0xfb042000 if DEBUG_OMAP3UART4
1816 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
1817 default 0xfc705000 if DEBUG_ZTE_ZX
1818 default 0xfcfe8600 if DEBUG_BCM63XX_UART
1819 default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
1820 default 0xfd883000 if DEBUG_ALPINE_UART0
1821 default 0xfe010000 if STM32MP1_DEBUG_UART
1822 default 0xfe017000 if DEBUG_MMP_UART2
1823 default 0xfe018000 if DEBUG_MMP_UART3
1824 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
1825 default 0xfe230000 if DEBUG_PICOXCELL_UART
1826 default 0xfe300000 if DEBUG_BCM_KONA_UART
1827 default 0xfe800000 if ARCH_IOP32X
1828 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1829 default 0xfeb24000 if DEBUG_RK3X_UART0
1830 default 0xfeb26000 if DEBUG_RK3X_UART1
1831 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1832 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1833 default 0xfec02000 if DEBUG_SOCFPGA_UART0
1834 default 0xfec02100 if DEBUG_SOCFPGA_ARRIA10_UART1
1835 default 0xfec03000 if DEBUG_SOCFPGA_CYCLONE5_UART1
1836 default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
1837 default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
1838 default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
1839 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
1840 default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
1841 default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
1842 default 0xfec90000 if DEBUG_RK32_UART2
1843 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1844 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1845 default 0xfed60000 if DEBUG_RK29_UART0
1846 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1847 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1848 default 0xfedc0000 if DEBUG_EP93XX
1849 default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
1850 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1851 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1852 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1853 default 0xfef36000 if DEBUG_HIGHBANK_UART
1854 default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1855 default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1856 default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1857 default 0xff003000 if DEBUG_U300_UART
1858 default 0xffd01000 if DEBUG_HIP01_UART
1859 default DEBUG_UART_PHYS if !MMU
1860 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1861 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1862 DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1863 DEBUG_S3C64XX_UART || \
1864 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1865 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1866 DEBUG_AT91_UART || DEBUG_STM32_UART
1868 config DEBUG_UART_8250_SHIFT
1869 int "Register offset shift for the 8250 debug UART"
1870 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1871 default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
1872 DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
1876 config DEBUG_UART_8250_WORD
1877 bool "Use 32-bit accesses for 8250 UART"
1878 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1879 depends on DEBUG_UART_8250_SHIFT >= 2
1880 default y if DEBUG_PICOXCELL_UART || \
1881 DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_ARRIA10_UART1 || \
1882 DEBUG_SOCFPGA_CYCLONE5_UART1 || DEBUG_KEYSTONE_UART0 || \
1883 DEBUG_KEYSTONE_UART1 || DEBUG_ALPINE_UART0 || \
1884 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
1885 DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
1886 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
1888 config DEBUG_UART_8250_PALMCHIP
1889 bool "8250 UART is Palmchip BK-310x"
1890 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1892 Palmchip provides a UART implementation compatible with 16550
1893 except for having a different register layout. Say Y here if
1894 the debug UART is of this type.
1896 config DEBUG_UART_8250_FLOW_CONTROL
1897 bool "Enable flow control for 8250 UART"
1898 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1899 default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
1901 config DEBUG_UNCOMPRESS
1902 bool "Enable decompressor debugging via DEBUG_LL output"
1903 depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1904 depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1905 (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
1908 This option influences the normal decompressor output for
1909 multiplatform kernels. Normally, multiplatform kernels disable
1910 decompressor output because it is not possible to know where to
1911 send the decompressor output.
1913 When this option is set, the selected DEBUG_LL output method
1914 will be re-used for normal decompressor output on multiplatform
1918 config UNCOMPRESS_INCLUDE
1920 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
1921 PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1922 default "mach/uncompress.h"
1928 Say Y here if you want to have an early console using the
1929 kernel low-level debugging functions. Add earlyprintk to your
1930 kernel parameters to enable this console.
1932 config ARM_KPROBES_TEST
1933 tristate "Kprobes test module"
1934 depends on KPROBES && MODULES
1936 Perform tests of kprobes API and instruction set simulation.
1938 config PID_IN_CONTEXTIDR
1939 bool "Write the current PID to the CONTEXTIDR register"
1940 depends on CPU_COPY_V6
1942 Enabling this option causes the kernel to write the current PID to
1943 the PROCID field of the CONTEXTIDR register, at the expense of some
1944 additional instructions during context switch. Say Y here only if you
1945 are planning to use hardware trace tools with this kernel.
1947 source "drivers/hwtracing/coresight/Kconfig"