3 source "lib/Kconfig.debug"
6 bool "Export kernel pagetable layout to userspace via debugfs"
7 depends on DEBUG_KERNEL
10 Say Y here if you want to show the kernel pagetable layout in a
11 debugfs file. This information is only useful for kernel developers
12 who are working in architecture specific areas of the kernel.
13 It is probably not a good idea to enable this feature in a production
18 bool "Filter access to /dev/mem"
21 If this option is disabled, you allow userspace (root) access to all
22 of memory, including kernel and userspace memory. Accidental
23 access to this is obviously disastrous, but specific access can
24 be used by people debugging the kernel.
26 If this option is switched on, the /dev/mem file only allows
27 userspace access to memory mapped peripherals.
31 # RMK wants arm kernels compiled with frame pointers or stack unwinding.
32 # If you know what you are doing and are willing to live without stack
33 # traces, you can get a slightly smaller kernel by setting this option to
34 # n, but then RMK will have to kill you ;).
37 depends on !THUMB2_KERNEL
38 default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
40 If you say N here, the resulting kernel will be slightly smaller and
41 faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
42 when a problem occurs with the kernel, the information that is
43 reported is severely limited.
46 bool "Enable stack unwinding support (EXPERIMENTAL)"
50 This option enables stack unwinding support in the kernel
51 using the information automatically generated by the
52 compiler. The resulting kernel image is slightly bigger but
53 the performance is not affected. Currently, this feature
54 only works with EABI compilers. If unsure say Y.
58 depends on FUNCTION_TRACER && FRAME_POINTER
62 bool "Verbose user fault messages"
64 When a user program crashes due to an exception, the kernel can
65 print a brief message explaining what the problem was. This is
66 sometimes helpful for debugging but serves no purpose on a
67 production system. Most people should say N here.
69 In addition, you need to pass user_debug=N on the kernel command
70 line to enable this feature. N consists of the sum of:
72 1 - undefined instruction events
74 4 - invalid data aborts
78 # These options are only for real kernel hackers who want to get their hands dirty.
80 bool "Kernel low-level debugging functions (read help!)"
81 depends on DEBUG_KERNEL
83 Say Y here to include definitions of printascii, printch, printhex
84 in the kernel. This is helpful if you are debugging code that
85 executes before the console is initialized.
87 Note that selecting this option will limit the kernel to a single
88 UART definition, as specified below. Attempting to boot the kernel
89 image on a different platform *will not work*, so this option should
90 not be enabled for kernels that are intended to be portable.
93 prompt "Kernel low-level debugging port"
96 config AT91_DEBUG_LL_DBGU0
97 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl"
98 depends on HAVE_AT91_DBGU0
100 config AT91_DEBUG_LL_DBGU1
101 bool "Kernel low-level debugging on 9263 and 9g45"
102 depends on HAVE_AT91_DBGU1
104 config AT91_DEBUG_LL_DBGU2
105 bool "Kernel low-level debugging on sama5d4"
106 depends on HAVE_AT91_DBGU2
109 bool "Kernel low-level debugging on BCM2835 PL011 UART"
110 depends on ARCH_BCM2835
111 select DEBUG_UART_PL01X
113 config DEBUG_BCM_5301X
114 bool "Kernel low-level debugging on BCM5301X UART1"
115 depends on ARCH_BCM_5301X
116 select DEBUG_UART_PL01X
118 config DEBUG_BCM_KONA_UART
119 bool "Kernel low-level debugging messages via BCM KONA UART"
120 depends on ARCH_BCM_MOBILE
121 select DEBUG_UART_8250
123 Say Y here if you want kernel low-level debugging support
124 on Broadcom SoC platforms.
125 This low level debug works for Broadcom
126 mobile SoCs in the Kona family of chips (e.g. bcm28155,
130 bool "Kernel low-level debugging on BCM63XX UART"
131 depends on ARCH_BCM_63XX
132 select DEBUG_UART_BCM63XX
134 config DEBUG_BERLIN_UART
135 bool "Marvell Berlin SoC Debug UART"
136 depends on ARCH_BERLIN
137 select DEBUG_UART_8250
139 Say Y here if you want kernel low-level debugging support
140 on Marvell Berlin SoC based platforms.
142 config DEBUG_CLPS711X_UART1
143 bool "Kernel low-level debugging messages via UART1"
144 depends on ARCH_CLPS711X
146 Say Y here if you want the debug print routines to direct
147 their output to the first serial port on these devices.
149 config DEBUG_CLPS711X_UART2
150 bool "Kernel low-level debugging messages via UART2"
151 depends on ARCH_CLPS711X
153 Say Y here if you want the debug print routines to direct
154 their output to the second serial port on these devices.
157 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
158 depends on ARCH_CNS3XXX
159 select DEBUG_UART_8250
161 Say Y here if you want the debug print routines to direct
162 their output to the CNS3xxx UART0.
164 config DEBUG_DAVINCI_DA8XX_UART1
165 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
166 depends on ARCH_DAVINCI_DA8XX
167 select DEBUG_UART_8250
169 Say Y here if you want the debug print routines to direct
170 their output to UART1 serial port on DaVinci DA8XX devices.
172 config DEBUG_DAVINCI_DA8XX_UART2
173 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
174 depends on ARCH_DAVINCI_DA8XX
175 select DEBUG_UART_8250
177 Say Y here if you want the debug print routines to direct
178 their output to UART2 serial port on DaVinci DA8XX devices.
180 config DEBUG_DAVINCI_DMx_UART0
181 bool "Kernel low-level debugging on DaVinci DMx using UART0"
182 depends on ARCH_DAVINCI_DMx
183 select DEBUG_UART_8250
185 Say Y here if you want the debug print routines to direct
186 their output to UART0 serial port on DaVinci DMx devices.
188 config DEBUG_ZYNQ_UART0
189 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
192 Say Y here if you want the debug print routines to direct
193 their output to UART0 on the Zynq platform.
195 config DEBUG_ZYNQ_UART1
196 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
199 Say Y here if you want the debug print routines to direct
200 their output to UART1 on the Zynq platform.
202 If you have a ZC702 board and want early boot messages to
203 appear on the USB serial adaptor, select this option.
205 config DEBUG_DC21285_PORT
206 bool "Kernel low-level debugging messages via footbridge serial port"
207 depends on FOOTBRIDGE
209 Say Y here if you want the debug print routines to direct
210 their output to the serial port in the DC21285 (Footbridge).
212 config DEBUG_FOOTBRIDGE_COM1
213 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
214 depends on FOOTBRIDGE
216 Say Y here if you want the debug print routines to direct
217 their output to the 8250 at PCI COM1.
219 config DEBUG_HI3620_UART
220 bool "Hisilicon HI3620 Debug UART"
221 depends on ARCH_HI3xxx
222 select DEBUG_UART_PL01X
224 Say Y here if you want kernel low-level debugging support
227 config DEBUG_HI3716_UART
228 bool "Hisilicon Hi3716 Debug UART"
229 depends on ARCH_HI3xxx
230 select DEBUG_UART_PL01X
232 Say Y here if you want kernel low-level debugging support
235 config DEBUG_HIGHBANK_UART
236 bool "Kernel low-level debugging messages via Highbank UART"
237 depends on ARCH_HIGHBANK
238 select DEBUG_UART_PL01X
240 Say Y here if you want the debug print routines to direct
241 their output to the UART on Highbank based devices.
243 config DEBUG_HIP04_UART
244 bool "Hisilicon HiP04 Debug UART"
245 depends on ARCH_HIP04
246 select DEBUG_UART_8250
248 Say Y here if you want kernel low-level debugging support
251 config DEBUG_HIX5HD2_UART
252 bool "Hisilicon Hix5hd2 Debug UART"
253 depends on ARCH_HIX5HD2
254 select DEBUG_UART_PL01X
256 Say Y here if you want kernel low-level debugging support
259 config DEBUG_IMX1_UART
260 bool "i.MX1 Debug UART"
263 Say Y here if you want kernel low-level debugging support
266 config DEBUG_IMX23_UART
267 bool "i.MX23 Debug UART"
269 select DEBUG_UART_PL01X
271 Say Y here if you want kernel low-level debugging support
274 config DEBUG_IMX25_UART
275 bool "i.MX25 Debug UART"
278 Say Y here if you want kernel low-level debugging support
281 config DEBUG_IMX21_IMX27_UART
282 bool "i.MX21 and i.MX27 Debug UART"
283 depends on SOC_IMX21 || SOC_IMX27
285 Say Y here if you want kernel low-level debugging support
288 config DEBUG_IMX28_UART
289 bool "i.MX28 Debug UART"
291 select DEBUG_UART_PL01X
293 Say Y here if you want kernel low-level debugging support
296 config DEBUG_IMX31_UART
297 bool "i.MX31 Debug UART"
300 Say Y here if you want kernel low-level debugging support
303 config DEBUG_IMX35_UART
304 bool "i.MX35 Debug UART"
307 Say Y here if you want kernel low-level debugging support
310 config DEBUG_IMX50_UART
311 bool "i.MX50 Debug UART"
314 Say Y here if you want kernel low-level debugging support
317 config DEBUG_IMX51_UART
318 bool "i.MX51 Debug UART"
321 Say Y here if you want kernel low-level debugging support
324 config DEBUG_IMX53_UART
325 bool "i.MX53 Debug UART"
328 Say Y here if you want kernel low-level debugging support
331 config DEBUG_IMX6Q_UART
332 bool "i.MX6Q/DL Debug UART"
335 Say Y here if you want kernel low-level debugging support
338 config DEBUG_IMX6SL_UART
339 bool "i.MX6SL Debug UART"
340 depends on SOC_IMX6SL
342 Say Y here if you want kernel low-level debugging support
345 config DEBUG_IMX6SX_UART
346 bool "i.MX6SX Debug UART"
347 depends on SOC_IMX6SX
349 Say Y here if you want kernel low-level debugging support
352 config DEBUG_KEYSTONE_UART0
353 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
354 depends on ARCH_KEYSTONE
355 select DEBUG_UART_8250
357 Say Y here if you want the debug print routines to direct
358 their output to UART0 serial port on KEYSTONE2 devices.
360 config DEBUG_KEYSTONE_UART1
361 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
362 depends on ARCH_KEYSTONE
363 select DEBUG_UART_8250
365 Say Y here if you want the debug print routines to direct
366 their output to UART1 serial port on KEYSTONE2 devices.
368 config DEBUG_MESON_UARTAO
369 bool "Kernel low-level debugging via Meson6 UARTAO"
370 depends on ARCH_MESON
372 Say Y here if you want kernel low-lever debugging support
373 on Amlogic Meson6 based platforms on the UARTAO.
375 config DEBUG_MMP_UART2
376 bool "Kernel low-level debugging message via MMP UART2"
378 select DEBUG_UART_8250
380 Say Y here if you want kernel low-level debugging support
383 config DEBUG_MMP_UART3
384 bool "Kernel low-level debugging message via MMP UART3"
386 select DEBUG_UART_8250
388 Say Y here if you want kernel low-level debugging support
391 config DEBUG_MSM_UART
392 bool "Kernel low-level debugging messages via MSM UART"
395 Say Y here if you want the debug print routines to direct
396 their output to the serial port on MSM devices.
398 ARCH DEBUG_UART_PHYS DEBUG_UART_BASE #
399 MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1
400 MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2
401 MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3
403 MSM7X30 0xaca00000 0xe1000000 UART1
404 MSM7X30 0xacb00000 0xe1000000 UART2
405 MSM7X30 0xacc00000 0xe1000000 UART3
407 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
408 options based on your needs.
410 config DEBUG_QCOM_UARTDM
411 bool "Kernel low-level debugging messages via QCOM UARTDM"
414 Say Y here if you want the debug print routines to direct
415 their output to the serial port on Qualcomm devices.
417 ARCH DEBUG_UART_PHYS DEBUG_UART_BASE
418 APQ8084 0xf995e000 0xfa75e000
419 MSM8X60 0x19c40000 0xf0040000
420 MSM8960 0x16440000 0xf0040000
421 MSM8974 0xf991e000 0xfa71e000
423 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
424 options based on your needs.
426 config DEBUG_MVEBU_UART
427 bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
428 depends on ARCH_MVEBU
429 select DEBUG_UART_8250
431 Say Y here if you want kernel low-level debugging support
432 on MVEBU based platforms.
434 This option should be used with the old bootloaders
435 that left the internal registers mapped at
436 0xd0000000. As of today, this is the case on
437 platforms such as the Globalscale Mirabox or the
438 Plathome OpenBlocks AX3, when using the original
441 If the wrong DEBUG_MVEBU_UART* option is selected,
442 when u-boot hands over to the kernel, the system
443 silently crashes, with no serial output at all.
445 config DEBUG_MVEBU_UART_ALTERNATE
446 bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
447 depends on ARCH_MVEBU
448 select DEBUG_UART_8250
450 Say Y here if you want kernel low-level debugging support
451 on MVEBU based platforms.
453 This option should be used with the new bootloaders
454 that remap the internal registers at 0xf1000000.
456 If the wrong DEBUG_MVEBU_UART* option is selected,
457 when u-boot hands over to the kernel, the system
458 silently crashes, with no serial output at all.
464 Say Y here if you want kernel low-level debugging support
465 on Vybrid based platforms.
467 config DEBUG_NOMADIK_UART
468 bool "Kernel low-level debugging messages via NOMADIK UART"
469 depends on ARCH_NOMADIK
470 select DEBUG_UART_PL01X
472 Say Y here if you want kernel low-level debugging support
473 on NOMADIK based platforms.
475 config DEBUG_NSPIRE_CLASSIC_UART
476 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
477 depends on ARCH_NSPIRE
478 select DEBUG_UART_8250
480 Say Y here if you want kernel low-level debugging support
481 on TI-NSPIRE classic models.
483 config DEBUG_NSPIRE_CX_UART
484 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
485 depends on ARCH_NSPIRE
486 select DEBUG_UART_PL01X
488 Say Y here if you want kernel low-level debugging support
489 on TI-NSPIRE CX models.
491 config DEBUG_OMAP2UART1
492 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
493 depends on ARCH_OMAP2PLUS
494 select DEBUG_OMAP2PLUS_UART
496 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
497 omap3 torpedo and 3530 lv som.
499 config DEBUG_OMAP2UART2
500 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
501 depends on ARCH_OMAP2PLUS
502 select DEBUG_OMAP2PLUS_UART
504 config DEBUG_OMAP2UART3
505 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
506 depends on ARCH_OMAP2PLUS
507 select DEBUG_OMAP2PLUS_UART
509 config DEBUG_OMAP3UART3
510 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
511 depends on ARCH_OMAP2PLUS
512 select DEBUG_OMAP2PLUS_UART
514 This covers at least cm_t3x, beagle, crane, devkit8000,
515 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
518 config DEBUG_OMAP4UART3
519 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
520 depends on ARCH_OMAP2PLUS
521 select DEBUG_OMAP2PLUS_UART
523 config DEBUG_OMAP3UART4
524 bool "Kernel low-level debugging messages via OMAP36XX UART4"
525 depends on ARCH_OMAP2PLUS
526 select DEBUG_OMAP2PLUS_UART
528 config DEBUG_OMAP4UART4
529 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
530 depends on ARCH_OMAP2PLUS
531 select DEBUG_OMAP2PLUS_UART
533 config DEBUG_TI81XXUART1
534 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
535 depends on ARCH_OMAP2PLUS
536 select DEBUG_OMAP2PLUS_UART
538 config DEBUG_TI81XXUART2
539 bool "Kernel low-level debugging messages via TI81XX UART2"
540 depends on ARCH_OMAP2PLUS
541 select DEBUG_OMAP2PLUS_UART
543 config DEBUG_TI81XXUART3
544 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
545 depends on ARCH_OMAP2PLUS
546 select DEBUG_OMAP2PLUS_UART
548 config DEBUG_AM33XXUART1
549 bool "Kernel low-level debugging messages via AM33XX UART1"
550 depends on ARCH_OMAP2PLUS
551 select DEBUG_OMAP2PLUS_UART
553 config DEBUG_ZOOM_UART
554 bool "Kernel low-level debugging messages via Zoom2/3 UART"
555 depends on ARCH_OMAP2PLUS
556 select DEBUG_OMAP2PLUS_UART
558 config DEBUG_PICOXCELL_UART
559 depends on ARCH_PICOXCELL
560 bool "Use PicoXcell UART for low-level debug"
561 select DEBUG_UART_8250
563 Say Y here if you want kernel low-level debugging support
564 on PicoXcell based platforms.
566 config DEBUG_PXA_UART1
568 bool "Use PXA UART1 for low-level debug"
569 select DEBUG_UART_8250
571 Say Y here if you want kernel low-level debugging support
574 config DEBUG_REALVIEW_STD_PORT
575 bool "RealView Default UART"
576 depends on ARCH_REALVIEW
577 select DEBUG_UART_PL01X
579 Say Y here if you want the debug print routines to direct
580 their output to the serial port on RealView EB, PB11MP, PBA8
583 config DEBUG_REALVIEW_PB1176_PORT
584 bool "RealView PB1176 UART"
585 depends on MACH_REALVIEW_PB1176
586 select DEBUG_UART_PL01X
588 Say Y here if you want the debug print routines to direct
589 their output to the standard serial port on the RealView
592 config DEBUG_RK29_UART0
593 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
594 depends on ARCH_ROCKCHIP
595 select DEBUG_UART_8250
597 Say Y here if you want kernel low-level debugging support
598 on Rockchip based platforms.
600 config DEBUG_RK29_UART1
601 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
602 depends on ARCH_ROCKCHIP
603 select DEBUG_UART_8250
605 Say Y here if you want kernel low-level debugging support
606 on Rockchip based platforms.
608 config DEBUG_RK29_UART2
609 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
610 depends on ARCH_ROCKCHIP
611 select DEBUG_UART_8250
613 Say Y here if you want kernel low-level debugging support
614 on Rockchip based platforms.
616 config DEBUG_RK3X_UART0
617 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
618 depends on ARCH_ROCKCHIP
619 select DEBUG_UART_8250
621 Say Y here if you want kernel low-level debugging support
622 on Rockchip based platforms.
624 config DEBUG_RK3X_UART1
625 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
626 depends on ARCH_ROCKCHIP
627 select DEBUG_UART_8250
629 Say Y here if you want kernel low-level debugging support
630 on Rockchip based platforms.
632 config DEBUG_RK3X_UART2
633 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
634 depends on ARCH_ROCKCHIP
635 select DEBUG_UART_8250
637 Say Y here if you want kernel low-level debugging support
638 on Rockchip based platforms.
640 config DEBUG_RK3X_UART3
641 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
642 depends on ARCH_ROCKCHIP
643 select DEBUG_UART_8250
645 Say Y here if you want kernel low-level debugging support
646 on Rockchip based platforms.
648 config DEBUG_RK32_UART2
649 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
650 depends on ARCH_ROCKCHIP
651 select DEBUG_UART_8250
653 Say Y here if you want kernel low-level debugging support
654 on Rockchip RK32xx based platforms.
656 config DEBUG_S3C_UART0
657 depends on PLAT_SAMSUNG
658 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
659 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
660 select DEBUG_S5PV210_UART if ARCH_S5PV210
661 bool "Use Samsung S3C UART 0 for low-level debug"
663 Say Y here if you want the debug print routines to direct
664 their output to UART 0. The port must have been initialised
665 by the boot-loader before use.
667 config DEBUG_S3C_UART1
668 depends on PLAT_SAMSUNG
669 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
670 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
671 select DEBUG_S5PV210_UART if ARCH_S5PV210
672 bool "Use Samsung S3C UART 1 for low-level debug"
674 Say Y here if you want the debug print routines to direct
675 their output to UART 1. The port must have been initialised
676 by the boot-loader before use.
678 config DEBUG_S3C_UART2
679 depends on PLAT_SAMSUNG
680 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
681 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
682 select DEBUG_S5PV210_UART if ARCH_S5PV210
683 bool "Use Samsung S3C UART 2 for low-level debug"
685 Say Y here if you want the debug print routines to direct
686 their output to UART 2. The port must have been initialised
687 by the boot-loader before use.
689 config DEBUG_S3C_UART3
690 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
691 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
692 select DEBUG_S5PV210_UART if ARCH_S5PV210
693 bool "Use Samsung S3C UART 3 for low-level debug"
695 Say Y here if you want the debug print routines to direct
696 their output to UART 3. The port must have been initialised
697 by the boot-loader before use.
699 config DEBUG_S3C2410_UART0
700 depends on ARCH_S3C24XX
701 select DEBUG_S3C2410_UART
702 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
704 Say Y here if you want the debug print routines to direct
705 their output to UART 0. The port must have been initialised
706 by the boot-loader before use.
708 config DEBUG_S3C2410_UART1
709 depends on ARCH_S3C24XX
710 select DEBUG_S3C2410_UART
711 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
713 Say Y here if you want the debug print routines to direct
714 their output to UART 1. The port must have been initialised
715 by the boot-loader before use.
717 config DEBUG_S3C2410_UART2
718 depends on ARCH_S3C24XX
719 select DEBUG_S3C2410_UART
720 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
722 Say Y here if you want the debug print routines to direct
723 their output to UART 2. The port must have been initialised
724 by the boot-loader before use.
726 config DEBUG_SOCFPGA_UART
727 depends on ARCH_SOCFPGA
728 bool "Use SOCFPGA UART for low-level debug"
729 select DEBUG_UART_8250
731 Say Y here if you want kernel low-level debugging support
732 on SOCFPGA based platforms.
734 config DEBUG_SUNXI_UART0
735 bool "Kernel low-level debugging messages via sunXi UART0"
736 depends on ARCH_SUNXI
737 select DEBUG_UART_8250
739 Say Y here if you want kernel low-level debugging support
740 on Allwinner A1X based platforms on the UART0.
742 config DEBUG_SUNXI_UART1
743 bool "Kernel low-level debugging messages via sunXi UART1"
744 depends on ARCH_SUNXI
745 select DEBUG_UART_8250
747 Say Y here if you want kernel low-level debugging support
748 on Allwinner A1X based platforms on the UART1.
750 config DEBUG_SUNXI_R_UART
751 bool "Kernel low-level debugging messages via sunXi R_UART"
752 depends on MACH_SUN6I || MACH_SUN8I
753 select DEBUG_UART_8250
755 Say Y here if you want kernel low-level debugging support
756 on Allwinner A31/A23 based platforms on the R_UART.
758 config TEGRA_DEBUG_UART_AUTO_ODMDATA
759 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
760 depends on ARCH_TEGRA
761 select DEBUG_TEGRA_UART
763 Automatically determines which UART to use for low-level
764 debug based on the ODMDATA value. This value is part of
765 the BCT, and is written to the boot memory device using
766 nvflash, or other flashing tool. When bits 19:18 are 3,
767 then bits 17:15 indicate which UART to use; 0/1/2/3/4
770 config TEGRA_DEBUG_UARTA
771 bool "Kernel low-level debugging messages via Tegra UART A"
772 depends on ARCH_TEGRA
773 select DEBUG_TEGRA_UART
775 Say Y here if you want kernel low-level debugging support
776 on Tegra based platforms.
778 config TEGRA_DEBUG_UARTB
779 bool "Kernel low-level debugging messages via Tegra UART B"
780 depends on ARCH_TEGRA
781 select DEBUG_TEGRA_UART
783 Say Y here if you want kernel low-level debugging support
784 on Tegra based platforms.
786 config TEGRA_DEBUG_UARTC
787 bool "Kernel low-level debugging messages via Tegra UART C"
788 depends on ARCH_TEGRA
789 select DEBUG_TEGRA_UART
791 Say Y here if you want kernel low-level debugging support
792 on Tegra based platforms.
794 config TEGRA_DEBUG_UARTD
795 bool "Kernel low-level debugging messages via Tegra UART D"
796 depends on ARCH_TEGRA
797 select DEBUG_TEGRA_UART
799 Say Y here if you want kernel low-level debugging support
800 on Tegra based platforms.
802 config TEGRA_DEBUG_UARTE
803 bool "Kernel low-level debugging messages via Tegra UART E"
804 depends on ARCH_TEGRA
805 select DEBUG_TEGRA_UART
807 Say Y here if you want kernel low-level debugging support
808 on Tegra based platforms.
810 config DEBUG_SIRFPRIMA2_UART1
811 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
812 depends on ARCH_PRIMA2
814 Say Y here if you want the debug print routines to direct
815 their output to the uart1 port on SiRFprimaII devices.
817 config DEBUG_SIRFMARCO_UART1
818 bool "Kernel low-level debugging messages via SiRFmarco UART1"
819 depends on ARCH_MARCO
821 Say Y here if you want the debug print routines to direct
822 their output to the uart1 port on SiRFmarco devices.
824 config STIH41X_DEBUG_ASC2
825 bool "Use StiH415/416 ASC2 UART for low-level debug"
827 select DEBUG_STI_UART
829 Say Y here if you want kernel low-level debugging support
830 on STiH415/416 based platforms like b2000, which has
831 default UART wired up to ASC2.
835 config STIH41X_DEBUG_SBC_ASC1
836 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
838 select DEBUG_STI_UART
840 Say Y here if you want kernel low-level debugging support
841 on STiH415/416 based platforms like b2020. which has
842 default UART wired up to SBC ASC1.
846 config DEBUG_U300_UART
847 bool "Kernel low-level debugging messages via U300 UART0"
849 select DEBUG_UART_PL01X
851 Say Y here if you want the debug print routines to direct
852 their output to the uart port on U300 devices.
854 config DEBUG_UX500_UART
855 depends on ARCH_U8500
856 bool "Use Ux500 UART for low-level debug"
858 Say Y here if you want kernel low-level debugging support
859 on Ux500 based platforms.
861 config DEBUG_MT6589_UART0
862 bool "Mediatek mt6589 UART0"
863 depends on ARCH_MEDIATEK
864 select DEBUG_UART_8250
866 Say Y here if you want kernel low-level debugging support
867 for Mediatek mt6589 based platforms on UART0.
869 config DEBUG_VEXPRESS_UART0_DETECT
870 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
871 depends on ARCH_VEXPRESS && CPU_CP15_MMU
873 This option enables a simple heuristic which tries to determine
874 the motherboard's memory map variant (original or RS1) and then
875 choose the relevant UART0 base address.
877 Note that this will only work with standard A-class core tiles,
878 and may fail with non-standard SMM or custom software models.
880 config DEBUG_VEXPRESS_UART0_CA9
881 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
882 depends on ARCH_VEXPRESS
883 select DEBUG_UART_PL01X
885 This option selects UART0 at 0x10009000. Except for custom models,
886 this applies only to the V2P-CA9 tile.
888 config DEBUG_VEXPRESS_UART0_RS1
889 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
890 depends on ARCH_VEXPRESS
891 select DEBUG_UART_PL01X
893 This option selects UART0 at 0x1c090000. This applies to most
894 of the tiles using the RS1 memory map, including all new A-class
895 core tiles, FPGA-based SMMs and software models.
897 config DEBUG_VEXPRESS_UART0_CRX
898 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
899 depends on ARCH_VEXPRESS && !MMU
900 select DEBUG_UART_PL01X
902 This option selects UART0 at 0xb0090000. This is appropriate for
903 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
905 config DEBUG_VT8500_UART0
906 bool "Use UART0 on VIA/Wondermedia SoCs"
907 depends on ARCH_VT8500
909 This option selects UART0 on VIA/Wondermedia System-on-a-chip
910 devices, including VT8500, WM8505, WM8650 and WM8850.
912 config DEBUG_LL_UART_NONE
913 bool "No low-level debugging UART"
914 depends on !ARCH_MULTIPLATFORM
916 Say Y here if your platform doesn't provide a UART option
917 above. This relies on your platform choosing the right UART
918 definition internally in order for low-level debugging to
922 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
924 Say Y here if you want the debug print routines to direct
925 their output to the EmbeddedICE macrocell's DCC channel using
926 co-processor 14. This is known to work on the ARM9 style ICE
927 channel and on the XScale with the PEEDI.
929 Note that the system will appear to hang during boot if there
930 is nothing connected to read from the DCC.
932 config DEBUG_SEMIHOSTING
933 bool "Kernel low-level debug output via semihosting I/O"
935 Semihosting enables code running on an ARM target to use
936 the I/O facilities on a host debugger/emulator through a
937 simple SVC call. The host debugger or emulator must have
938 semihosting enabled for the special svc call to be trapped
939 otherwise the kernel will crash.
941 This is known to work with OpenOCD, as well as
942 ARM's Fast Models, or any other controlling environment
943 that implements semihosting.
945 For more details about semihosting, please see
946 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
948 config DEBUG_LL_UART_8250
949 bool "Kernel low-level debugging via 8250 UART"
951 Say Y here if you wish the debug print routes to direct
952 their output to an 8250 UART. You can use this option
953 to provide the parameters for the 8250 UART rather than
954 selecting one of the platform specific options above if
955 you know the parameters for the port.
957 This option is preferred over the platform specific
958 options; the platform specific options are deprecated
959 and will be soon removed.
961 config DEBUG_LL_UART_EFM32
962 bool "Kernel low-level debugging via efm32 UART"
963 depends on ARCH_EFM32
965 Say Y here if you want the debug print routines to direct
966 their output to an UART or USART port on efm32 based
967 machines. Use the following addresses for DEBUG_UART_PHYS:
975 config DEBUG_LL_UART_PL01X
976 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
978 Say Y here if you wish the debug print routes to direct
979 their output to a PL01x Primecell UART. You can use
980 this option to provide the parameters for the UART
981 rather than selecting one of the platform specific
982 options above if you know the parameters for the port.
984 This option is preferred over the platform specific
985 options; the platform specific options are deprecated
986 and will be soon removed.
990 config DEBUG_EXYNOS_UART
993 config DEBUG_S3C2410_UART
995 select DEBUG_S3C24XX_UART
997 config DEBUG_S3C24XX_UART
1000 config DEBUG_S5PV210_UART
1003 config DEBUG_OMAP2PLUS_UART
1005 depends on ARCH_OMAP2PLUS
1007 config DEBUG_IMX_UART_PORT
1008 int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1009 DEBUG_IMX25_UART || \
1010 DEBUG_IMX21_IMX27_UART || \
1011 DEBUG_IMX31_UART || \
1012 DEBUG_IMX35_UART || \
1013 DEBUG_IMX50_UART || \
1014 DEBUG_IMX51_UART || \
1015 DEBUG_IMX53_UART || \
1016 DEBUG_IMX6Q_UART || \
1017 DEBUG_IMX6SL_UART || \
1022 Choose UART port on which kernel low-level debug messages
1025 config DEBUG_VF_UART_PORT
1026 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1029 depends on SOC_VF610
1031 Choose UART port on which kernel low-level debug messages
1034 config DEBUG_TEGRA_UART
1036 depends on ARCH_TEGRA
1038 config DEBUG_STI_UART
1042 config DEBUG_LL_INCLUDE
1044 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
1045 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1046 default "debug/meson.S" if DEBUG_MESON_UARTAO
1047 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1048 default "debug/exynos.S" if DEBUG_EXYNOS_UART
1049 default "debug/efm32.S" if DEBUG_LL_UART_EFM32
1050 default "debug/icedcc.S" if DEBUG_ICEDCC
1051 default "debug/imx.S" if DEBUG_IMX1_UART || \
1052 DEBUG_IMX25_UART || \
1053 DEBUG_IMX21_IMX27_UART || \
1054 DEBUG_IMX31_UART || \
1055 DEBUG_IMX35_UART || \
1056 DEBUG_IMX50_UART || \
1057 DEBUG_IMX51_UART || \
1058 DEBUG_IMX53_UART ||\
1059 DEBUG_IMX6Q_UART || \
1060 DEBUG_IMX6SL_UART || \
1062 default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
1063 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
1064 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
1065 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
1066 default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
1067 default "debug/sti.S" if DEBUG_STI_UART
1068 default "debug/tegra.S" if DEBUG_TEGRA_UART
1069 default "debug/ux500.S" if DEBUG_UX500_UART
1070 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1071 default "debug/vf.S" if DEBUG_VF_UART
1072 default "debug/vt8500.S" if DEBUG_VT8500_UART0
1073 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1074 default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
1075 default "mach/debug-macro.S"
1077 # Compatibility options for PL01x
1078 config DEBUG_UART_PL01X
1079 def_bool ARCH_EP93XX || \
1080 ARCH_INTEGRATOR || \
1086 # Compatibility options for 8250
1087 config DEBUG_UART_8250
1088 def_bool ARCH_DOVE || ARCH_EBSA110 || \
1089 (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
1090 ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
1091 ARCH_IOP33X || ARCH_IXP4XX || \
1092 ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
1094 # Compatibility options for BCM63xx
1095 config DEBUG_UART_BCM63XX
1096 def_bool ARCH_BCM_63XX
1098 config DEBUG_UART_PHYS
1099 hex "Physical base address of debug UART"
1100 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1101 default 0x01c28000 if DEBUG_SUNXI_UART0
1102 default 0x01c28400 if DEBUG_SUNXI_UART1
1103 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1104 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1105 default 0x01f02800 if DEBUG_SUNXI_R_UART
1106 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1107 default 0x02531000 if DEBUG_KEYSTONE_UART1
1108 default 0x03010fe0 if ARCH_RPC
1109 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
1110 DEBUG_VEXPRESS_UART0_CA9
1111 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1112 default 0x10124000 if DEBUG_RK3X_UART0
1113 default 0x10126000 if DEBUG_RK3X_UART1
1114 default 0x101f1000 if ARCH_VERSATILE
1115 default 0x101fb000 if DEBUG_NOMADIK_UART
1116 default 0x11006000 if DEBUG_MT6589_UART0
1117 default 0x16000000 if ARCH_INTEGRATOR
1118 default 0x18000300 if DEBUG_BCM_5301X
1119 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
1120 default 0x20060000 if DEBUG_RK29_UART0
1121 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1122 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1123 default 0x20201000 if DEBUG_BCM2835
1124 default 0x3e000000 if DEBUG_BCM_KONA_UART
1125 default 0x4000e400 if DEBUG_LL_UART_EFM32
1126 default 0x40090000 if ARCH_LPC32XX
1127 default 0x40100000 if DEBUG_PXA_UART1
1128 default 0x42000000 if ARCH_GEMINI
1129 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1130 DEBUG_S3C2410_UART0)
1131 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1132 DEBUG_S3C2410_UART1)
1133 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1134 DEBUG_S3C2410_UART2)
1135 default 0x78000000 if DEBUG_CNS3XXX
1136 default 0x7c0003f8 if FOOTBRIDGE
1137 default 0x78000000 if DEBUG_CNS3XXX
1138 default 0x80070000 if DEBUG_IMX23_UART
1139 default 0x80074000 if DEBUG_IMX28_UART
1140 default 0x80230000 if DEBUG_PICOXCELL_UART
1141 default 0x808c0000 if ARCH_EP93XX
1142 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1143 default 0xa9a00000 if DEBUG_MSM_UART
1144 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1145 default 0xc0013000 if DEBUG_U300_UART
1146 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1147 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1148 default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1149 default 0xd0012000 if DEBUG_MVEBU_UART
1150 default 0xc81004c0 if DEBUG_MESON_UARTAO
1151 default 0xd4017000 if DEBUG_MMP_UART2
1152 default 0xd4018000 if DEBUG_MMP_UART3
1153 default 0xe0000000 if ARCH_SPEAR13XX
1154 default 0xe4007000 if DEBUG_HIP04_UART
1155 default 0xf0000be0 if ARCH_EBSA110
1156 default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
1157 default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
1159 default 0xf7fc9000 if DEBUG_BERLIN_UART
1160 default 0xf8b00000 if DEBUG_HIX5HD2_UART
1161 default 0xf991e000 if DEBUG_QCOM_UARTDM
1162 default 0xfcb00000 if DEBUG_HI3620_UART
1163 default 0xfe800000 if ARCH_IOP32X
1164 default 0xff690000 if DEBUG_RK32_UART2
1165 default 0xffc02000 if DEBUG_SOCFPGA_UART
1166 default 0xffd82340 if ARCH_IOP13XX
1167 default 0xfff36000 if DEBUG_HIGHBANK_UART
1168 default 0xfffe8600 if DEBUG_UART_BCM63XX
1169 default 0xfffff700 if ARCH_IOP33X
1170 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1171 DEBUG_LL_UART_EFM32 || \
1172 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1173 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1176 config DEBUG_UART_VIRT
1177 hex "Virtual base address of debug UART"
1178 default 0xe0010fe0 if ARCH_RPC
1179 default 0xe1000000 if DEBUG_MSM_UART
1180 default 0xf0000be0 if ARCH_EBSA110
1181 default 0xf01fb000 if DEBUG_NOMADIK_UART
1182 default 0xf0201000 if DEBUG_BCM2835
1183 default 0xf1000300 if DEBUG_BCM_5301X
1184 default 0xf1006000 if DEBUG_MT6589_UART0
1185 default 0xf11f1000 if ARCH_VERSATILE
1186 default 0xf1600000 if ARCH_INTEGRATOR
1187 default 0xf1c28000 if DEBUG_SUNXI_UART0
1188 default 0xf1c28400 if DEBUG_SUNXI_UART1
1189 default 0xf1f02800 if DEBUG_SUNXI_R_UART
1190 default 0xf6200000 if DEBUG_PXA_UART1
1191 default 0xf4090000 if ARCH_LPC32XX
1192 default 0xf4200000 if ARCH_GEMINI
1193 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1194 DEBUG_S3C2410_UART0)
1195 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1196 DEBUG_S3C2410_UART1)
1197 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1198 DEBUG_S3C2410_UART2)
1199 default 0xf7fc9000 if DEBUG_BERLIN_UART
1200 default 0xf8007000 if DEBUG_HIP04_UART
1201 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1202 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
1203 default 0xfa71e000 if DEBUG_QCOM_UARTDM
1204 default 0xfb002000 if DEBUG_CNS3XXX
1205 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1206 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
1207 default 0xfcfe8600 if DEBUG_UART_BCM63XX
1208 default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1209 default 0xfd000000 if ARCH_SPEAR13XX
1210 default 0xfd012000 if ARCH_MV78XX0
1211 default 0xfde12000 if ARCH_DOVE
1212 default 0xfe012000 if ARCH_ORION5X
1213 default 0xf31004c0 if DEBUG_MESON_UARTAO
1214 default 0xfe017000 if DEBUG_MMP_UART2
1215 default 0xfe018000 if DEBUG_MMP_UART3
1216 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
1217 default 0xfe230000 if DEBUG_PICOXCELL_UART
1218 default 0xfe300000 if DEBUG_BCM_KONA_UART
1219 default 0xfe800000 if ARCH_IOP32X
1220 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1221 default 0xfeb24000 if DEBUG_RK3X_UART0
1222 default 0xfeb26000 if DEBUG_RK3X_UART1
1223 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1224 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1225 default 0xfec02000 if DEBUG_SOCFPGA_UART
1226 default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
1227 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
1228 default 0xfec90000 if DEBUG_RK32_UART2
1229 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1230 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1231 default 0xfed60000 if DEBUG_RK29_UART0
1232 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1233 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1234 default 0xfedc0000 if ARCH_EP93XX
1235 default 0xfee003f8 if FOOTBRIDGE
1236 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1237 default 0xfee82340 if ARCH_IOP13XX
1238 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1239 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1240 default 0xfef36000 if DEBUG_HIGHBANK_UART
1241 default 0xfefff700 if ARCH_IOP33X
1242 default 0xff003000 if DEBUG_U300_UART
1243 default DEBUG_UART_PHYS if !MMU
1244 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1245 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1246 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1249 config DEBUG_UART_8250_SHIFT
1250 int "Register offset shift for the 8250 debug UART"
1251 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1252 default 0 if FOOTBRIDGE || ARCH_IOP32X
1255 config DEBUG_UART_8250_WORD
1256 bool "Use 32-bit accesses for 8250 UART"
1257 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1258 depends on DEBUG_UART_8250_SHIFT >= 2
1259 default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
1261 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
1262 DEBUG_DAVINCI_DA8XX_UART2 || \
1263 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
1265 config DEBUG_UART_8250_FLOW_CONTROL
1266 bool "Enable flow control for 8250 UART"
1267 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1268 default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
1270 config DEBUG_UNCOMPRESS
1272 depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG
1273 default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1274 (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
1276 This option influences the normal decompressor output for
1277 multiplatform kernels. Normally, multiplatform kernels disable
1278 decompressor output because it is not possible to know where to
1279 send the decompressor output.
1281 When this option is set, the selected DEBUG_LL output method
1282 will be re-used for normal decompressor output on multiplatform
1286 config UNCOMPRESS_INCLUDE
1288 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
1289 PLAT_SAMSUNG || ARCH_EFM32
1290 default "mach/uncompress.h"
1296 Say Y here if you want to have an early console using the
1297 kernel low-level debugging functions. Add earlyprintk to your
1298 kernel parameters to enable this console.
1301 bool "On-chip ETM and ETB"
1304 Enables the on-chip embedded trace macrocell and embedded trace
1305 buffer driver that will allow you to collect traces of the
1308 config ARM_KPROBES_TEST
1309 tristate "Kprobes test module"
1310 depends on KPROBES && MODULES
1312 Perform tests of kprobes API and instruction set simulation.
1314 config PID_IN_CONTEXTIDR
1315 bool "Write the current PID to the CONTEXTIDR register"
1316 depends on CPU_COPY_V6
1318 Enabling this option causes the kernel to write the current PID to
1319 the PROCID field of the CONTEXTIDR register, at the expense of some
1320 additional instructions during context switch. Say Y here only if you
1321 are planning to use hardware trace tools with this kernel.
1323 config DEBUG_SET_MODULE_RONX
1324 bool "Set loadable kernel module data as NX and text as RO"
1327 This option helps catch unintended modifications to loadable
1328 kernel module's text and read-only data. It also prevents execution
1329 of module data. Such protection may interfere with run-time code
1330 patching and dynamic kernel tracing - and they might also protect
1331 against certain classes of kernel exploits.
1332 If in doubt, say "N".