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