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