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