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 23*7cd93b89SYoichi Yuasaconfig EARLY_PRINTK_8250 24*7cd93b89SYoichi Yuasa bool "8250/16550 and compatible serial early printk driver" 25*7cd93b89SYoichi Yuasa depends on EARLY_PRINTK 26*7cd93b89SYoichi Yuasa default n 27*7cd93b89SYoichi Yuasa help 28*7cd93b89SYoichi Yuasa If you say Y here, it will be possible to use a 8250/16550 serial 29*7cd93b89SYoichi Yuasa port as the boot console. 30*7cd93b89SYoichi Yuasa 316acc7d48SDmitri Vorobievconfig CMDLINE_BOOL 326acc7d48SDmitri Vorobiev bool "Built-in kernel command line" 336acc7d48SDmitri Vorobiev default n 346acc7d48SDmitri Vorobiev help 356acc7d48SDmitri Vorobiev For most systems, it is firmware or second stage bootloader that 366acc7d48SDmitri Vorobiev by default specifies the kernel command line options. However, 376acc7d48SDmitri Vorobiev it might be necessary or advantageous to either override the 386acc7d48SDmitri Vorobiev default kernel command line or add a few extra options to it. 396acc7d48SDmitri Vorobiev For such cases, this option allows you to hardcode your own 406acc7d48SDmitri Vorobiev command line options directly into the kernel. For that, you 416acc7d48SDmitri Vorobiev should choose 'Y' here, and fill in the extra boot arguments 426acc7d48SDmitri Vorobiev in CONFIG_CMDLINE. 436acc7d48SDmitri Vorobiev 446acc7d48SDmitri Vorobiev The built-in options will be concatenated to the default command 456acc7d48SDmitri Vorobiev line if CMDLINE_OVERRIDE is set to 'N'. Otherwise, the default 466acc7d48SDmitri Vorobiev command line will be ignored and replaced by the built-in string. 476acc7d48SDmitri Vorobiev 486acc7d48SDmitri Vorobiev Most MIPS systems will normally expect 'N' here and rely upon 496acc7d48SDmitri Vorobiev the command line from the firmware or the second-stage bootloader. 506acc7d48SDmitri Vorobiev 511da177e4SLinus Torvaldsconfig CMDLINE 521da177e4SLinus Torvalds string "Default kernel command string" 536acc7d48SDmitri Vorobiev depends on CMDLINE_BOOL 541da177e4SLinus Torvalds default "" 551da177e4SLinus Torvalds help 561da177e4SLinus Torvalds On some platforms, there is currently no way for the boot loader to 576acc7d48SDmitri Vorobiev pass arguments to the kernel. For these platforms, and for the cases 586acc7d48SDmitri Vorobiev when you want to add some extra options to the command line or ignore 596acc7d48SDmitri Vorobiev the default command line, you can supply some command-line options at 606acc7d48SDmitri Vorobiev build time by entering them here. In other cases you can specify 616acc7d48SDmitri Vorobiev kernel args so that you don't have to set them up in board prom 626acc7d48SDmitri Vorobiev initialization routines. 636acc7d48SDmitri Vorobiev 646acc7d48SDmitri Vorobiev For more information, see the CMDLINE_BOOL and CMDLINE_OVERRIDE 656acc7d48SDmitri Vorobiev options. 666acc7d48SDmitri Vorobiev 676acc7d48SDmitri Vorobievconfig CMDLINE_OVERRIDE 686b2aac42SMasanari Iida bool "Built-in command line overrides firmware arguments" 696acc7d48SDmitri Vorobiev default n 706acc7d48SDmitri Vorobiev depends on CMDLINE_BOOL 716acc7d48SDmitri Vorobiev help 726acc7d48SDmitri Vorobiev By setting this option to 'Y' you will have your kernel ignore 736acc7d48SDmitri Vorobiev command line arguments from firmware or second stage bootloader. 746acc7d48SDmitri Vorobiev Instead, the built-in command line will be used exclusively. 756acc7d48SDmitri Vorobiev 766acc7d48SDmitri Vorobiev Normally, you will choose 'N' here. 771da177e4SLinus Torvalds 789349075aSRalf Baechleconfig SMTC_IDLE_HOOK_DEBUG 79c68644d3SRalf Baechle bool "Enable additional debug checks before going into CPU idle loop" 80c68644d3SRalf Baechle depends on DEBUG_KERNEL && MIPS_MT_SMTC 81c68644d3SRalf Baechle help 82c68644d3SRalf Baechle This option enables Enable additional debug checks before going into 83c68644d3SRalf Baechle CPU idle loop. For details on these checks, see 84c68644d3SRalf Baechle arch/mips/kernel/smtc.c. This debugging option result in significant 85c68644d3SRalf Baechle overhead so should be disabled in production kernels. 86c68644d3SRalf Baechle 871da177e4SLinus Torvaldsconfig SB1XXX_CORELIS 881da177e4SLinus Torvalds bool "Corelis Debugger" 891da177e4SLinus Torvalds depends on SIBYTE_SB1xxx_SOC 901da177e4SLinus Torvalds select DEBUG_INFO 911da177e4SLinus Torvalds help 921da177e4SLinus Torvalds Select compile flags that produce code that can be processed by the 931da177e4SLinus Torvalds Corelis mksym utility and UDB Emulator. 941da177e4SLinus Torvalds 951da177e4SLinus Torvaldsconfig RUNTIME_DEBUG 961da177e4SLinus Torvalds bool "Enable run-time debugging" 971da177e4SLinus Torvalds depends on DEBUG_KERNEL 981da177e4SLinus Torvalds help 991da177e4SLinus Torvalds If you say Y here, some debugging macros will do run-time checking. 1001da177e4SLinus Torvalds If you say N here, those macros will mostly turn to no-ops. See 10100ace207SDmitri Vorobiev arch/mips/include/asm/debug.h for debugging macros. 1021da177e4SLinus Torvalds If unsure, say N. 1031da177e4SLinus Torvalds 104f86a69b1SWu Zhangjinconfig DEBUG_ZBOOT 105f86a69b1SWu Zhangjin bool "Enable compressed kernel support debugging" 106f86a69b1SWu Zhangjin depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT 107f86a69b1SWu Zhangjin default n 108f86a69b1SWu Zhangjin help 109f86a69b1SWu Zhangjin If you want to add compressed kernel support to a new board, and the 110f86a69b1SWu Zhangjin board supports uart16550 compatible serial port, please select 111f86a69b1SWu Zhangjin SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to 112f86a69b1SWu Zhangjin debug it. 113f86a69b1SWu Zhangjin 114f86a69b1SWu Zhangjin If your board doesn't support uart16550 compatible serial port, you 115f86a69b1SWu Zhangjin can try to select SYS_SUPPORTS_ZBOOT and use the other methods to 116f86a69b1SWu Zhangjin debug it. for example, add a new serial port support just as 117f86a69b1SWu Zhangjin arch/mips/boot/compressed/uart-16550.c does. 118f86a69b1SWu Zhangjin 119f86a69b1SWu Zhangjin After the compressed kernel support works, please disable this option 120f86a69b1SWu Zhangjin to reduce the kernel image size and speed up the booting procedure a 121f86a69b1SWu Zhangjin little. 122f86a69b1SWu Zhangjin 123bba90760SDavid Daneyconfig SPINLOCK_TEST 124bba90760SDavid Daney bool "Enable spinlock timing tests in debugfs" 125bba90760SDavid Daney depends on DEBUG_FS 126bba90760SDavid Daney default n 127bba90760SDavid Daney help 128bba90760SDavid Daney Add several files to the debugfs to test spinlock speed. 129bba90760SDavid Daney 1301da177e4SLinus Torvaldsendmenu 131