11da177e4SLinus Torvaldsmenu "Kernel hacking" 21da177e4SLinus Torvalds 31da177e4SLinus Torvaldssource "lib/Kconfig.debug" 41da177e4SLinus Torvalds 51da177e4SLinus Torvaldsconfig SH_STANDARD_BIOS 61da177e4SLinus Torvalds bool "Use LinuxSH standard BIOS" 71da177e4SLinus Torvalds help 81da177e4SLinus Torvalds Say Y here if your target has the gdb-sh-stub 91da177e4SLinus Torvalds package from www.m17n.org (or any conforming standard LinuxSH BIOS) 101da177e4SLinus Torvalds in FLASH or EPROM. The kernel will use standard BIOS calls during 111da177e4SLinus Torvalds boot for various housekeeping tasks (including calls to read and 121da177e4SLinus Torvalds write characters to a system console, get a MAC address from an 131da177e4SLinus Torvalds on-board Ethernet interface, and shut down the hardware). Note this 141da177e4SLinus Torvalds does not work with machines with an existing operating system in 151da177e4SLinus Torvalds mask ROM and no flash (WindowsCE machines fall in this category). 161da177e4SLinus Torvalds If unsure, say N. 171da177e4SLinus Torvalds 181da177e4SLinus Torvaldsconfig EARLY_SCIF_CONSOLE 191da177e4SLinus Torvalds bool "Use early SCIF console" 206fc21b82SPaul Mundt help 216fc21b82SPaul Mundt This enables an early console using a fixed SCIF port. This can 226fc21b82SPaul Mundt be used by platforms that are either not running the SH 236fc21b82SPaul Mundt standard BIOS, or do not wish to use the BIOS callbacks for the 246fc21b82SPaul Mundt serial I/O. 256fc21b82SPaul Mundt 266fc21b82SPaul Mundtconfig EARLY_SCIF_CONSOLE_PORT 276fc21b82SPaul Mundt hex "SCIF port for early console" 286fc21b82SPaul Mundt depends on EARLY_SCIF_CONSOLE 296fc21b82SPaul Mundt default "0xffe00000" if CPU_SUBTYPE_SH7780 306fc21b82SPaul Mundt default "0xfffe9800" if CPU_SUBTYPE_SH72060 316fc21b82SPaul Mundt default "0xffe80000" if CPU_SH4 321da177e4SLinus Torvalds 331da177e4SLinus Torvaldsconfig EARLY_PRINTK 341da177e4SLinus Torvalds bool "Early printk support" 351da177e4SLinus Torvalds depends on SH_STANDARD_BIOS || EARLY_SCIF_CONSOLE 361da177e4SLinus Torvalds help 371da177e4SLinus Torvalds Say Y here to redirect kernel printk messages to the serial port 381da177e4SLinus Torvalds used by the SH-IPL bootloader, starting very early in the boot 391da177e4SLinus Torvalds process and ending when the kernel's serial console is initialised. 401da177e4SLinus Torvalds This option is only useful porting the kernel to a new machine, 411da177e4SLinus Torvalds when the kernel may crash or hang before the serial console is 421da177e4SLinus Torvalds initialised. If unsure, say N. 431da177e4SLinus Torvalds 446fc21b82SPaul Mundt On devices that are running SH-IPL and want to keep the port 456fc21b82SPaul Mundt initialization consistent while not using the BIOS callbacks, 466fc21b82SPaul Mundt select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using 476fc21b82SPaul Mundt the kernel command line option to toggle back and forth. 486fc21b82SPaul Mundt 49d153ea88SPaul Mundtconfig DEBUG_STACKOVERFLOW 50d153ea88SPaul Mundt bool "Check for stack overflows" 51d153ea88SPaul Mundt depends on DEBUG_KERNEL 52d153ea88SPaul Mundt help 53d153ea88SPaul Mundt This option will cause messages to be printed if free stack space 54d153ea88SPaul Mundt drops below a certain limit. 55d153ea88SPaul Mundt 56d153ea88SPaul Mundtconfig DEBUG_STACK_USAGE 57d153ea88SPaul Mundt bool "Stack utilization instrumentation" 58d153ea88SPaul Mundt depends on DEBUG_KERNEL 59d153ea88SPaul Mundt help 60d153ea88SPaul Mundt Enables the display of the minimum amount of free stack which each 61d153ea88SPaul Mundt task has ever had available in the sysrq-T and sysrq-P debug output. 62d153ea88SPaul Mundt 63d153ea88SPaul Mundt This option will slow down process creation somewhat. 64d153ea88SPaul Mundt 65a6a31139SPaul Mundtconfig 4KSTACKS 66a6a31139SPaul Mundt bool "Use 4Kb for kernel stacks instead of 8Kb" 67a6a31139SPaul Mundt depends on DEBUG_KERNEL 68a6a31139SPaul Mundt help 69a6a31139SPaul Mundt If you say Y here the kernel will use a 4Kb stacksize for the 70a6a31139SPaul Mundt kernel stack attached to each process/thread. This facilitates 71a6a31139SPaul Mundt running more threads on a system and also reduces the pressure 72a6a31139SPaul Mundt on the VM subsystem for higher order allocations. This option 73a6a31139SPaul Mundt will also use IRQ stacks to compensate for the reduced stackspace. 74a6a31139SPaul Mundt 751da177e4SLinus Torvaldsconfig KGDB 761da177e4SLinus Torvalds bool "Include KGDB kernel debugger" 772549b322SPaul Mundt select FRAME_POINTER 781da177e4SLinus Torvalds help 791da177e4SLinus Torvalds Include in-kernel hooks for kgdb, the Linux kernel source level 801da177e4SLinus Torvalds debugger. See <http://kgdb.sourceforge.net/> for more information. 811da177e4SLinus Torvalds Unless you are intending to debug the kernel, say N here. 821da177e4SLinus Torvalds 831da177e4SLinus Torvaldsmenu "KGDB configuration options" 841da177e4SLinus Torvalds depends on KGDB 851da177e4SLinus Torvalds 861da177e4SLinus Torvaldsconfig MORE_COMPILE_OPTIONS 871da177e4SLinus Torvalds bool "Add any additional compile options" 881da177e4SLinus Torvalds help 891da177e4SLinus Torvalds If you want to add additional CFLAGS to the kernel build, enable this 901da177e4SLinus Torvalds option and then enter what you would like to add in the next question. 911da177e4SLinus Torvalds Note however that -g is already appended with the selection of KGDB. 921da177e4SLinus Torvalds 931da177e4SLinus Torvaldsconfig COMPILE_OPTIONS 941da177e4SLinus Torvalds string "Additional compile arguments" 951da177e4SLinus Torvalds depends on MORE_COMPILE_OPTIONS 961da177e4SLinus Torvalds 971da177e4SLinus Torvaldsconfig KGDB_NMI 981da177e4SLinus Torvalds bool "Enter KGDB on NMI" 991da177e4SLinus Torvalds default n 1001da177e4SLinus Torvalds 1011da177e4SLinus Torvaldsconfig KGDB_THREAD 1021da177e4SLinus Torvalds bool "Include KGDB thread support" 1031da177e4SLinus Torvalds default y 1041da177e4SLinus Torvalds 1051da177e4SLinus Torvaldsconfig SH_KGDB_CONSOLE 1061da177e4SLinus Torvalds bool "Console messages through GDB" 1071da177e4SLinus Torvalds default n 1081da177e4SLinus Torvalds 1091da177e4SLinus Torvaldsconfig KGDB_SYSRQ 1101da177e4SLinus Torvalds bool "Allow SysRq 'G' to enter KGDB" 1111da177e4SLinus Torvalds default y 1121da177e4SLinus Torvalds 1131da177e4SLinus Torvaldsconfig KGDB_KERNEL_ASSERTS 1141da177e4SLinus Torvalds bool "Include KGDB kernel assertions" 1151da177e4SLinus Torvalds default n 1161da177e4SLinus Torvalds 1171da177e4SLinus Torvaldscomment "Serial port setup" 1181da177e4SLinus Torvalds 1191da177e4SLinus Torvaldsconfig KGDB_DEFPORT 1201da177e4SLinus Torvalds int "Port number (ttySCn)" 1211da177e4SLinus Torvalds default "1" 1221da177e4SLinus Torvalds 1231da177e4SLinus Torvaldsconfig KGDB_DEFBAUD 1241da177e4SLinus Torvalds int "Baud rate" 1251da177e4SLinus Torvalds default "115200" 1261da177e4SLinus Torvalds 1271da177e4SLinus Torvaldschoice 1281da177e4SLinus Torvalds prompt "Parity" 1291da177e4SLinus Torvalds depends on KGDB 1301da177e4SLinus Torvalds default KGDB_DEFPARITY_N 1311da177e4SLinus Torvalds 1321da177e4SLinus Torvaldsconfig KGDB_DEFPARITY_N 1331da177e4SLinus Torvalds bool "None" 1341da177e4SLinus Torvalds 1351da177e4SLinus Torvaldsconfig KGDB_DEFPARITY_E 1361da177e4SLinus Torvalds bool "Even" 1371da177e4SLinus Torvalds 1381da177e4SLinus Torvaldsconfig KGDB_DEFPARITY_O 1391da177e4SLinus Torvalds bool "Odd" 1401da177e4SLinus Torvalds 1411da177e4SLinus Torvaldsendchoice 1421da177e4SLinus Torvalds 1431da177e4SLinus Torvaldschoice 1441da177e4SLinus Torvalds prompt "Data bits" 1451da177e4SLinus Torvalds depends on KGDB 1461da177e4SLinus Torvalds default KGDB_DEFBITS_8 1471da177e4SLinus Torvalds 1481da177e4SLinus Torvaldsconfig KGDB_DEFBITS_8 1491da177e4SLinus Torvalds bool "8" 1501da177e4SLinus Torvalds 1511da177e4SLinus Torvaldsconfig KGDB_DEFBITS_7 1521da177e4SLinus Torvalds bool "7" 1531da177e4SLinus Torvalds 1541da177e4SLinus Torvaldsendchoice 1551da177e4SLinus Torvalds 1561da177e4SLinus Torvaldsendmenu 1571da177e4SLinus Torvalds 1581da177e4SLinus Torvaldsendmenu 159