11da177e4SLinus Torvaldsmenu "Kernel hacking" 21da177e4SLinus Torvalds 3192ef366SRalf Baechleconfig TRACE_IRQFLAGS_SUPPORT 4192ef366SRalf Baechle bool 5192ef366SRalf Baechle default y 6192ef366SRalf Baechle 71da177e4SLinus Torvaldssource "lib/Kconfig.debug" 81da177e4SLinus Torvalds 94dd92e15SRalf Baechleconfig EARLY_PRINTK 106a108a14SDavid Rientjes bool "Early printk" if EXPERT 114dd92e15SRalf Baechle depends on SYS_HAS_EARLY_PRINTK 124dd92e15SRalf Baechle default y 134dd92e15SRalf Baechle help 144dd92e15SRalf Baechle This option enables special console drivers which allow the kernel 154dd92e15SRalf Baechle to print messages very early in the bootup process. 164dd92e15SRalf Baechle 174dd92e15SRalf Baechle This is useful for kernel debugging when your machine crashes very 184dd92e15SRalf Baechle early before the console code is initialized. For normal operation, 194dd92e15SRalf Baechle it is not recommended because it looks ugly on some machines and 204dd92e15SRalf Baechle doesn't cooperate with an X server. You should normally say N here, 214dd92e15SRalf Baechle unless you want to debug such a crash. 224dd92e15SRalf Baechle 237cd93b89SYoichi Yuasaconfig EARLY_PRINTK_8250 24e6086557SRalf Baechle bool 25e6086557SRalf Baechle depends on EARLY_PRINTK && USE_GENERIC_EARLY_PRINTK_8250 26e6086557SRalf Baechle default y 277cd93b89SYoichi Yuasa help 28e6086557SRalf Baechle "8250/16550 and compatible serial early printk driver" 297cd93b89SYoichi Yuasa If you say Y here, it will be possible to use a 8250/16550 serial 307cd93b89SYoichi Yuasa port as the boot console. 317cd93b89SYoichi Yuasa 32e6086557SRalf Baechleconfig USE_GENERIC_EARLY_PRINTK_8250 33e6086557SRalf Baechle bool 34e6086557SRalf Baechle 356acc7d48SDmitri Vorobievconfig CMDLINE_BOOL 366acc7d48SDmitri Vorobiev bool "Built-in kernel command line" 376acc7d48SDmitri Vorobiev default n 386acc7d48SDmitri Vorobiev help 396acc7d48SDmitri Vorobiev For most systems, it is firmware or second stage bootloader that 406acc7d48SDmitri Vorobiev by default specifies the kernel command line options. However, 416acc7d48SDmitri Vorobiev it might be necessary or advantageous to either override the 426acc7d48SDmitri Vorobiev default kernel command line or add a few extra options to it. 436acc7d48SDmitri Vorobiev For such cases, this option allows you to hardcode your own 446acc7d48SDmitri Vorobiev command line options directly into the kernel. For that, you 456acc7d48SDmitri Vorobiev should choose 'Y' here, and fill in the extra boot arguments 466acc7d48SDmitri Vorobiev in CONFIG_CMDLINE. 476acc7d48SDmitri Vorobiev 486acc7d48SDmitri Vorobiev The built-in options will be concatenated to the default command 496acc7d48SDmitri Vorobiev line if CMDLINE_OVERRIDE is set to 'N'. Otherwise, the default 506acc7d48SDmitri Vorobiev command line will be ignored and replaced by the built-in string. 516acc7d48SDmitri Vorobiev 526acc7d48SDmitri Vorobiev Most MIPS systems will normally expect 'N' here and rely upon 536acc7d48SDmitri Vorobiev the command line from the firmware or the second-stage bootloader. 546acc7d48SDmitri Vorobiev 551da177e4SLinus Torvaldsconfig CMDLINE 561da177e4SLinus Torvalds string "Default kernel command string" 576acc7d48SDmitri Vorobiev depends on CMDLINE_BOOL 581da177e4SLinus Torvalds default "" 591da177e4SLinus Torvalds help 601da177e4SLinus Torvalds On some platforms, there is currently no way for the boot loader to 616acc7d48SDmitri Vorobiev pass arguments to the kernel. For these platforms, and for the cases 626acc7d48SDmitri Vorobiev when you want to add some extra options to the command line or ignore 636acc7d48SDmitri Vorobiev the default command line, you can supply some command-line options at 646acc7d48SDmitri Vorobiev build time by entering them here. In other cases you can specify 656acc7d48SDmitri Vorobiev kernel args so that you don't have to set them up in board prom 666acc7d48SDmitri Vorobiev initialization routines. 676acc7d48SDmitri Vorobiev 686acc7d48SDmitri Vorobiev For more information, see the CMDLINE_BOOL and CMDLINE_OVERRIDE 696acc7d48SDmitri Vorobiev options. 706acc7d48SDmitri Vorobiev 716acc7d48SDmitri Vorobievconfig CMDLINE_OVERRIDE 726b2aac42SMasanari Iida bool "Built-in command line overrides firmware arguments" 736acc7d48SDmitri Vorobiev default n 746acc7d48SDmitri Vorobiev depends on CMDLINE_BOOL 756acc7d48SDmitri Vorobiev help 766acc7d48SDmitri Vorobiev By setting this option to 'Y' you will have your kernel ignore 776acc7d48SDmitri Vorobiev command line arguments from firmware or second stage bootloader. 786acc7d48SDmitri Vorobiev Instead, the built-in command line will be used exclusively. 796acc7d48SDmitri Vorobiev 806acc7d48SDmitri Vorobiev Normally, you will choose 'N' here. 811da177e4SLinus Torvalds 821da177e4SLinus Torvaldsconfig SB1XXX_CORELIS 831da177e4SLinus Torvalds bool "Corelis Debugger" 841da177e4SLinus Torvalds depends on SIBYTE_SB1xxx_SOC 85*3e441845SRalf Baechle select DEBUG_INFO if !COMPILE_TEST 861da177e4SLinus Torvalds help 871da177e4SLinus Torvalds Select compile flags that produce code that can be processed by the 881da177e4SLinus Torvalds Corelis mksym utility and UDB Emulator. 891da177e4SLinus Torvalds 90f86a69b1SWu Zhangjinconfig DEBUG_ZBOOT 91f86a69b1SWu Zhangjin bool "Enable compressed kernel support debugging" 92f86a69b1SWu Zhangjin depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT 93f86a69b1SWu Zhangjin default n 94f86a69b1SWu Zhangjin help 95f86a69b1SWu Zhangjin If you want to add compressed kernel support to a new board, and the 96f86a69b1SWu Zhangjin board supports uart16550 compatible serial port, please select 97f86a69b1SWu Zhangjin SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to 98f86a69b1SWu Zhangjin debug it. 99f86a69b1SWu Zhangjin 100f86a69b1SWu Zhangjin If your board doesn't support uart16550 compatible serial port, you 101f86a69b1SWu Zhangjin can try to select SYS_SUPPORTS_ZBOOT and use the other methods to 102f86a69b1SWu Zhangjin debug it. for example, add a new serial port support just as 103f86a69b1SWu Zhangjin arch/mips/boot/compressed/uart-16550.c does. 104f86a69b1SWu Zhangjin 105f86a69b1SWu Zhangjin After the compressed kernel support works, please disable this option 106f86a69b1SWu Zhangjin to reduce the kernel image size and speed up the booting procedure a 107f86a69b1SWu Zhangjin little. 108f86a69b1SWu Zhangjin 109bba90760SDavid Daneyconfig SPINLOCK_TEST 110bba90760SDavid Daney bool "Enable spinlock timing tests in debugfs" 111bba90760SDavid Daney depends on DEBUG_FS 112bba90760SDavid Daney default n 113bba90760SDavid Daney help 114bba90760SDavid Daney Add several files to the debugfs to test spinlock speed. 115bba90760SDavid Daney 116d478b088SPaul Burtonconfig SCACHE_DEBUGFS 117d478b088SPaul Burton bool "L2 cache debugfs entries" 118d478b088SPaul Burton depends on DEBUG_FS 119d478b088SPaul Burton help 120d478b088SPaul Burton Enable this to allow parts of the L2 cache configuration, such as 121d478b088SPaul Burton whether or not prefetching is enabled, to be exposed to userland 122d478b088SPaul Burton via debugfs. 123d478b088SPaul Burton 124d478b088SPaul Burton If unsure, say N. 125d478b088SPaul Burton 126609cf6f2SPaul Burtonmenuconfig MIPS_CPS_NS16550 127609cf6f2SPaul Burton bool "CPS SMP NS16550 UART output" 128609cf6f2SPaul Burton depends on MIPS_CPS 129609cf6f2SPaul Burton help 130609cf6f2SPaul Burton Output debug information via an ns16550 compatible UART if exceptions 131609cf6f2SPaul Burton occur early in the boot process of a secondary core. 132609cf6f2SPaul Burton 133609cf6f2SPaul Burtonif MIPS_CPS_NS16550 134609cf6f2SPaul Burton 135609cf6f2SPaul Burtonconfig MIPS_CPS_NS16550_BASE 136609cf6f2SPaul Burton hex "UART Base Address" 137609cf6f2SPaul Burton default 0x1b0003f8 if MIPS_MALTA 138609cf6f2SPaul Burton help 139609cf6f2SPaul Burton The base address of the ns16550 compatible UART on which to output 140609cf6f2SPaul Burton debug information from the early stages of core startup. 141609cf6f2SPaul Burton 142609cf6f2SPaul Burtonconfig MIPS_CPS_NS16550_SHIFT 143609cf6f2SPaul Burton int "UART Register Shift" 144609cf6f2SPaul Burton default 0 if MIPS_MALTA 145609cf6f2SPaul Burton help 146609cf6f2SPaul Burton The number of bits to shift ns16550 register indices by in order to 147609cf6f2SPaul Burton form their addresses. That is, log base 2 of the span between 148609cf6f2SPaul Burton adjacent ns16550 registers in the system. 149609cf6f2SPaul Burton 150609cf6f2SPaul Burtonendif # MIPS_CPS_NS16550 151609cf6f2SPaul Burton 1521da177e4SLinus Torvaldsendmenu 153