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_SCIF2 946 bool "Kernel low-level debugging messages via SCIF2 on R8A7794" 947 depends on ARCH_R8A7794 948 help 949 Say Y here if you want kernel low-level debugging support 950 via SCIF2 on Renesas R-Car E2 (R8A7794). 951 952 config DEBUG_RCAR_GEN2_SCIF4 953 bool "Kernel low-level debugging messages via SCIF4 on R8A7745" 954 depends on ARCH_R8A7745 955 help 956 Say Y here if you want kernel low-level debugging support 957 via SCIF4 on Renesas RZ/G1E (R8A7745). 958 959 config DEBUG_RMOBILE_SCIFA0 960 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4" 961 depends on ARCH_R8A73A4 962 help 963 Say Y here if you want kernel low-level debugging support 964 via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4). 965 966 config DEBUG_RMOBILE_SCIFA1 967 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740" 968 depends on ARCH_R8A7740 969 help 970 Say Y here if you want kernel low-level debugging support 971 via SCIFA1 on Renesas R-Mobile A1 (R8A7740). 972 973 config DEBUG_RMOBILE_SCIFA4 974 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0" 975 depends on ARCH_SH73A0 976 help 977 Say Y here if you want kernel low-level debugging support 978 via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0). 979 980 config DEBUG_S3C_UART0 981 depends on PLAT_SAMSUNG 982 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 983 select DEBUG_S3C24XX_UART if ARCH_S3C24XX 984 select DEBUG_S3C64XX_UART if ARCH_S3C64XX 985 select DEBUG_S5PV210_UART if ARCH_S5PV210 986 bool "Use Samsung S3C UART 0 for low-level debug" 987 help 988 Say Y here if you want the debug print routines to direct 989 their output to UART 0. The port must have been initialised 990 by the boot-loader before use. 991 992 config DEBUG_S3C_UART1 993 depends on PLAT_SAMSUNG 994 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 995 select DEBUG_S3C24XX_UART if ARCH_S3C24XX 996 select DEBUG_S3C64XX_UART if ARCH_S3C64XX 997 select DEBUG_S5PV210_UART if ARCH_S5PV210 998 bool "Use Samsung S3C UART 1 for low-level debug" 999 help 1000 Say Y here if you want the debug print routines to direct 1001 their output to UART 1. The port must have been initialised 1002 by the boot-loader before use. 1003 1004 config DEBUG_S3C_UART2 1005 depends on PLAT_SAMSUNG 1006 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 1007 select DEBUG_S3C24XX_UART if ARCH_S3C24XX 1008 select DEBUG_S3C64XX_UART if ARCH_S3C64XX 1009 select DEBUG_S5PV210_UART if ARCH_S5PV210 1010 bool "Use Samsung S3C UART 2 for low-level debug" 1011 help 1012 Say Y here if you want the debug print routines to direct 1013 their output to UART 2. The port must have been initialised 1014 by the boot-loader before use. 1015 1016 config DEBUG_S3C_UART3 1017 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210) 1018 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 1019 select DEBUG_S3C64XX_UART if ARCH_S3C64XX 1020 select DEBUG_S5PV210_UART if ARCH_S5PV210 1021 bool "Use Samsung S3C UART 3 for low-level debug" 1022 help 1023 Say Y here if you want the debug print routines to direct 1024 their output to UART 3. The port must have been initialised 1025 by the boot-loader before use. 1026 1027 config DEBUG_S3C2410_UART0 1028 depends on ARCH_S3C24XX 1029 select DEBUG_S3C2410_UART 1030 bool "Use S3C2410/S3C2412 UART 0 for low-level debug" 1031 help 1032 Say Y here if you want the debug print routines to direct 1033 their output to UART 0. The port must have been initialised 1034 by the boot-loader before use. 1035 1036 config DEBUG_S3C2410_UART1 1037 depends on ARCH_S3C24XX 1038 select DEBUG_S3C2410_UART 1039 bool "Use S3C2410/S3C2412 UART 1 for low-level debug" 1040 help 1041 Say Y here if you want the debug print routines to direct 1042 their output to UART 1. The port must have been initialised 1043 by the boot-loader before use. 1044 1045 config DEBUG_S3C2410_UART2 1046 depends on ARCH_S3C24XX 1047 select DEBUG_S3C2410_UART 1048 bool "Use S3C2410/S3C2412 UART 2 for low-level debug" 1049 help 1050 Say Y here if you want the debug print routines to direct 1051 their output to UART 2. The port must have been initialised 1052 by the boot-loader before use. 1053 1054 config DEBUG_SA1100 1055 depends on ARCH_SA1100 1056 bool "Use SA1100 UARTs for low-level debug" 1057 help 1058 Say Y here if you want kernel low-level debugging support 1059 on SA-11x0 UART ports. The kernel will check for the first 1060 enabled UART in a sequence 3-1-2. 1061 1062 config DEBUG_SOCFPGA_UART0 1063 depends on ARCH_SOCFPGA 1064 bool "Use SOCFPGA UART0 for low-level debug" 1065 select DEBUG_UART_8250 1066 help 1067 Say Y here if you want kernel low-level debugging support 1068 on SOCFPGA(Cyclone 5 and Arria 5) based platforms. 1069 1070 config DEBUG_SOCFPGA_UART1 1071 depends on ARCH_SOCFPGA 1072 bool "Use SOCFPGA UART1 for low-level debug" 1073 select DEBUG_UART_8250 1074 help 1075 Say Y here if you want kernel low-level debugging support 1076 on SOCFPGA(Arria 10) based platforms. 1077 1078 1079 config DEBUG_SUN9I_UART0 1080 bool "Kernel low-level debugging messages via sun9i UART0" 1081 depends on MACH_SUN9I 1082 select DEBUG_UART_8250 1083 help 1084 Say Y here if you want kernel low-level debugging support 1085 on Allwinner A80 based platforms on the UART0. 1086 1087 config DEBUG_SUNXI_UART0 1088 bool "Kernel low-level debugging messages via sunXi UART0" 1089 depends on ARCH_SUNXI 1090 select DEBUG_UART_8250 1091 help 1092 Say Y here if you want kernel low-level debugging support 1093 on Allwinner A1X based platforms on the UART0. 1094 1095 config DEBUG_SUNXI_UART1 1096 bool "Kernel low-level debugging messages via sunXi UART1" 1097 depends on ARCH_SUNXI 1098 select DEBUG_UART_8250 1099 help 1100 Say Y here if you want kernel low-level debugging support 1101 on Allwinner A1X based platforms on the UART1. 1102 1103 config DEBUG_SUNXI_R_UART 1104 bool "Kernel low-level debugging messages via sunXi R_UART" 1105 depends on MACH_SUN6I || MACH_SUN8I 1106 select DEBUG_UART_8250 1107 help 1108 Say Y here if you want kernel low-level debugging support 1109 on Allwinner A31/A23 based platforms on the R_UART. 1110 1111 config DEBUG_SIRFPRIMA2_UART1 1112 bool "Kernel low-level debugging messages via SiRFprimaII UART1" 1113 depends on ARCH_PRIMA2 1114 select DEBUG_SIRFSOC_UART 1115 help 1116 Say Y here if you want the debug print routines to direct 1117 their output to the uart1 port on SiRFprimaII devices. 1118 1119 config DEBUG_SIRFATLAS7_UART0 1120 bool "Kernel low-level debugging messages via SiRFatlas7 UART0" 1121 depends on ARCH_ATLAS7 1122 select DEBUG_SIRFSOC_UART 1123 help 1124 Say Y here if you want the debug print routines to direct 1125 their output to the uart0 port on SiRFATLAS7 devices.The uart0 1126 is used on SiRFATLAS7 as a extra debug port.sometimes an extra 1127 debug port can be very useful. 1128 1129 config DEBUG_SIRFATLAS7_UART1 1130 bool "Kernel low-level debugging messages via SiRFatlas7 UART1" 1131 depends on ARCH_ATLAS7 1132 select DEBUG_SIRFSOC_UART 1133 help 1134 Say Y here if you want the debug print routines to direct 1135 their output to the uart1 port on SiRFATLAS7 devices. 1136 1137 config DEBUG_SPEAR3XX 1138 bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART" 1139 depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX 1140 select DEBUG_UART_PL01X 1141 help 1142 Say Y here if you want kernel low-level debugging support 1143 on ST SPEAr based platforms. 1144 1145 config DEBUG_SPEAR13XX 1146 bool "Kernel low-level debugging messages via ST SPEAr 13xx UART" 1147 depends on ARCH_SPEAR13XX 1148 select DEBUG_UART_PL01X 1149 help 1150 Say Y here if you want kernel low-level debugging support 1151 on ST SPEAr13xx based platforms. 1152 1153 config STIH41X_DEBUG_ASC2 1154 bool "Use StiH415/416 ASC2 UART for low-level debug" 1155 depends on ARCH_STI 1156 select DEBUG_STI_UART 1157 help 1158 Say Y here if you want kernel low-level debugging support 1159 on STiH415/416 based platforms like b2000, which has 1160 default UART wired up to ASC2. 1161 1162 If unsure, say N. 1163 1164 config STIH41X_DEBUG_SBC_ASC1 1165 bool "Use StiH415/416 SBC ASC1 UART for low-level debug" 1166 depends on ARCH_STI 1167 select DEBUG_STI_UART 1168 help 1169 Say Y here if you want kernel low-level debugging support 1170 on STiH415/416 based platforms like b2020. which has 1171 default UART wired up to SBC ASC1. 1172 1173 If unsure, say N. 1174 1175 config TEGRA_DEBUG_UART_AUTO_ODMDATA 1176 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA" 1177 depends on ARCH_TEGRA 1178 select DEBUG_TEGRA_UART 1179 help 1180 Automatically determines which UART to use for low-level 1181 debug based on the ODMDATA value. This value is part of 1182 the BCT, and is written to the boot memory device using 1183 nvflash, or other flashing tool. When bits 19:18 are 3, 1184 then bits 17:15 indicate which UART to use; 0/1/2/3/4 1185 are UART A/B/C/D/E. 1186 1187 config TEGRA_DEBUG_UARTA 1188 bool "Kernel low-level debugging messages via Tegra UART A" 1189 depends on ARCH_TEGRA 1190 select DEBUG_TEGRA_UART 1191 help 1192 Say Y here if you want kernel low-level debugging support 1193 on Tegra based platforms. 1194 1195 config TEGRA_DEBUG_UARTB 1196 bool "Kernel low-level debugging messages via Tegra UART B" 1197 depends on ARCH_TEGRA 1198 select DEBUG_TEGRA_UART 1199 help 1200 Say Y here if you want kernel low-level debugging support 1201 on Tegra based platforms. 1202 1203 config TEGRA_DEBUG_UARTC 1204 bool "Kernel low-level debugging messages via Tegra UART C" 1205 depends on ARCH_TEGRA 1206 select DEBUG_TEGRA_UART 1207 help 1208 Say Y here if you want kernel low-level debugging support 1209 on Tegra based platforms. 1210 1211 config TEGRA_DEBUG_UARTD 1212 bool "Kernel low-level debugging messages via Tegra UART D" 1213 depends on ARCH_TEGRA 1214 select DEBUG_TEGRA_UART 1215 help 1216 Say Y here if you want kernel low-level debugging support 1217 on Tegra based platforms. 1218 1219 config TEGRA_DEBUG_UARTE 1220 bool "Kernel low-level debugging messages via Tegra UART E" 1221 depends on ARCH_TEGRA 1222 select DEBUG_TEGRA_UART 1223 help 1224 Say Y here if you want kernel low-level debugging support 1225 on Tegra based platforms. 1226 1227 config DEBUG_U300_UART 1228 bool "Kernel low-level debugging messages via U300 UART0" 1229 depends on ARCH_U300 1230 select DEBUG_UART_PL01X 1231 help 1232 Say Y here if you want the debug print routines to direct 1233 their output to the uart port on U300 devices. 1234 1235 config DEBUG_UX500_UART 1236 depends on ARCH_U8500 1237 bool "Use Ux500 UART for low-level debug" 1238 help 1239 Say Y here if you want kernel low-level debugging support 1240 on Ux500 based platforms. 1241 1242 config DEBUG_VERSATILE 1243 bool "Kernel low-level debugging messages via ARM Versatile UART" 1244 depends on ARCH_VERSATILE 1245 select DEBUG_UART_PL01X 1246 help 1247 Say Y here if you want kernel low-level debugging support 1248 on ARM Versatile platforms. 1249 1250 config DEBUG_VEXPRESS_UART0_DETECT 1251 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles" 1252 depends on ARCH_VEXPRESS && CPU_CP15_MMU 1253 help 1254 This option enables a simple heuristic which tries to determine 1255 the motherboard's memory map variant (original or RS1) and then 1256 choose the relevant UART0 base address. 1257 1258 Note that this will only work with standard A-class core tiles, 1259 and may fail with non-standard SMM or custom software models. 1260 1261 config DEBUG_VEXPRESS_UART0_CA9 1262 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)" 1263 depends on ARCH_VEXPRESS 1264 select DEBUG_UART_PL01X 1265 help 1266 This option selects UART0 at 0x10009000. Except for custom models, 1267 this applies only to the V2P-CA9 tile. 1268 1269 config DEBUG_VEXPRESS_UART0_RS1 1270 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)" 1271 depends on ARCH_VEXPRESS 1272 select DEBUG_UART_PL01X 1273 help 1274 This option selects UART0 at 0x1c090000. This applies to most 1275 of the tiles using the RS1 memory map, including all new A-class 1276 core tiles, FPGA-based SMMs and software models. 1277 1278 config DEBUG_VEXPRESS_UART0_CRX 1279 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)" 1280 depends on ARCH_VEXPRESS && !MMU 1281 select DEBUG_UART_PL01X 1282 help 1283 This option selects UART0 at 0xb0090000. This is appropriate for 1284 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7 1285 1286 config DEBUG_VF_UART 1287 bool "Vybrid UART" 1288 depends on SOC_VF610 1289 help 1290 Say Y here if you want kernel low-level debugging support 1291 on Vybrid based platforms. 1292 1293 config DEBUG_VT8500_UART0 1294 bool "Use UART0 on VIA/Wondermedia SoCs" 1295 depends on ARCH_VT8500 1296 help 1297 This option selects UART0 on VIA/Wondermedia System-on-a-chip 1298 devices, including VT8500, WM8505, WM8650 and WM8850. 1299 1300 config DEBUG_ZTE_ZX 1301 bool "Use ZTE ZX UART" 1302 select DEBUG_UART_PL01X 1303 depends on ARCH_ZX 1304 help 1305 Say Y here if you are enabling ZTE ZX296702 SOC and need 1306 debug uart support. 1307 1308 This option is preferred over the platform specific 1309 options; the platform specific options are deprecated 1310 and will be soon removed. 1311 1312 config DEBUG_ZYNQ_UART0 1313 bool "Kernel low-level debugging on Xilinx Zynq using UART0" 1314 depends on ARCH_ZYNQ 1315 help 1316 Say Y here if you want the debug print routines to direct 1317 their output to UART0 on the Zynq platform. 1318 1319 config DEBUG_ZYNQ_UART1 1320 bool "Kernel low-level debugging on Xilinx Zynq using UART1" 1321 depends on ARCH_ZYNQ 1322 help 1323 Say Y here if you want the debug print routines to direct 1324 their output to UART1 on the Zynq platform. 1325 1326 If you have a ZC702 board and want early boot messages to 1327 appear on the USB serial adaptor, select this option. 1328 1329 config DEBUG_ICEDCC 1330 bool "Kernel low-level debugging via EmbeddedICE DCC channel" 1331 help 1332 Say Y here if you want the debug print routines to direct 1333 their output to the EmbeddedICE macrocell's DCC channel using 1334 co-processor 14. This is known to work on the ARM9 style ICE 1335 channel and on the XScale with the PEEDI. 1336 1337 Note that the system will appear to hang during boot if there 1338 is nothing connected to read from the DCC. 1339 1340 config DEBUG_SEMIHOSTING 1341 bool "Kernel low-level debug output via semihosting I/O" 1342 help 1343 Semihosting enables code running on an ARM target to use 1344 the I/O facilities on a host debugger/emulator through a 1345 simple SVC call. The host debugger or emulator must have 1346 semihosting enabled for the special svc call to be trapped 1347 otherwise the kernel will crash. 1348 1349 This is known to work with OpenOCD, as well as 1350 ARM's Fast Models, or any other controlling environment 1351 that implements semihosting. 1352 1353 For more details about semihosting, please see 1354 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd. 1355 1356 config DEBUG_LL_UART_8250 1357 bool "Kernel low-level debugging via 8250 UART" 1358 help 1359 Say Y here if you wish the debug print routes to direct 1360 their output to an 8250 UART. You can use this option 1361 to provide the parameters for the 8250 UART rather than 1362 selecting one of the platform specific options above if 1363 you know the parameters for the port. 1364 1365 This option is preferred over the platform specific 1366 options; the platform specific options are deprecated 1367 and will be soon removed. 1368 1369 config DEBUG_LL_UART_EFM32 1370 bool "Kernel low-level debugging via efm32 UART" 1371 depends on ARCH_EFM32 1372 help 1373 Say Y here if you want the debug print routines to direct 1374 their output to an UART or USART port on efm32 based 1375 machines. Use the following addresses for DEBUG_UART_PHYS: 1376 1377 0x4000c000 | USART0 1378 0x4000c400 | USART1 1379 0x4000c800 | USART2 1380 0x4000e000 | UART0 1381 0x4000e400 | UART1 1382 1383 config DEBUG_LL_UART_PL01X 1384 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART" 1385 help 1386 Say Y here if you wish the debug print routes to direct 1387 their output to a PL01x Primecell UART. You can use 1388 this option to provide the parameters for the UART 1389 rather than selecting one of the platform specific 1390 options above if you know the parameters for the port. 1391 1392 This option is preferred over the platform specific 1393 options; the platform specific options are deprecated 1394 and will be soon removed. 1395 1396endchoice 1397 1398config DEBUG_AT91_UART 1399 bool 1400 depends on ARCH_AT91 1401 1402config DEBUG_EXYNOS_UART 1403 bool 1404 1405config DEBUG_S3C2410_UART 1406 bool 1407 select DEBUG_S3C24XX_UART 1408 1409config DEBUG_S3C24XX_UART 1410 bool 1411 1412config DEBUG_S3C64XX_UART 1413 bool 1414 1415config DEBUG_S5PV210_UART 1416 bool 1417 1418config DEBUG_OMAP2PLUS_UART 1419 bool 1420 depends on ARCH_OMAP2PLUS 1421 1422config DEBUG_IMX_UART_PORT 1423 int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \ 1424 DEBUG_IMX25_UART || \ 1425 DEBUG_IMX21_IMX27_UART || \ 1426 DEBUG_IMX31_UART || \ 1427 DEBUG_IMX35_UART || \ 1428 DEBUG_IMX50_UART || \ 1429 DEBUG_IMX51_UART || \ 1430 DEBUG_IMX53_UART || \ 1431 DEBUG_IMX6Q_UART || \ 1432 DEBUG_IMX6SL_UART || \ 1433 DEBUG_IMX6SX_UART || \ 1434 DEBUG_IMX6UL_UART || \ 1435 DEBUG_IMX7D_UART 1436 default 1 1437 depends on ARCH_MXC 1438 help 1439 Choose UART port on which kernel low-level debug messages 1440 should be output. 1441 1442config DEBUG_VF_UART_PORT 1443 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART 1444 default 1 1445 range 0 3 1446 depends on SOC_VF610 1447 help 1448 Choose UART port on which kernel low-level debug messages 1449 should be output. 1450 1451config DEBUG_TEGRA_UART 1452 bool 1453 depends on ARCH_TEGRA 1454 1455config DEBUG_STI_UART 1456 bool 1457 depends on ARCH_STI 1458 1459config DEBUG_SIRFSOC_UART 1460 bool 1461 depends on ARCH_SIRF 1462 1463config DEBUG_LL_INCLUDE 1464 string 1465 default "debug/sa1100.S" if DEBUG_SA1100 1466 default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP 1467 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250 1468 default "debug/at91.S" if DEBUG_AT91_UART 1469 default "debug/asm9260.S" if DEBUG_ASM9260_UART 1470 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2 1471 default "debug/dc21285.S" if DEBUG_DC21285_PORT 1472 default "debug/meson.S" if DEBUG_MESON_UARTAO 1473 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X 1474 default "debug/exynos.S" if DEBUG_EXYNOS_UART 1475 default "debug/efm32.S" if DEBUG_LL_UART_EFM32 1476 default "debug/icedcc.S" if DEBUG_ICEDCC 1477 default "debug/imx.S" if DEBUG_IMX1_UART || \ 1478 DEBUG_IMX25_UART || \ 1479 DEBUG_IMX21_IMX27_UART || \ 1480 DEBUG_IMX31_UART || \ 1481 DEBUG_IMX35_UART || \ 1482 DEBUG_IMX50_UART || \ 1483 DEBUG_IMX51_UART || \ 1484 DEBUG_IMX53_UART ||\ 1485 DEBUG_IMX6Q_UART || \ 1486 DEBUG_IMX6SL_UART || \ 1487 DEBUG_IMX6SX_UART || \ 1488 DEBUG_IMX6UL_UART || \ 1489 DEBUG_IMX7D_UART 1490 default "debug/ks8695.S" if DEBUG_KS8695_UART 1491 default "debug/msm.S" if DEBUG_QCOM_UARTDM 1492 default "debug/netx.S" if DEBUG_NETX_UART 1493 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART 1494 default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2 1495 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0 1496 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2 1497 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0 1498 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2 1499 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4 1500 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0 1501 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1 1502 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4 1503 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART 1504 default "debug/s5pv210.S" if DEBUG_S5PV210_UART 1505 default "debug/sirf.S" if DEBUG_SIRFSOC_UART 1506 default "debug/sti.S" if DEBUG_STI_UART 1507 default "debug/tegra.S" if DEBUG_TEGRA_UART 1508 default "debug/ux500.S" if DEBUG_UX500_UART 1509 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT 1510 default "debug/vf.S" if DEBUG_VF_UART 1511 default "debug/vt8500.S" if DEBUG_VT8500_UART0 1512 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1 1513 default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART 1514 default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0 1515 default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART 1516 default "mach/debug-macro.S" 1517 1518# Compatibility options for PL01x 1519config DEBUG_UART_PL01X 1520 bool 1521 1522# Compatibility options for 8250 1523config DEBUG_UART_8250 1524 def_bool ARCH_EBSA110 || \ 1525 ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \ 1526 ARCH_RPC 1527 1528config DEBUG_UART_PHYS 1529 hex "Physical base address of debug UART" 1530 default 0x00100a00 if DEBUG_NETX_UART 1531 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0 1532 default 0x01c28000 if DEBUG_SUNXI_UART0 1533 default 0x01c28400 if DEBUG_SUNXI_UART1 1534 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1 1535 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2 1536 default 0x01f02800 if DEBUG_SUNXI_R_UART 1537 default 0x02530c00 if DEBUG_KEYSTONE_UART0 1538 default 0x02531000 if DEBUG_KEYSTONE_UART1 1539 default 0x03010fe0 if ARCH_RPC 1540 default 0x07000000 if DEBUG_SUN9I_UART0 1541 default 0x09405000 if DEBUG_ZTE_ZX 1542 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \ 1543 DEBUG_VEXPRESS_UART0_CA9 1544 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT 1545 default 0x10124000 if DEBUG_RK3X_UART0 1546 default 0x10126000 if DEBUG_RK3X_UART1 1547 default 0x101f1000 if DEBUG_VERSATILE 1548 default 0x101fb000 if DEBUG_NOMADIK_UART 1549 default 0x10210000 if DEBUG_RV1108_UART2 1550 default 0x10220000 if DEBUG_RV1108_UART1 1551 default 0x10230000 if DEBUG_RV1108_UART0 1552 default 0x11002000 if DEBUG_MT8127_UART0 1553 default 0x11006000 if DEBUG_MT6589_UART0 1554 default 0x11009000 if DEBUG_MT8135_UART3 1555 default 0x16000000 if DEBUG_INTEGRATOR 1556 default 0x18000300 if DEBUG_BCM_5301X 1557 default 0x18000400 if DEBUG_BCM_HR2 1558 default 0x18010000 if DEBUG_SIRFATLAS7_UART0 1559 default 0x18020000 if DEBUG_SIRFATLAS7_UART1 1560 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1 1561 default 0x20001000 if DEBUG_HIP01_UART 1562 default 0x20060000 if DEBUG_RK29_UART0 1563 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2 1564 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3 1565 default 0x20201000 if DEBUG_BCM2835 1566 default 0x3f201000 if DEBUG_BCM2836 1567 default 0x3e000000 if DEBUG_BCM_KONA_UART 1568 default 0x4000e400 if DEBUG_LL_UART_EFM32 1569 default 0x40028000 if DEBUG_AT91_SAMV7_USART1 1570 default 0x40081000 if DEBUG_LPC18XX_UART0 1571 default 0x40090000 if DEBUG_LPC32XX 1572 default 0x40100000 if DEBUG_PXA_UART1 1573 default 0x42000000 if DEBUG_GEMINI 1574 default 0x44e09000 if DEBUG_AM33XXUART1 1575 default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1 1576 default 0x48022000 if DEBUG_TI81XXUART2 1577 default 0x48024000 if DEBUG_TI81XXUART3 1578 default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \ 1579 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1 1580 default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \ 1581 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2 1582 default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4 1583 default 0x49020000 if DEBUG_OMAP3UART3 1584 default 0x49042000 if DEBUG_OMAP3UART4 1585 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 1586 DEBUG_S3C2410_UART0) 1587 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \ 1588 DEBUG_S3C2410_UART1) 1589 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \ 1590 DEBUG_S3C2410_UART2) 1591 default 0x78000000 if DEBUG_CNS3XXX 1592 default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1 1593 default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0 1594 default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1 1595 default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2 1596 default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3 1597 default 0x80010000 if DEBUG_ASM9260_UART 1598 default 0x80070000 if DEBUG_IMX23_UART 1599 default 0x80074000 if DEBUG_IMX28_UART 1600 default 0x80230000 if DEBUG_PICOXCELL_UART 1601 default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX 1602 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART 1603 default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1 1604 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX 1605 default 0xc0013000 if DEBUG_U300_UART 1606 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN 1607 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN 1608 default 0xd0000000 if DEBUG_SPEAR3XX 1609 default 0xd0012000 if DEBUG_MVEBU_UART0 1610 default 0xc81004c0 if DEBUG_MESON_UARTAO 1611 default 0xd4017000 if DEBUG_MMP_UART2 1612 default 0xd4018000 if DEBUG_MMP_UART3 1613 default 0xe0000000 if DEBUG_SPEAR13XX 1614 default 0xe4007000 if DEBUG_HIP04_UART 1615 default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0 1616 default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1 1617 default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4 1618 default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2 1619 default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0 1620 default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4 1621 default 0xe8008000 if DEBUG_R7S72100_SCIF2 1622 default 0xf0000be0 if ARCH_EBSA110 1623 default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE 1624 default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE 1625 default 0xf7fc9000 if DEBUG_BERLIN_UART 1626 default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1 1627 default 0xf8b00000 if DEBUG_HIX5HD2_UART 1628 default 0xf991e000 if DEBUG_QCOM_UARTDM 1629 default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3 1630 default 0xfcb00000 if DEBUG_HI3620_UART 1631 default 0xfd883000 if DEBUG_ALPINE_UART0 1632 default 0xfe800000 if ARCH_IOP32X 1633 default 0xff690000 if DEBUG_RK32_UART2 1634 default 0xffc02000 if DEBUG_SOCFPGA_UART0 1635 default 0xffc02100 if DEBUG_SOCFPGA_UART1 1636 default 0xffd82340 if ARCH_IOP13XX 1637 default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0 1638 default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2 1639 default 0xfff36000 if DEBUG_HIGHBANK_UART 1640 default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1 1641 default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2 1642 default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3 1643 default 0xfffe8600 if DEBUG_BCM63XX_UART 1644 default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU 1645 default 0xfffff200 if DEBUG_AT91_RM9200_DBGU 1646 default 0xfffff700 if ARCH_IOP33X 1647 depends on ARCH_EP93XX || \ 1648 DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ 1649 DEBUG_LL_UART_EFM32 || \ 1650 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ 1651 DEBUG_NETX_UART || \ 1652 DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \ 1653 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \ 1654 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \ 1655 DEBUG_RCAR_GEN2_SCIF4 || \ 1656 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \ 1657 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \ 1658 DEBUG_S3C64XX_UART || \ 1659 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \ 1660 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ 1661 DEBUG_AT91_UART 1662 1663config DEBUG_UART_VIRT 1664 hex "Virtual base address of debug UART" 1665 default 0xc881f000 if DEBUG_RV1108_UART2 1666 default 0xc8821000 if DEBUG_RV1108_UART1 1667 default 0xc8912000 if DEBUG_RV1108_UART0 1668 default 0xe0000a00 if DEBUG_NETX_UART 1669 default 0xe0010fe0 if ARCH_RPC 1670 default 0xf0000be0 if ARCH_EBSA110 1671 default 0xf0010000 if DEBUG_ASM9260_UART 1672 default 0xf01fb000 if DEBUG_NOMADIK_UART 1673 default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836 1674 default 0xf1000300 if DEBUG_BCM_5301X 1675 default 0xf1000400 if DEBUG_BCM_HR2 1676 default 0xf1002000 if DEBUG_MT8127_UART0 1677 default 0xf1006000 if DEBUG_MT6589_UART0 1678 default 0xf1009000 if DEBUG_MT8135_UART3 1679 default 0xf11f1000 if DEBUG_VERSATILE 1680 default 0xf1600000 if DEBUG_INTEGRATOR 1681 default 0xf1c28000 if DEBUG_SUNXI_UART0 1682 default 0xf1c28400 if DEBUG_SUNXI_UART1 1683 default 0xf1f02800 if DEBUG_SUNXI_R_UART 1684 default 0xf31004c0 if DEBUG_MESON_UARTAO 1685 default 0xf4090000 if DEBUG_LPC32XX 1686 default 0xf4200000 if DEBUG_GEMINI 1687 default 0xf6200000 if DEBUG_PXA_UART1 1688 default 0xf7000000 if DEBUG_SUN9I_UART0 1689 default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0 1690 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 1691 DEBUG_S3C2410_UART0) 1692 default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1 1693 default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2 1694 default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3 1695 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \ 1696 DEBUG_S3C2410_UART1) 1697 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \ 1698 DEBUG_S3C2410_UART2) 1699 default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1 1700 default 0xf7fc9000 if DEBUG_BERLIN_UART 1701 default 0xf8007000 if DEBUG_HIP04_UART 1702 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9 1703 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1 1704 default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU 1705 default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU 1706 default 0xf9e09000 if DEBUG_AM33XXUART1 1707 default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1 1708 default 0xfa022000 if DEBUG_TI81XXUART2 1709 default 0xfa024000 if DEBUG_TI81XXUART3 1710 default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \ 1711 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1 1712 default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \ 1713 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2 1714 default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4 1715 default 0xfa71e000 if DEBUG_QCOM_UARTDM 1716 default 0xfb002000 if DEBUG_CNS3XXX 1717 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT 1718 default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3 1719 default 0xfb020000 if DEBUG_OMAP3UART3 1720 default 0xfb042000 if DEBUG_OMAP3UART4 1721 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT 1722 default 0xfc705000 if DEBUG_ZTE_ZX 1723 default 0xfcfe8600 if DEBUG_BCM63XX_UART 1724 default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX 1725 default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0 1726 default 0xfd883000 if DEBUG_ALPINE_UART0 1727 default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE 1728 default 0xfe012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_ORION5X 1729 default 0xfe017000 if DEBUG_MMP_UART2 1730 default 0xfe018000 if DEBUG_MMP_UART3 1731 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART 1732 default 0xfe230000 if DEBUG_PICOXCELL_UART 1733 default 0xfe300000 if DEBUG_BCM_KONA_UART 1734 default 0xfe800000 if ARCH_IOP32X 1735 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART 1736 default 0xfeb24000 if DEBUG_RK3X_UART0 1737 default 0xfeb26000 if DEBUG_RK3X_UART1 1738 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0 1739 default 0xfeb31000 if DEBUG_KEYSTONE_UART1 1740 default 0xfec02000 if DEBUG_SOCFPGA_UART0 1741 default 0xfec02100 if DEBUG_SOCFPGA_UART1 1742 default 0xfec12000 if (DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE) && ARCH_MVEBU 1743 default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE 1744 default 0xfec10000 if DEBUG_SIRFATLAS7_UART0 1745 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0 1746 default 0xfec20000 if DEBUG_SIRFATLAS7_UART1 1747 default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1 1748 default 0xfec90000 if DEBUG_RK32_UART2 1749 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1 1750 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2 1751 default 0xfed60000 if DEBUG_RK29_UART0 1752 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2 1753 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3 1754 default 0xfedc0000 if DEBUG_EP93XX 1755 default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1 1756 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART 1757 default 0xfee82340 if ARCH_IOP13XX 1758 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN 1759 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN 1760 default 0xfef36000 if DEBUG_HIGHBANK_UART 1761 default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1 1762 default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2 1763 default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3 1764 default 0xfefff700 if ARCH_IOP33X 1765 default 0xff003000 if DEBUG_U300_UART 1766 default 0xffd01000 if DEBUG_HIP01_UART 1767 default DEBUG_UART_PHYS if !MMU 1768 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ 1769 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ 1770 DEBUG_NETX_UART || \ 1771 DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ 1772 DEBUG_S3C64XX_UART || \ 1773 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \ 1774 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \ 1775 DEBUG_AT91_UART 1776 1777config DEBUG_UART_8250_SHIFT 1778 int "Register offset shift for the 8250 debug UART" 1779 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1780 default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \ 1781 DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \ 1782 DEBUG_OMAP7XXUART3 1783 default 2 1784 1785config DEBUG_UART_8250_WORD 1786 bool "Use 32-bit accesses for 8250 UART" 1787 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1788 depends on DEBUG_UART_8250_SHIFT >= 2 1789 default y if DEBUG_PICOXCELL_UART || \ 1790 DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_UART1 || \ 1791 DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \ 1792 DEBUG_ALPINE_UART0 || \ 1793 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \ 1794 DEBUG_DAVINCI_DA8XX_UART2 || \ 1795 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 1796 1797config DEBUG_UART_8250_PALMCHIP 1798 bool "8250 UART is Palmchip BK-310x" 1799 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1800 help 1801 Palmchip provides a UART implementation compatible with 16550 1802 except for having a different register layout. Say Y here if 1803 the debug UART is of this type. 1804 1805config DEBUG_UART_8250_FLOW_CONTROL 1806 bool "Enable flow control for 8250 UART" 1807 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1808 default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC 1809 1810config DEBUG_UNCOMPRESS 1811 bool "Enable decompressor debugging via DEBUG_LL output" 1812 depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M 1813 depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \ 1814 (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \ 1815 !DEBUG_BRCMSTB_UART 1816 help 1817 This option influences the normal decompressor output for 1818 multiplatform kernels. Normally, multiplatform kernels disable 1819 decompressor output because it is not possible to know where to 1820 send the decompressor output. 1821 1822 When this option is set, the selected DEBUG_LL output method 1823 will be re-used for normal decompressor output on multiplatform 1824 kernels. 1825 1826 1827config UNCOMPRESS_INCLUDE 1828 string 1829 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \ 1830 PLAT_SAMSUNG || ARM_SINGLE_ARMV7M 1831 default "mach/uncompress.h" 1832 1833config EARLY_PRINTK 1834 bool "Early printk" 1835 depends on DEBUG_LL 1836 help 1837 Say Y here if you want to have an early console using the 1838 kernel low-level debugging functions. Add earlyprintk to your 1839 kernel parameters to enable this console. 1840 1841config ARM_KPROBES_TEST 1842 tristate "Kprobes test module" 1843 depends on KPROBES && MODULES 1844 help 1845 Perform tests of kprobes API and instruction set simulation. 1846 1847config PID_IN_CONTEXTIDR 1848 bool "Write the current PID to the CONTEXTIDR register" 1849 depends on CPU_COPY_V6 1850 help 1851 Enabling this option causes the kernel to write the current PID to 1852 the PROCID field of the CONTEXTIDR register, at the expense of some 1853 additional instructions during context switch. Say Y here only if you 1854 are planning to use hardware trace tools with this kernel. 1855 1856source "drivers/hwtracing/coresight/Kconfig" 1857 1858endmenu 1859