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 AT91_DEBUG_LL_DBGU0 97 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl" 98 depends on HAVE_AT91_DBGU0 99 100 config AT91_DEBUG_LL_DBGU1 101 bool "Kernel low-level debugging on 9263 and 9g45" 102 depends on HAVE_AT91_DBGU1 103 104 config AT91_DEBUG_LL_DBGU2 105 bool "Kernel low-level debugging on sama5d4" 106 depends on HAVE_AT91_DBGU2 107 108 config DEBUG_BCM2835 109 bool "Kernel low-level debugging on BCM2835 PL011 UART" 110 depends on ARCH_BCM2835 111 select DEBUG_UART_PL01X 112 113 config DEBUG_BCM_5301X 114 bool "Kernel low-level debugging on BCM5301X UART1" 115 depends on ARCH_BCM_5301X 116 select DEBUG_UART_PL01X 117 118 config DEBUG_BCM_KONA_UART 119 bool "Kernel low-level debugging messages via BCM KONA UART" 120 depends on ARCH_BCM_MOBILE 121 select DEBUG_UART_8250 122 help 123 Say Y here if you want kernel low-level debugging support 124 on Broadcom SoC platforms. 125 This low level debug works for Broadcom 126 mobile SoCs in the Kona family of chips (e.g. bcm28155, 127 bcm11351, etc...) 128 129 config DEBUG_BCM63XX 130 bool "Kernel low-level debugging on BCM63XX UART" 131 depends on ARCH_BCM_63XX 132 select DEBUG_UART_BCM63XX 133 134 config DEBUG_BERLIN_UART 135 bool "Marvell Berlin SoC Debug UART" 136 depends on ARCH_BERLIN 137 select DEBUG_UART_8250 138 help 139 Say Y here if you want kernel low-level debugging support 140 on Marvell Berlin SoC based platforms. 141 142 config DEBUG_CLPS711X_UART1 143 bool "Kernel low-level debugging messages via UART1" 144 depends on ARCH_CLPS711X 145 help 146 Say Y here if you want the debug print routines to direct 147 their output to the first serial port on these devices. 148 149 config DEBUG_CLPS711X_UART2 150 bool "Kernel low-level debugging messages via UART2" 151 depends on ARCH_CLPS711X 152 help 153 Say Y here if you want the debug print routines to direct 154 their output to the second serial port on these devices. 155 156 config DEBUG_CNS3XXX 157 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx" 158 depends on ARCH_CNS3XXX 159 select DEBUG_UART_8250 160 help 161 Say Y here if you want the debug print routines to direct 162 their output to the CNS3xxx UART0. 163 164 config DEBUG_DAVINCI_DA8XX_UART1 165 bool "Kernel low-level debugging on DaVinci DA8XX using UART1" 166 depends on ARCH_DAVINCI_DA8XX 167 select DEBUG_UART_8250 168 help 169 Say Y here if you want the debug print routines to direct 170 their output to UART1 serial port on DaVinci DA8XX devices. 171 172 config DEBUG_DAVINCI_DA8XX_UART2 173 bool "Kernel low-level debugging on DaVinci DA8XX using UART2" 174 depends on ARCH_DAVINCI_DA8XX 175 select DEBUG_UART_8250 176 help 177 Say Y here if you want the debug print routines to direct 178 their output to UART2 serial port on DaVinci DA8XX devices. 179 180 config DEBUG_DAVINCI_DMx_UART0 181 bool "Kernel low-level debugging on DaVinci DMx using UART0" 182 depends on ARCH_DAVINCI_DMx 183 select DEBUG_UART_8250 184 help 185 Say Y here if you want the debug print routines to direct 186 their output to UART0 serial port on DaVinci DMx devices. 187 188 config DEBUG_ZYNQ_UART0 189 bool "Kernel low-level debugging on Xilinx Zynq using UART0" 190 depends on ARCH_ZYNQ 191 help 192 Say Y here if you want the debug print routines to direct 193 their output to UART0 on the Zynq platform. 194 195 config DEBUG_ZYNQ_UART1 196 bool "Kernel low-level debugging on Xilinx Zynq using UART1" 197 depends on ARCH_ZYNQ 198 help 199 Say Y here if you want the debug print routines to direct 200 their output to UART1 on the Zynq platform. 201 202 If you have a ZC702 board and want early boot messages to 203 appear on the USB serial adaptor, select this option. 204 205 config DEBUG_DC21285_PORT 206 bool "Kernel low-level debugging messages via footbridge serial port" 207 depends on FOOTBRIDGE 208 help 209 Say Y here if you want the debug print routines to direct 210 their output to the serial port in the DC21285 (Footbridge). 211 212 config DEBUG_FOOTBRIDGE_COM1 213 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" 214 depends on FOOTBRIDGE 215 help 216 Say Y here if you want the debug print routines to direct 217 their output to the 8250 at PCI COM1. 218 219 config DEBUG_HI3620_UART 220 bool "Hisilicon HI3620 Debug UART" 221 depends on ARCH_HI3xxx 222 select DEBUG_UART_PL01X 223 help 224 Say Y here if you want kernel low-level debugging support 225 on HI3620 UART. 226 227 config DEBUG_HI3716_UART 228 bool "Hisilicon Hi3716 Debug UART" 229 depends on ARCH_HI3xxx 230 select DEBUG_UART_PL01X 231 help 232 Say Y here if you want kernel low-level debugging support 233 on HI3716 UART. 234 235 config DEBUG_HIGHBANK_UART 236 bool "Kernel low-level debugging messages via Highbank UART" 237 depends on ARCH_HIGHBANK 238 select DEBUG_UART_PL01X 239 help 240 Say Y here if you want the debug print routines to direct 241 their output to the UART on Highbank based devices. 242 243 config DEBUG_HIP04_UART 244 bool "Hisilicon HiP04 Debug UART" 245 depends on ARCH_HIP04 246 select DEBUG_UART_8250 247 help 248 Say Y here if you want kernel low-level debugging support 249 on HIP04 UART. 250 251 config DEBUG_HIX5HD2_UART 252 bool "Hisilicon Hix5hd2 Debug UART" 253 depends on ARCH_HIX5HD2 254 select DEBUG_UART_PL01X 255 help 256 Say Y here if you want kernel low-level debugging support 257 on Hix5hd2 UART. 258 259 config DEBUG_IMX1_UART 260 bool "i.MX1 Debug UART" 261 depends on SOC_IMX1 262 help 263 Say Y here if you want kernel low-level debugging support 264 on i.MX1. 265 266 config DEBUG_IMX23_UART 267 bool "i.MX23 Debug UART" 268 depends on SOC_IMX23 269 select DEBUG_UART_PL01X 270 help 271 Say Y here if you want kernel low-level debugging support 272 on i.MX23. 273 274 config DEBUG_IMX25_UART 275 bool "i.MX25 Debug UART" 276 depends on SOC_IMX25 277 help 278 Say Y here if you want kernel low-level debugging support 279 on i.MX25. 280 281 config DEBUG_IMX21_IMX27_UART 282 bool "i.MX21 and i.MX27 Debug UART" 283 depends on SOC_IMX21 || SOC_IMX27 284 help 285 Say Y here if you want kernel low-level debugging support 286 on i.MX21 or i.MX27. 287 288 config DEBUG_IMX28_UART 289 bool "i.MX28 Debug UART" 290 depends on SOC_IMX28 291 select DEBUG_UART_PL01X 292 help 293 Say Y here if you want kernel low-level debugging support 294 on i.MX28. 295 296 config DEBUG_IMX31_UART 297 bool "i.MX31 Debug UART" 298 depends on SOC_IMX31 299 help 300 Say Y here if you want kernel low-level debugging support 301 on i.MX31. 302 303 config DEBUG_IMX35_UART 304 bool "i.MX35 Debug UART" 305 depends on SOC_IMX35 306 help 307 Say Y here if you want kernel low-level debugging support 308 on i.MX35. 309 310 config DEBUG_IMX50_UART 311 bool "i.MX50 Debug UART" 312 depends on SOC_IMX50 313 help 314 Say Y here if you want kernel low-level debugging support 315 on i.MX50. 316 317 config DEBUG_IMX51_UART 318 bool "i.MX51 Debug UART" 319 depends on SOC_IMX51 320 help 321 Say Y here if you want kernel low-level debugging support 322 on i.MX51. 323 324 config DEBUG_IMX53_UART 325 bool "i.MX53 Debug UART" 326 depends on SOC_IMX53 327 help 328 Say Y here if you want kernel low-level debugging support 329 on i.MX53. 330 331 config DEBUG_IMX6Q_UART 332 bool "i.MX6Q/DL Debug UART" 333 depends on SOC_IMX6Q 334 help 335 Say Y here if you want kernel low-level debugging support 336 on i.MX6Q/DL. 337 338 config DEBUG_IMX6SL_UART 339 bool "i.MX6SL Debug UART" 340 depends on SOC_IMX6SL 341 help 342 Say Y here if you want kernel low-level debugging support 343 on i.MX6SL. 344 345 config DEBUG_IMX6SX_UART 346 bool "i.MX6SX Debug UART" 347 depends on SOC_IMX6SX 348 help 349 Say Y here if you want kernel low-level debugging support 350 on i.MX6SX. 351 352 config DEBUG_KEYSTONE_UART0 353 bool "Kernel low-level debugging on KEYSTONE2 using UART0" 354 depends on ARCH_KEYSTONE 355 select DEBUG_UART_8250 356 help 357 Say Y here if you want the debug print routines to direct 358 their output to UART0 serial port on KEYSTONE2 devices. 359 360 config DEBUG_KEYSTONE_UART1 361 bool "Kernel low-level debugging on KEYSTONE2 using UART1" 362 depends on ARCH_KEYSTONE 363 select DEBUG_UART_8250 364 help 365 Say Y here if you want the debug print routines to direct 366 their output to UART1 serial port on KEYSTONE2 devices. 367 368 config DEBUG_MESON_UARTAO 369 bool "Kernel low-level debugging via Meson6 UARTAO" 370 depends on ARCH_MESON 371 help 372 Say Y here if you want kernel low-lever debugging support 373 on Amlogic Meson6 based platforms on the UARTAO. 374 375 config DEBUG_MMP_UART2 376 bool "Kernel low-level debugging message via MMP UART2" 377 depends on ARCH_MMP 378 select DEBUG_UART_8250 379 help 380 Say Y here if you want kernel low-level debugging support 381 on MMP UART2. 382 383 config DEBUG_MMP_UART3 384 bool "Kernel low-level debugging message via MMP UART3" 385 depends on ARCH_MMP 386 select DEBUG_UART_8250 387 help 388 Say Y here if you want kernel low-level debugging support 389 on MMP UART3. 390 391 config DEBUG_MSM_UART 392 bool "Kernel low-level debugging messages via MSM UART" 393 depends on ARCH_MSM 394 help 395 Say Y here if you want the debug print routines to direct 396 their output to the serial port on MSM devices. 397 398 ARCH DEBUG_UART_PHYS DEBUG_UART_BASE # 399 MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1 400 MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2 401 MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3 402 403 MSM7X30 0xaca00000 0xe1000000 UART1 404 MSM7X30 0xacb00000 0xe1000000 UART2 405 MSM7X30 0xacc00000 0xe1000000 UART3 406 407 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration 408 options based on your needs. 409 410 config DEBUG_QCOM_UARTDM 411 bool "Kernel low-level debugging messages via QCOM UARTDM" 412 depends on ARCH_QCOM 413 help 414 Say Y here if you want the debug print routines to direct 415 their output to the serial port on Qualcomm devices. 416 417 ARCH DEBUG_UART_PHYS DEBUG_UART_BASE 418 APQ8084 0xf995e000 0xfa75e000 419 MSM8X60 0x19c40000 0xf0040000 420 MSM8960 0x16440000 0xf0040000 421 MSM8974 0xf991e000 0xfa71e000 422 423 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration 424 options based on your needs. 425 426 config DEBUG_MVEBU_UART 427 bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)" 428 depends on ARCH_MVEBU 429 select DEBUG_UART_8250 430 help 431 Say Y here if you want kernel low-level debugging support 432 on MVEBU based platforms. 433 434 This option should be used with the old bootloaders 435 that left the internal registers mapped at 436 0xd0000000. As of today, this is the case on 437 platforms such as the Globalscale Mirabox or the 438 Plathome OpenBlocks AX3, when using the original 439 bootloader. 440 441 If the wrong DEBUG_MVEBU_UART* option is selected, 442 when u-boot hands over to the kernel, the system 443 silently crashes, with no serial output at all. 444 445 config DEBUG_MVEBU_UART_ALTERNATE 446 bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)" 447 depends on ARCH_MVEBU 448 select DEBUG_UART_8250 449 help 450 Say Y here if you want kernel low-level debugging support 451 on MVEBU based platforms. 452 453 This option should be used with the new bootloaders 454 that remap the internal registers at 0xf1000000. 455 456 If the wrong DEBUG_MVEBU_UART* option is selected, 457 when u-boot hands over to the kernel, the system 458 silently crashes, with no serial output at all. 459 460 config DEBUG_VF_UART 461 bool "Vybrid UART" 462 depends on SOC_VF610 463 help 464 Say Y here if you want kernel low-level debugging support 465 on Vybrid based platforms. 466 467 config DEBUG_NOMADIK_UART 468 bool "Kernel low-level debugging messages via NOMADIK UART" 469 depends on ARCH_NOMADIK 470 select DEBUG_UART_PL01X 471 help 472 Say Y here if you want kernel low-level debugging support 473 on NOMADIK based platforms. 474 475 config DEBUG_NSPIRE_CLASSIC_UART 476 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART" 477 depends on ARCH_NSPIRE 478 select DEBUG_UART_8250 479 help 480 Say Y here if you want kernel low-level debugging support 481 on TI-NSPIRE classic models. 482 483 config DEBUG_NSPIRE_CX_UART 484 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART" 485 depends on ARCH_NSPIRE 486 select DEBUG_UART_PL01X 487 help 488 Say Y here if you want kernel low-level debugging support 489 on TI-NSPIRE CX models. 490 491 config DEBUG_OMAP2UART1 492 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)" 493 depends on ARCH_OMAP2PLUS 494 select DEBUG_OMAP2PLUS_UART 495 help 496 This covers at least h4, 2430sdp, 3430sdp, 3630sdp, 497 omap3 torpedo and 3530 lv som. 498 499 config DEBUG_OMAP2UART2 500 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2" 501 depends on ARCH_OMAP2PLUS 502 select DEBUG_OMAP2PLUS_UART 503 504 config DEBUG_OMAP2UART3 505 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)" 506 depends on ARCH_OMAP2PLUS 507 select DEBUG_OMAP2PLUS_UART 508 509 config DEBUG_OMAP3UART3 510 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)" 511 depends on ARCH_OMAP2PLUS 512 select DEBUG_OMAP2PLUS_UART 513 help 514 This covers at least cm_t3x, beagle, crane, devkit8000, 515 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook, 516 and 3517evm. 517 518 config DEBUG_OMAP4UART3 519 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)" 520 depends on ARCH_OMAP2PLUS 521 select DEBUG_OMAP2PLUS_UART 522 523 config DEBUG_OMAP3UART4 524 bool "Kernel low-level debugging messages via OMAP36XX UART4" 525 depends on ARCH_OMAP2PLUS 526 select DEBUG_OMAP2PLUS_UART 527 528 config DEBUG_OMAP4UART4 529 bool "Kernel low-level debugging messages via OMAP4/5 UART4" 530 depends on ARCH_OMAP2PLUS 531 select DEBUG_OMAP2PLUS_UART 532 533 config DEBUG_TI81XXUART1 534 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)" 535 depends on ARCH_OMAP2PLUS 536 select DEBUG_OMAP2PLUS_UART 537 538 config DEBUG_TI81XXUART2 539 bool "Kernel low-level debugging messages via TI81XX UART2" 540 depends on ARCH_OMAP2PLUS 541 select DEBUG_OMAP2PLUS_UART 542 543 config DEBUG_TI81XXUART3 544 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)" 545 depends on ARCH_OMAP2PLUS 546 select DEBUG_OMAP2PLUS_UART 547 548 config DEBUG_AM33XXUART1 549 bool "Kernel low-level debugging messages via AM33XX UART1" 550 depends on ARCH_OMAP2PLUS 551 select DEBUG_OMAP2PLUS_UART 552 553 config DEBUG_ZOOM_UART 554 bool "Kernel low-level debugging messages via Zoom2/3 UART" 555 depends on ARCH_OMAP2PLUS 556 select DEBUG_OMAP2PLUS_UART 557 558 config DEBUG_PICOXCELL_UART 559 depends on ARCH_PICOXCELL 560 bool "Use PicoXcell UART for low-level debug" 561 select DEBUG_UART_8250 562 help 563 Say Y here if you want kernel low-level debugging support 564 on PicoXcell based platforms. 565 566 config DEBUG_PXA_UART1 567 depends on ARCH_PXA 568 bool "Use PXA UART1 for low-level debug" 569 select DEBUG_UART_8250 570 help 571 Say Y here if you want kernel low-level debugging support 572 on PXA UART1. 573 574 config DEBUG_REALVIEW_STD_PORT 575 bool "RealView Default UART" 576 depends on ARCH_REALVIEW 577 select DEBUG_UART_PL01X 578 help 579 Say Y here if you want the debug print routines to direct 580 their output to the serial port on RealView EB, PB11MP, PBA8 581 and PBX platforms. 582 583 config DEBUG_REALVIEW_PB1176_PORT 584 bool "RealView PB1176 UART" 585 depends on MACH_REALVIEW_PB1176 586 select DEBUG_UART_PL01X 587 help 588 Say Y here if you want the debug print routines to direct 589 their output to the standard serial port on the RealView 590 PB1176 platform. 591 592 config DEBUG_RK29_UART0 593 bool "Kernel low-level debugging messages via Rockchip RK29 UART0" 594 depends on ARCH_ROCKCHIP 595 select DEBUG_UART_8250 596 help 597 Say Y here if you want kernel low-level debugging support 598 on Rockchip based platforms. 599 600 config DEBUG_RK29_UART1 601 bool "Kernel low-level debugging messages via Rockchip RK29 UART1" 602 depends on ARCH_ROCKCHIP 603 select DEBUG_UART_8250 604 help 605 Say Y here if you want kernel low-level debugging support 606 on Rockchip based platforms. 607 608 config DEBUG_RK29_UART2 609 bool "Kernel low-level debugging messages via Rockchip RK29 UART2" 610 depends on ARCH_ROCKCHIP 611 select DEBUG_UART_8250 612 help 613 Say Y here if you want kernel low-level debugging support 614 on Rockchip based platforms. 615 616 config DEBUG_RK3X_UART0 617 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0" 618 depends on ARCH_ROCKCHIP 619 select DEBUG_UART_8250 620 help 621 Say Y here if you want kernel low-level debugging support 622 on Rockchip based platforms. 623 624 config DEBUG_RK3X_UART1 625 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1" 626 depends on ARCH_ROCKCHIP 627 select DEBUG_UART_8250 628 help 629 Say Y here if you want kernel low-level debugging support 630 on Rockchip based platforms. 631 632 config DEBUG_RK3X_UART2 633 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2" 634 depends on ARCH_ROCKCHIP 635 select DEBUG_UART_8250 636 help 637 Say Y here if you want kernel low-level debugging support 638 on Rockchip based platforms. 639 640 config DEBUG_RK3X_UART3 641 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3" 642 depends on ARCH_ROCKCHIP 643 select DEBUG_UART_8250 644 help 645 Say Y here if you want kernel low-level debugging support 646 on Rockchip based platforms. 647 648 config DEBUG_RK32_UART2 649 bool "Kernel low-level debugging messages via Rockchip RK32 UART2" 650 depends on ARCH_ROCKCHIP 651 select DEBUG_UART_8250 652 help 653 Say Y here if you want kernel low-level debugging support 654 on Rockchip RK32xx based platforms. 655 656 config DEBUG_S3C_UART0 657 depends on PLAT_SAMSUNG 658 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 659 select DEBUG_S3C24XX_UART if ARCH_S3C24XX 660 select DEBUG_S5PV210_UART if ARCH_S5PV210 661 bool "Use Samsung S3C UART 0 for low-level debug" 662 help 663 Say Y here if you want the debug print routines to direct 664 their output to UART 0. The port must have been initialised 665 by the boot-loader before use. 666 667 config DEBUG_S3C_UART1 668 depends on PLAT_SAMSUNG 669 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 670 select DEBUG_S3C24XX_UART if ARCH_S3C24XX 671 select DEBUG_S5PV210_UART if ARCH_S5PV210 672 bool "Use Samsung S3C UART 1 for low-level debug" 673 help 674 Say Y here if you want the debug print routines to direct 675 their output to UART 1. The port must have been initialised 676 by the boot-loader before use. 677 678 config DEBUG_S3C_UART2 679 depends on PLAT_SAMSUNG 680 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 681 select DEBUG_S3C24XX_UART if ARCH_S3C24XX 682 select DEBUG_S5PV210_UART if ARCH_S5PV210 683 bool "Use Samsung S3C UART 2 for low-level debug" 684 help 685 Say Y here if you want the debug print routines to direct 686 their output to UART 2. The port must have been initialised 687 by the boot-loader before use. 688 689 config DEBUG_S3C_UART3 690 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210) 691 select DEBUG_EXYNOS_UART if ARCH_EXYNOS 692 select DEBUG_S5PV210_UART if ARCH_S5PV210 693 bool "Use Samsung S3C UART 3 for low-level debug" 694 help 695 Say Y here if you want the debug print routines to direct 696 their output to UART 3. The port must have been initialised 697 by the boot-loader before use. 698 699 config DEBUG_S3C2410_UART0 700 depends on ARCH_S3C24XX 701 select DEBUG_S3C2410_UART 702 bool "Use S3C2410/S3C2412 UART 0 for low-level debug" 703 help 704 Say Y here if you want the debug print routines to direct 705 their output to UART 0. The port must have been initialised 706 by the boot-loader before use. 707 708 config DEBUG_S3C2410_UART1 709 depends on ARCH_S3C24XX 710 select DEBUG_S3C2410_UART 711 bool "Use S3C2410/S3C2412 UART 1 for low-level debug" 712 help 713 Say Y here if you want the debug print routines to direct 714 their output to UART 1. The port must have been initialised 715 by the boot-loader before use. 716 717 config DEBUG_S3C2410_UART2 718 depends on ARCH_S3C24XX 719 select DEBUG_S3C2410_UART 720 bool "Use S3C2410/S3C2412 UART 2 for low-level debug" 721 help 722 Say Y here if you want the debug print routines to direct 723 their output to UART 2. The port must have been initialised 724 by the boot-loader before use. 725 726 config DEBUG_SOCFPGA_UART 727 depends on ARCH_SOCFPGA 728 bool "Use SOCFPGA UART for low-level debug" 729 select DEBUG_UART_8250 730 help 731 Say Y here if you want kernel low-level debugging support 732 on SOCFPGA based platforms. 733 734 config DEBUG_SUNXI_UART0 735 bool "Kernel low-level debugging messages via sunXi UART0" 736 depends on ARCH_SUNXI 737 select DEBUG_UART_8250 738 help 739 Say Y here if you want kernel low-level debugging support 740 on Allwinner A1X based platforms on the UART0. 741 742 config DEBUG_SUNXI_UART1 743 bool "Kernel low-level debugging messages via sunXi UART1" 744 depends on ARCH_SUNXI 745 select DEBUG_UART_8250 746 help 747 Say Y here if you want kernel low-level debugging support 748 on Allwinner A1X based platforms on the UART1. 749 750 config DEBUG_SUNXI_R_UART 751 bool "Kernel low-level debugging messages via sunXi R_UART" 752 depends on MACH_SUN6I || MACH_SUN8I 753 select DEBUG_UART_8250 754 help 755 Say Y here if you want kernel low-level debugging support 756 on Allwinner A31/A23 based platforms on the R_UART. 757 758 config TEGRA_DEBUG_UART_AUTO_ODMDATA 759 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA" 760 depends on ARCH_TEGRA 761 select DEBUG_TEGRA_UART 762 help 763 Automatically determines which UART to use for low-level 764 debug based on the ODMDATA value. This value is part of 765 the BCT, and is written to the boot memory device using 766 nvflash, or other flashing tool. When bits 19:18 are 3, 767 then bits 17:15 indicate which UART to use; 0/1/2/3/4 768 are UART A/B/C/D/E. 769 770 config TEGRA_DEBUG_UARTA 771 bool "Kernel low-level debugging messages via Tegra UART A" 772 depends on ARCH_TEGRA 773 select DEBUG_TEGRA_UART 774 help 775 Say Y here if you want kernel low-level debugging support 776 on Tegra based platforms. 777 778 config TEGRA_DEBUG_UARTB 779 bool "Kernel low-level debugging messages via Tegra UART B" 780 depends on ARCH_TEGRA 781 select DEBUG_TEGRA_UART 782 help 783 Say Y here if you want kernel low-level debugging support 784 on Tegra based platforms. 785 786 config TEGRA_DEBUG_UARTC 787 bool "Kernel low-level debugging messages via Tegra UART C" 788 depends on ARCH_TEGRA 789 select DEBUG_TEGRA_UART 790 help 791 Say Y here if you want kernel low-level debugging support 792 on Tegra based platforms. 793 794 config TEGRA_DEBUG_UARTD 795 bool "Kernel low-level debugging messages via Tegra UART D" 796 depends on ARCH_TEGRA 797 select DEBUG_TEGRA_UART 798 help 799 Say Y here if you want kernel low-level debugging support 800 on Tegra based platforms. 801 802 config TEGRA_DEBUG_UARTE 803 bool "Kernel low-level debugging messages via Tegra UART E" 804 depends on ARCH_TEGRA 805 select DEBUG_TEGRA_UART 806 help 807 Say Y here if you want kernel low-level debugging support 808 on Tegra based platforms. 809 810 config DEBUG_SIRFPRIMA2_UART1 811 bool "Kernel low-level debugging messages via SiRFprimaII UART1" 812 depends on ARCH_PRIMA2 813 help 814 Say Y here if you want the debug print routines to direct 815 their output to the uart1 port on SiRFprimaII devices. 816 817 config DEBUG_SIRFMARCO_UART1 818 bool "Kernel low-level debugging messages via SiRFmarco UART1" 819 depends on ARCH_MARCO 820 help 821 Say Y here if you want the debug print routines to direct 822 their output to the uart1 port on SiRFmarco devices. 823 824 config STIH41X_DEBUG_ASC2 825 bool "Use StiH415/416 ASC2 UART for low-level debug" 826 depends on ARCH_STI 827 select DEBUG_STI_UART 828 help 829 Say Y here if you want kernel low-level debugging support 830 on STiH415/416 based platforms like b2000, which has 831 default UART wired up to ASC2. 832 833 If unsure, say N. 834 835 config STIH41X_DEBUG_SBC_ASC1 836 bool "Use StiH415/416 SBC ASC1 UART for low-level debug" 837 depends on ARCH_STI 838 select DEBUG_STI_UART 839 help 840 Say Y here if you want kernel low-level debugging support 841 on STiH415/416 based platforms like b2020. which has 842 default UART wired up to SBC ASC1. 843 844 If unsure, say N. 845 846 config DEBUG_U300_UART 847 bool "Kernel low-level debugging messages via U300 UART0" 848 depends on ARCH_U300 849 select DEBUG_UART_PL01X 850 help 851 Say Y here if you want the debug print routines to direct 852 their output to the uart port on U300 devices. 853 854 config DEBUG_UX500_UART 855 depends on ARCH_U8500 856 bool "Use Ux500 UART for low-level debug" 857 help 858 Say Y here if you want kernel low-level debugging support 859 on Ux500 based platforms. 860 861 config DEBUG_MT6589_UART0 862 bool "Mediatek mt6589 UART0" 863 depends on ARCH_MEDIATEK 864 select DEBUG_UART_8250 865 help 866 Say Y here if you want kernel low-level debugging support 867 for Mediatek mt6589 based platforms on UART0. 868 869 config DEBUG_VEXPRESS_UART0_DETECT 870 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles" 871 depends on ARCH_VEXPRESS && CPU_CP15_MMU 872 help 873 This option enables a simple heuristic which tries to determine 874 the motherboard's memory map variant (original or RS1) and then 875 choose the relevant UART0 base address. 876 877 Note that this will only work with standard A-class core tiles, 878 and may fail with non-standard SMM or custom software models. 879 880 config DEBUG_VEXPRESS_UART0_CA9 881 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)" 882 depends on ARCH_VEXPRESS 883 select DEBUG_UART_PL01X 884 help 885 This option selects UART0 at 0x10009000. Except for custom models, 886 this applies only to the V2P-CA9 tile. 887 888 config DEBUG_VEXPRESS_UART0_RS1 889 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)" 890 depends on ARCH_VEXPRESS 891 select DEBUG_UART_PL01X 892 help 893 This option selects UART0 at 0x1c090000. This applies to most 894 of the tiles using the RS1 memory map, including all new A-class 895 core tiles, FPGA-based SMMs and software models. 896 897 config DEBUG_VEXPRESS_UART0_CRX 898 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)" 899 depends on ARCH_VEXPRESS && !MMU 900 select DEBUG_UART_PL01X 901 help 902 This option selects UART0 at 0xb0090000. This is appropriate for 903 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7 904 905 config DEBUG_VT8500_UART0 906 bool "Use UART0 on VIA/Wondermedia SoCs" 907 depends on ARCH_VT8500 908 help 909 This option selects UART0 on VIA/Wondermedia System-on-a-chip 910 devices, including VT8500, WM8505, WM8650 and WM8850. 911 912 config DEBUG_LL_UART_NONE 913 bool "No low-level debugging UART" 914 depends on !ARCH_MULTIPLATFORM 915 help 916 Say Y here if your platform doesn't provide a UART option 917 above. This relies on your platform choosing the right UART 918 definition internally in order for low-level debugging to 919 work. 920 921 config DEBUG_ICEDCC 922 bool "Kernel low-level debugging via EmbeddedICE DCC channel" 923 help 924 Say Y here if you want the debug print routines to direct 925 their output to the EmbeddedICE macrocell's DCC channel using 926 co-processor 14. This is known to work on the ARM9 style ICE 927 channel and on the XScale with the PEEDI. 928 929 Note that the system will appear to hang during boot if there 930 is nothing connected to read from the DCC. 931 932 config DEBUG_SEMIHOSTING 933 bool "Kernel low-level debug output via semihosting I/O" 934 help 935 Semihosting enables code running on an ARM target to use 936 the I/O facilities on a host debugger/emulator through a 937 simple SVC call. The host debugger or emulator must have 938 semihosting enabled for the special svc call to be trapped 939 otherwise the kernel will crash. 940 941 This is known to work with OpenOCD, as well as 942 ARM's Fast Models, or any other controlling environment 943 that implements semihosting. 944 945 For more details about semihosting, please see 946 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd. 947 948 config DEBUG_LL_UART_8250 949 bool "Kernel low-level debugging via 8250 UART" 950 help 951 Say Y here if you wish the debug print routes to direct 952 their output to an 8250 UART. You can use this option 953 to provide the parameters for the 8250 UART rather than 954 selecting one of the platform specific options above if 955 you know the parameters for the port. 956 957 This option is preferred over the platform specific 958 options; the platform specific options are deprecated 959 and will be soon removed. 960 961 config DEBUG_LL_UART_EFM32 962 bool "Kernel low-level debugging via efm32 UART" 963 depends on ARCH_EFM32 964 help 965 Say Y here if you want the debug print routines to direct 966 their output to an UART or USART port on efm32 based 967 machines. Use the following addresses for DEBUG_UART_PHYS: 968 969 0x4000c000 | USART0 970 0x4000c400 | USART1 971 0x4000c800 | USART2 972 0x4000e000 | UART0 973 0x4000e400 | UART1 974 975 config DEBUG_LL_UART_PL01X 976 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART" 977 help 978 Say Y here if you wish the debug print routes to direct 979 their output to a PL01x Primecell UART. You can use 980 this option to provide the parameters for the UART 981 rather than selecting one of the platform specific 982 options above if you know the parameters for the port. 983 984 This option is preferred over the platform specific 985 options; the platform specific options are deprecated 986 and will be soon removed. 987 988endchoice 989 990config DEBUG_EXYNOS_UART 991 bool 992 993config DEBUG_S3C2410_UART 994 bool 995 select DEBUG_S3C24XX_UART 996 997config DEBUG_S3C24XX_UART 998 bool 999 1000config DEBUG_S5PV210_UART 1001 bool 1002 1003config DEBUG_OMAP2PLUS_UART 1004 bool 1005 depends on ARCH_OMAP2PLUS 1006 1007config DEBUG_IMX_UART_PORT 1008 int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \ 1009 DEBUG_IMX25_UART || \ 1010 DEBUG_IMX21_IMX27_UART || \ 1011 DEBUG_IMX31_UART || \ 1012 DEBUG_IMX35_UART || \ 1013 DEBUG_IMX50_UART || \ 1014 DEBUG_IMX51_UART || \ 1015 DEBUG_IMX53_UART || \ 1016 DEBUG_IMX6Q_UART || \ 1017 DEBUG_IMX6SL_UART || \ 1018 DEBUG_IMX6SX_UART 1019 default 1 1020 depends on ARCH_MXC 1021 help 1022 Choose UART port on which kernel low-level debug messages 1023 should be output. 1024 1025config DEBUG_VF_UART_PORT 1026 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART 1027 default 1 1028 range 0 3 1029 depends on SOC_VF610 1030 help 1031 Choose UART port on which kernel low-level debug messages 1032 should be output. 1033 1034config DEBUG_TEGRA_UART 1035 bool 1036 depends on ARCH_TEGRA 1037 1038config DEBUG_STI_UART 1039 bool 1040 depends on ARCH_STI 1041 1042config DEBUG_LL_INCLUDE 1043 string 1044 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250 1045 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2 1046 default "debug/meson.S" if DEBUG_MESON_UARTAO 1047 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X 1048 default "debug/exynos.S" if DEBUG_EXYNOS_UART 1049 default "debug/efm32.S" if DEBUG_LL_UART_EFM32 1050 default "debug/icedcc.S" if DEBUG_ICEDCC 1051 default "debug/imx.S" if DEBUG_IMX1_UART || \ 1052 DEBUG_IMX25_UART || \ 1053 DEBUG_IMX21_IMX27_UART || \ 1054 DEBUG_IMX31_UART || \ 1055 DEBUG_IMX35_UART || \ 1056 DEBUG_IMX50_UART || \ 1057 DEBUG_IMX51_UART || \ 1058 DEBUG_IMX53_UART ||\ 1059 DEBUG_IMX6Q_UART || \ 1060 DEBUG_IMX6SL_UART || \ 1061 DEBUG_IMX6SX_UART 1062 default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM 1063 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART 1064 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART 1065 default "debug/s5pv210.S" if DEBUG_S5PV210_UART 1066 default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1 1067 default "debug/sti.S" if DEBUG_STI_UART 1068 default "debug/tegra.S" if DEBUG_TEGRA_UART 1069 default "debug/ux500.S" if DEBUG_UX500_UART 1070 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT 1071 default "debug/vf.S" if DEBUG_VF_UART 1072 default "debug/vt8500.S" if DEBUG_VT8500_UART0 1073 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1 1074 default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX 1075 default "mach/debug-macro.S" 1076 1077# Compatibility options for PL01x 1078config DEBUG_UART_PL01X 1079 def_bool ARCH_EP93XX || \ 1080 ARCH_INTEGRATOR || \ 1081 ARCH_SPEAR3XX || \ 1082 ARCH_SPEAR6XX || \ 1083 ARCH_SPEAR13XX || \ 1084 ARCH_VERSATILE 1085 1086# Compatibility options for 8250 1087config DEBUG_UART_8250 1088 def_bool ARCH_DOVE || ARCH_EBSA110 || \ 1089 (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \ 1090 ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \ 1091 ARCH_IOP33X || ARCH_IXP4XX || \ 1092 ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC 1093 1094# Compatibility options for BCM63xx 1095config DEBUG_UART_BCM63XX 1096 def_bool ARCH_BCM_63XX 1097 1098config DEBUG_UART_PHYS 1099 hex "Physical base address of debug UART" 1100 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0 1101 default 0x01c28000 if DEBUG_SUNXI_UART0 1102 default 0x01c28400 if DEBUG_SUNXI_UART1 1103 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1 1104 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2 1105 default 0x01f02800 if DEBUG_SUNXI_R_UART 1106 default 0x02530c00 if DEBUG_KEYSTONE_UART0 1107 default 0x02531000 if DEBUG_KEYSTONE_UART1 1108 default 0x03010fe0 if ARCH_RPC 1109 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \ 1110 DEBUG_VEXPRESS_UART0_CA9 1111 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT 1112 default 0x10124000 if DEBUG_RK3X_UART0 1113 default 0x10126000 if DEBUG_RK3X_UART1 1114 default 0x101f1000 if ARCH_VERSATILE 1115 default 0x101fb000 if DEBUG_NOMADIK_UART 1116 default 0x11006000 if DEBUG_MT6589_UART0 1117 default 0x16000000 if ARCH_INTEGRATOR 1118 default 0x18000300 if DEBUG_BCM_5301X 1119 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1 1120 default 0x20060000 if DEBUG_RK29_UART0 1121 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2 1122 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3 1123 default 0x20201000 if DEBUG_BCM2835 1124 default 0x3e000000 if DEBUG_BCM_KONA_UART 1125 default 0x4000e400 if DEBUG_LL_UART_EFM32 1126 default 0x40090000 if ARCH_LPC32XX 1127 default 0x40100000 if DEBUG_PXA_UART1 1128 default 0x42000000 if ARCH_GEMINI 1129 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 1130 DEBUG_S3C2410_UART0) 1131 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \ 1132 DEBUG_S3C2410_UART1) 1133 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \ 1134 DEBUG_S3C2410_UART2) 1135 default 0x78000000 if DEBUG_CNS3XXX 1136 default 0x7c0003f8 if FOOTBRIDGE 1137 default 0x78000000 if DEBUG_CNS3XXX 1138 default 0x80070000 if DEBUG_IMX23_UART 1139 default 0x80074000 if DEBUG_IMX28_UART 1140 default 0x80230000 if DEBUG_PICOXCELL_UART 1141 default 0x808c0000 if ARCH_EP93XX 1142 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART 1143 default 0xa9a00000 if DEBUG_MSM_UART 1144 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX 1145 default 0xc0013000 if DEBUG_U300_UART 1146 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN 1147 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN 1148 default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX 1149 default 0xd0012000 if DEBUG_MVEBU_UART 1150 default 0xc81004c0 if DEBUG_MESON_UARTAO 1151 default 0xd4017000 if DEBUG_MMP_UART2 1152 default 0xd4018000 if DEBUG_MMP_UART3 1153 default 0xe0000000 if ARCH_SPEAR13XX 1154 default 0xe4007000 if DEBUG_HIP04_UART 1155 default 0xf0000be0 if ARCH_EBSA110 1156 default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE 1157 default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \ 1158 ARCH_ORION5X 1159 default 0xf7fc9000 if DEBUG_BERLIN_UART 1160 default 0xf8b00000 if DEBUG_HIX5HD2_UART 1161 default 0xf991e000 if DEBUG_QCOM_UARTDM 1162 default 0xfcb00000 if DEBUG_HI3620_UART 1163 default 0xfe800000 if ARCH_IOP32X 1164 default 0xff690000 if DEBUG_RK32_UART2 1165 default 0xffc02000 if DEBUG_SOCFPGA_UART 1166 default 0xffd82340 if ARCH_IOP13XX 1167 default 0xfff36000 if DEBUG_HIGHBANK_UART 1168 default 0xfffe8600 if DEBUG_UART_BCM63XX 1169 default 0xfffff700 if ARCH_IOP33X 1170 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ 1171 DEBUG_LL_UART_EFM32 || \ 1172 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ 1173 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ 1174 DEBUG_UART_BCM63XX 1175 1176config DEBUG_UART_VIRT 1177 hex "Virtual base address of debug UART" 1178 default 0xe0010fe0 if ARCH_RPC 1179 default 0xe1000000 if DEBUG_MSM_UART 1180 default 0xf0000be0 if ARCH_EBSA110 1181 default 0xf01fb000 if DEBUG_NOMADIK_UART 1182 default 0xf0201000 if DEBUG_BCM2835 1183 default 0xf1000300 if DEBUG_BCM_5301X 1184 default 0xf1006000 if DEBUG_MT6589_UART0 1185 default 0xf11f1000 if ARCH_VERSATILE 1186 default 0xf1600000 if ARCH_INTEGRATOR 1187 default 0xf1c28000 if DEBUG_SUNXI_UART0 1188 default 0xf1c28400 if DEBUG_SUNXI_UART1 1189 default 0xf1f02800 if DEBUG_SUNXI_R_UART 1190 default 0xf2100000 if DEBUG_PXA_UART1 1191 default 0xf4090000 if ARCH_LPC32XX 1192 default 0xf4200000 if ARCH_GEMINI 1193 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 1194 DEBUG_S3C2410_UART0) 1195 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \ 1196 DEBUG_S3C2410_UART1) 1197 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \ 1198 DEBUG_S3C2410_UART2) 1199 default 0xf7fc9000 if DEBUG_BERLIN_UART 1200 default 0xf8007000 if DEBUG_HIP04_UART 1201 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9 1202 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1 1203 default 0xfa71e000 if DEBUG_QCOM_UARTDM 1204 default 0xfb002000 if DEBUG_CNS3XXX 1205 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT 1206 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT 1207 default 0xfcfe8600 if DEBUG_UART_BCM63XX 1208 default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX 1209 default 0xfd000000 if ARCH_SPEAR13XX 1210 default 0xfd012000 if ARCH_MV78XX0 1211 default 0xfde12000 if ARCH_DOVE 1212 default 0xfe012000 if ARCH_ORION5X 1213 default 0xf31004c0 if DEBUG_MESON_UARTAO 1214 default 0xfe017000 if DEBUG_MMP_UART2 1215 default 0xfe018000 if DEBUG_MMP_UART3 1216 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART 1217 default 0xfe230000 if DEBUG_PICOXCELL_UART 1218 default 0xfe300000 if DEBUG_BCM_KONA_UART 1219 default 0xfe800000 if ARCH_IOP32X 1220 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART 1221 default 0xfeb24000 if DEBUG_RK3X_UART0 1222 default 0xfeb26000 if DEBUG_RK3X_UART1 1223 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0 1224 default 0xfeb31000 if DEBUG_KEYSTONE_UART1 1225 default 0xfec02000 if DEBUG_SOCFPGA_UART 1226 default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE 1227 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0 1228 default 0xfec90000 if DEBUG_RK32_UART2 1229 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1 1230 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2 1231 default 0xfed60000 if DEBUG_RK29_UART0 1232 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2 1233 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3 1234 default 0xfedc0000 if ARCH_EP93XX 1235 default 0xfee003f8 if FOOTBRIDGE 1236 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART 1237 default 0xfee82340 if ARCH_IOP13XX 1238 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN 1239 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN 1240 default 0xfef36000 if DEBUG_HIGHBANK_UART 1241 default 0xfefff700 if ARCH_IOP33X 1242 default 0xff003000 if DEBUG_U300_UART 1243 default DEBUG_UART_PHYS if !MMU 1244 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ 1245 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ 1246 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ 1247 DEBUG_UART_BCM63XX 1248 1249config DEBUG_UART_8250_SHIFT 1250 int "Register offset shift for the 8250 debug UART" 1251 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1252 default 0 if FOOTBRIDGE || ARCH_IOP32X 1253 default 2 1254 1255config DEBUG_UART_8250_WORD 1256 bool "Use 32-bit accesses for 8250 UART" 1257 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1258 depends on DEBUG_UART_8250_SHIFT >= 2 1259 default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \ 1260 ARCH_KEYSTONE || \ 1261 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \ 1262 DEBUG_DAVINCI_DA8XX_UART2 || \ 1263 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 1264 1265config DEBUG_UART_8250_FLOW_CONTROL 1266 bool "Enable flow control for 8250 UART" 1267 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 1268 default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC 1269 1270config DEBUG_UNCOMPRESS 1271 bool 1272 depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG 1273 default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \ 1274 (!DEBUG_TEGRA_UART || !ZBOOT_ROM) 1275 help 1276 This option influences the normal decompressor output for 1277 multiplatform kernels. Normally, multiplatform kernels disable 1278 decompressor output because it is not possible to know where to 1279 send the decompressor output. 1280 1281 When this option is set, the selected DEBUG_LL output method 1282 will be re-used for normal decompressor output on multiplatform 1283 kernels. 1284 1285 1286config UNCOMPRESS_INCLUDE 1287 string 1288 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \ 1289 PLAT_SAMSUNG || ARCH_EFM32 1290 default "mach/uncompress.h" 1291 1292config EARLY_PRINTK 1293 bool "Early printk" 1294 depends on DEBUG_LL 1295 help 1296 Say Y here if you want to have an early console using the 1297 kernel low-level debugging functions. Add earlyprintk to your 1298 kernel parameters to enable this console. 1299 1300config OC_ETM 1301 bool "On-chip ETM and ETB" 1302 depends on ARM_AMBA 1303 help 1304 Enables the on-chip embedded trace macrocell and embedded trace 1305 buffer driver that will allow you to collect traces of the 1306 kernel code. 1307 1308config ARM_KPROBES_TEST 1309 tristate "Kprobes test module" 1310 depends on KPROBES && MODULES 1311 help 1312 Perform tests of kprobes API and instruction set simulation. 1313 1314config PID_IN_CONTEXTIDR 1315 bool "Write the current PID to the CONTEXTIDR register" 1316 depends on CPU_COPY_V6 1317 help 1318 Enabling this option causes the kernel to write the current PID to 1319 the PROCID field of the CONTEXTIDR register, at the expense of some 1320 additional instructions during context switch. Say Y here only if you 1321 are planning to use hardware trace tools with this kernel. 1322 1323config DEBUG_SET_MODULE_RONX 1324 bool "Set loadable kernel module data as NX and text as RO" 1325 depends on MODULES 1326 ---help--- 1327 This option helps catch unintended modifications to loadable 1328 kernel module's text and read-only data. It also prevents execution 1329 of module data. Such protection may interfere with run-time code 1330 patching and dynamic kernel tracing - and they might also protect 1331 against certain classes of kernel exploits. 1332 If in doubt, say "N". 1333 1334endmenu 1335