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