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