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 803e441845SRalf Baechle select DEBUG_INFO if !COMPILE_TEST 811da177e4SLinus Torvalds help 821da177e4SLinus Torvalds Select compile flags that produce code that can be processed by the 831da177e4SLinus Torvalds Corelis mksym utility and UDB Emulator. 841da177e4SLinus Torvalds 85f86a69b1SWu Zhangjinconfig DEBUG_ZBOOT 86f86a69b1SWu Zhangjin bool "Enable compressed kernel support debugging" 87f86a69b1SWu Zhangjin depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT 88f86a69b1SWu Zhangjin default n 89f86a69b1SWu Zhangjin help 90f86a69b1SWu Zhangjin If you want to add compressed kernel support to a new board, and the 91f86a69b1SWu Zhangjin board supports uart16550 compatible serial port, please select 92f86a69b1SWu Zhangjin SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to 93f86a69b1SWu Zhangjin debug it. 94f86a69b1SWu Zhangjin 95f86a69b1SWu Zhangjin If your board doesn't support uart16550 compatible serial port, you 96f86a69b1SWu Zhangjin can try to select SYS_SUPPORTS_ZBOOT and use the other methods to 97f86a69b1SWu Zhangjin debug it. for example, add a new serial port support just as 98f86a69b1SWu Zhangjin arch/mips/boot/compressed/uart-16550.c does. 99f86a69b1SWu Zhangjin 100f86a69b1SWu Zhangjin After the compressed kernel support works, please disable this option 101f86a69b1SWu Zhangjin to reduce the kernel image size and speed up the booting procedure a 102f86a69b1SWu Zhangjin little. 103f86a69b1SWu Zhangjin 104bba90760SDavid Daneyconfig SPINLOCK_TEST 105bba90760SDavid Daney bool "Enable spinlock timing tests in debugfs" 106bba90760SDavid Daney depends on DEBUG_FS 107bba90760SDavid Daney default n 108bba90760SDavid Daney help 109bba90760SDavid Daney Add several files to the debugfs to test spinlock speed. 110bba90760SDavid Daney 111d478b088SPaul Burtonconfig SCACHE_DEBUGFS 112d478b088SPaul Burton bool "L2 cache debugfs entries" 113d478b088SPaul Burton depends on DEBUG_FS 114d478b088SPaul Burton help 115d478b088SPaul Burton Enable this to allow parts of the L2 cache configuration, such as 116d478b088SPaul Burton whether or not prefetching is enabled, to be exposed to userland 117d478b088SPaul Burton via debugfs. 118d478b088SPaul Burton 119d478b088SPaul Burton If unsure, say N. 120d478b088SPaul Burton 1217e5e371eSJames Hoganmenuconfig MIPS_CPS_NS16550_BOOL 122609cf6f2SPaul Burton bool "CPS SMP NS16550 UART output" 123609cf6f2SPaul Burton depends on MIPS_CPS 124609cf6f2SPaul Burton help 125609cf6f2SPaul Burton Output debug information via an ns16550 compatible UART if exceptions 126609cf6f2SPaul Burton occur early in the boot process of a secondary core. 127609cf6f2SPaul Burton 1287e5e371eSJames Hoganif MIPS_CPS_NS16550_BOOL 1297e5e371eSJames Hogan 1307e5e371eSJames Hoganconfig MIPS_CPS_NS16550 1317e5e371eSJames Hogan def_bool MIPS_CPS_NS16550_BASE != 0 132609cf6f2SPaul Burton 133609cf6f2SPaul Burtonconfig MIPS_CPS_NS16550_BASE 134609cf6f2SPaul Burton hex "UART Base Address" 135609cf6f2SPaul Burton default 0x1b0003f8 if MIPS_MALTA 1367e5e371eSJames Hogan default 0 137609cf6f2SPaul Burton help 138609cf6f2SPaul Burton The base address of the ns16550 compatible UART on which to output 139609cf6f2SPaul Burton debug information from the early stages of core startup. 140609cf6f2SPaul Burton 1417e5e371eSJames Hogan This is only used if non-zero. 1427e5e371eSJames Hogan 143609cf6f2SPaul Burtonconfig MIPS_CPS_NS16550_SHIFT 144609cf6f2SPaul Burton int "UART Register Shift" 1457e5e371eSJames Hogan default 0 146609cf6f2SPaul Burton help 147609cf6f2SPaul Burton The number of bits to shift ns16550 register indices by in order to 148609cf6f2SPaul Burton form their addresses. That is, log base 2 of the span between 149609cf6f2SPaul Burton adjacent ns16550 registers in the system. 150609cf6f2SPaul Burton 151*ad42e0a8SSerge Seminconfig MIPS_CPS_NS16550_WIDTH 152*ad42e0a8SSerge Semin int "UART Register Width" 153*ad42e0a8SSerge Semin default 1 154*ad42e0a8SSerge Semin help 155*ad42e0a8SSerge Semin ns16550 registers width. UART registers IO access methods will be 156*ad42e0a8SSerge Semin selected in accordance with this parameter. By setting it to 1, 2 or 157*ad42e0a8SSerge Semin 4 UART registers will be accessed by means of lb/sb, lh/sh or lw/sw 158*ad42e0a8SSerge Semin instructions respectively. Any value not from that set activates 159*ad42e0a8SSerge Semin lb/sb instructions. 160*ad42e0a8SSerge Semin 1617e5e371eSJames Hoganendif # MIPS_CPS_NS16550_BOOL 162