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