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