1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 21da177e4SLinus Torvalds 3192ef366SRalf Baechleconfig TRACE_IRQFLAGS_SUPPORT 4192ef366SRalf Baechle bool 5192ef366SRalf Baechle default y 6192ef366SRalf Baechle 74dd92e15SRalf Baechleconfig EARLY_PRINTK 86a108a14SDavid Rientjes bool "Early printk" if EXPERT 94dd92e15SRalf Baechle depends on SYS_HAS_EARLY_PRINTK 104dd92e15SRalf Baechle default y 114dd92e15SRalf Baechle help 124dd92e15SRalf Baechle This option enables special console drivers which allow the kernel 134dd92e15SRalf Baechle to print messages very early in the bootup process. 144dd92e15SRalf Baechle 154dd92e15SRalf Baechle This is useful for kernel debugging when your machine crashes very 164dd92e15SRalf Baechle early before the console code is initialized. For normal operation, 174dd92e15SRalf Baechle it is not recommended because it looks ugly on some machines and 184dd92e15SRalf Baechle doesn't cooperate with an X server. You should normally say N here, 194dd92e15SRalf Baechle unless you want to debug such a crash. 204dd92e15SRalf Baechle 217cd93b89SYoichi Yuasaconfig EARLY_PRINTK_8250 22e6086557SRalf Baechle bool 23e6086557SRalf Baechle depends on EARLY_PRINTK && USE_GENERIC_EARLY_PRINTK_8250 24e6086557SRalf Baechle default y 257cd93b89SYoichi Yuasa help 26e6086557SRalf Baechle "8250/16550 and compatible serial early printk driver" 277cd93b89SYoichi Yuasa If you say Y here, it will be possible to use a 8250/16550 serial 287cd93b89SYoichi Yuasa port as the boot console. 297cd93b89SYoichi Yuasa 30e6086557SRalf Baechleconfig USE_GENERIC_EARLY_PRINTK_8250 31e6086557SRalf Baechle bool 32e6086557SRalf Baechle 336acc7d48SDmitri Vorobievconfig CMDLINE_BOOL 346acc7d48SDmitri Vorobiev bool "Built-in kernel command line" 356acc7d48SDmitri Vorobiev help 366acc7d48SDmitri Vorobiev For most systems, it is firmware or second stage bootloader that 376acc7d48SDmitri Vorobiev by default specifies the kernel command line options. However, 386acc7d48SDmitri Vorobiev it might be necessary or advantageous to either override the 396acc7d48SDmitri Vorobiev default kernel command line or add a few extra options to it. 406acc7d48SDmitri Vorobiev For such cases, this option allows you to hardcode your own 416acc7d48SDmitri Vorobiev command line options directly into the kernel. For that, you 426acc7d48SDmitri Vorobiev should choose 'Y' here, and fill in the extra boot arguments 436acc7d48SDmitri Vorobiev in CONFIG_CMDLINE. 446acc7d48SDmitri Vorobiev 456acc7d48SDmitri Vorobiev The built-in options will be concatenated to the default command 466acc7d48SDmitri Vorobiev line if CMDLINE_OVERRIDE is set to 'N'. Otherwise, the default 476acc7d48SDmitri Vorobiev command line will be ignored and replaced by the built-in string. 486acc7d48SDmitri Vorobiev 496acc7d48SDmitri Vorobiev Most MIPS systems will normally expect 'N' here and rely upon 506acc7d48SDmitri Vorobiev the command line from the firmware or the second-stage bootloader. 516acc7d48SDmitri Vorobiev 521da177e4SLinus Torvaldsconfig CMDLINE 531da177e4SLinus Torvalds string "Default kernel command string" 546acc7d48SDmitri Vorobiev depends on CMDLINE_BOOL 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 depends on CMDLINE_BOOL 706acc7d48SDmitri Vorobiev help 716acc7d48SDmitri Vorobiev By setting this option to 'Y' you will have your kernel ignore 726acc7d48SDmitri Vorobiev command line arguments from firmware or second stage bootloader. 736acc7d48SDmitri Vorobiev Instead, the built-in command line will be used exclusively. 746acc7d48SDmitri Vorobiev 756acc7d48SDmitri Vorobiev Normally, you will choose 'N' here. 761da177e4SLinus Torvalds 771da177e4SLinus Torvaldsconfig SB1XXX_CORELIS 781da177e4SLinus Torvalds bool "Corelis Debugger" 791da177e4SLinus Torvalds depends on SIBYTE_SB1xxx_SOC 80e87f69a5SJulian Braha select DEBUG_KERNEL if !COMPILE_TEST 813e441845SRalf Baechle select DEBUG_INFO if !COMPILE_TEST 821da177e4SLinus Torvalds help 831da177e4SLinus Torvalds Select compile flags that produce code that can be processed by the 841da177e4SLinus Torvalds Corelis mksym utility and UDB Emulator. 851da177e4SLinus Torvalds 86f86a69b1SWu Zhangjinconfig DEBUG_ZBOOT 87f86a69b1SWu Zhangjin bool "Enable compressed kernel support debugging" 88f86a69b1SWu Zhangjin depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT 89f86a69b1SWu Zhangjin default n 90f86a69b1SWu Zhangjin help 91f86a69b1SWu Zhangjin If you want to add compressed kernel support to a new board, and the 92f86a69b1SWu Zhangjin board supports uart16550 compatible serial port, please select 93f86a69b1SWu Zhangjin SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to 94f86a69b1SWu Zhangjin debug it. 95f86a69b1SWu Zhangjin 96f86a69b1SWu Zhangjin If your board doesn't support uart16550 compatible serial port, you 97f86a69b1SWu Zhangjin can try to select SYS_SUPPORTS_ZBOOT and use the other methods to 98f86a69b1SWu Zhangjin debug it. for example, add a new serial port support just as 99f86a69b1SWu Zhangjin arch/mips/boot/compressed/uart-16550.c does. 100f86a69b1SWu Zhangjin 101f86a69b1SWu Zhangjin After the compressed kernel support works, please disable this option 102f86a69b1SWu Zhangjin to reduce the kernel image size and speed up the booting procedure a 103f86a69b1SWu Zhangjin little. 104f86a69b1SWu Zhangjin 105*f92a05b9SPaul Cercueilconfig ZBOOT_INGENIC_UART 106*f92a05b9SPaul Cercueil int "UART to use for compressed kernel debugging" 107*f92a05b9SPaul Cercueil depends on DEBUG_ZBOOT && MACH_INGENIC_SOC 108*f92a05b9SPaul Cercueil default 0 109*f92a05b9SPaul Cercueil range 0 4 110*f92a05b9SPaul Cercueil help 111*f92a05b9SPaul Cercueil Specify the UART that should be used for compressed kernel debugging. 112*f92a05b9SPaul Cercueil 113bba90760SDavid Daneyconfig SPINLOCK_TEST 114bba90760SDavid Daney bool "Enable spinlock timing tests in debugfs" 115bba90760SDavid Daney depends on DEBUG_FS 116bba90760SDavid Daney default n 117bba90760SDavid Daney help 118bba90760SDavid Daney Add several files to the debugfs to test spinlock speed. 119bba90760SDavid Daney 120d478b088SPaul Burtonconfig SCACHE_DEBUGFS 121d478b088SPaul Burton bool "L2 cache debugfs entries" 122d478b088SPaul Burton depends on DEBUG_FS 123d478b088SPaul Burton help 124d478b088SPaul Burton Enable this to allow parts of the L2 cache configuration, such as 125d478b088SPaul Burton whether or not prefetching is enabled, to be exposed to userland 126d478b088SPaul Burton via debugfs. 127d478b088SPaul Burton 128d478b088SPaul Burton If unsure, say N. 129d478b088SPaul Burton 1307e5e371eSJames Hoganmenuconfig MIPS_CPS_NS16550_BOOL 131609cf6f2SPaul Burton bool "CPS SMP NS16550 UART output" 132609cf6f2SPaul Burton depends on MIPS_CPS 133609cf6f2SPaul Burton help 134609cf6f2SPaul Burton Output debug information via an ns16550 compatible UART if exceptions 135609cf6f2SPaul Burton occur early in the boot process of a secondary core. 136609cf6f2SPaul Burton 1377e5e371eSJames Hoganif MIPS_CPS_NS16550_BOOL 1387e5e371eSJames Hogan 1397e5e371eSJames Hoganconfig MIPS_CPS_NS16550 1407e5e371eSJames Hogan def_bool MIPS_CPS_NS16550_BASE != 0 141609cf6f2SPaul Burton 142609cf6f2SPaul Burtonconfig MIPS_CPS_NS16550_BASE 143609cf6f2SPaul Burton hex "UART Base Address" 144609cf6f2SPaul Burton default 0x1b0003f8 if MIPS_MALTA 1457e5e371eSJames Hogan default 0 146609cf6f2SPaul Burton help 147609cf6f2SPaul Burton The base address of the ns16550 compatible UART on which to output 148609cf6f2SPaul Burton debug information from the early stages of core startup. 149609cf6f2SPaul Burton 1507e5e371eSJames Hogan This is only used if non-zero. 1517e5e371eSJames Hogan 152609cf6f2SPaul Burtonconfig MIPS_CPS_NS16550_SHIFT 153609cf6f2SPaul Burton int "UART Register Shift" 1547e5e371eSJames Hogan default 0 155609cf6f2SPaul Burton help 156609cf6f2SPaul Burton The number of bits to shift ns16550 register indices by in order to 157609cf6f2SPaul Burton form their addresses. That is, log base 2 of the span between 158609cf6f2SPaul Burton adjacent ns16550 registers in the system. 159609cf6f2SPaul Burton 160ad42e0a8SSerge Seminconfig MIPS_CPS_NS16550_WIDTH 161ad42e0a8SSerge Semin int "UART Register Width" 162ad42e0a8SSerge Semin default 1 163ad42e0a8SSerge Semin help 164ad42e0a8SSerge Semin ns16550 registers width. UART registers IO access methods will be 165ad42e0a8SSerge Semin selected in accordance with this parameter. By setting it to 1, 2 or 166ad42e0a8SSerge Semin 4 UART registers will be accessed by means of lb/sb, lh/sh or lw/sw 167ad42e0a8SSerge Semin instructions respectively. Any value not from that set activates 168ad42e0a8SSerge Semin lb/sb instructions. 169ad42e0a8SSerge Semin 1707e5e371eSJames Hoganendif # MIPS_CPS_NS16550_BOOL 171