menu "Kernel hacking" config TRACE_IRQFLAGS_SUPPORT def_bool y source "lib/Kconfig.debug" config SH_STANDARD_BIOS bool "Use LinuxSH standard BIOS" depends on SUPERH32 help Say Y here if your target has the gdb-sh-stub package from www.m17n.org (or any conforming standard LinuxSH BIOS) in FLASH or EPROM. The kernel will use standard BIOS calls during boot for various housekeeping tasks (including calls to read and write characters to a system console, get a MAC address from an on-board Ethernet interface, and shut down the hardware). Note this does not work with machines with an existing operating system in mask ROM and no flash (WindowsCE machines fall in this category). If unsure, say N. config EARLY_SCIF_CONSOLE bool "Use early SCIF console" help This enables an early console using a fixed SCIF port. This can be used by platforms that are either not running the SH standard BIOS, or do not wish to use the BIOS callbacks for the serial I/O. config EARLY_SCIF_CONSOLE_PORT hex depends on EARLY_SCIF_CONSOLE default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705 default "0xa4430000" if CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721 default "0xf8420000" if CPU_SUBTYPE_SH7619 default "0xff804000" if CPU_SUBTYPE_MXG default "0xffc30000" if CPU_SUBTYPE_SHX3 default "0xffe00000" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7763 || \ CPU_SUBTYPE_SH7722 || CPU_SUBTYPE_SH7366 || \ CPU_SUBTYPE_SH7343 default "0xffe80000" if CPU_SH4 default "0xffea0000" if CPU_SUBTYPE_SH7785 default "0xfffe8000" if CPU_SUBTYPE_SH7203 default "0xfffe9800" if CPU_SUBTYPE_SH7206 || CPU_SUBTYPE_SH7263 default "0x00000000" config EARLY_PRINTK bool "Early printk support" depends on SH_STANDARD_BIOS || EARLY_SCIF_CONSOLE help Say Y here to redirect kernel printk messages to the serial port used by the SH-IPL bootloader, starting very early in the boot process and ending when the kernel's serial console is initialised. This option is only useful porting the kernel to a new machine, when the kernel may crash or hang before the serial console is initialised. If unsure, say N. On devices that are running SH-IPL and want to keep the port initialization consistent while not using the BIOS callbacks, select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using the kernel command line option to toggle back and forth. config DEBUG_BOOTMEM depends on DEBUG_KERNEL bool "Debug BOOTMEM initialization" config DEBUG_STACKOVERFLOW bool "Check for stack overflows" depends on DEBUG_KERNEL && SUPERH32 help This option will cause messages to be printed if free stack space drops below a certain limit. config DEBUG_STACK_USAGE bool "Stack utilization instrumentation" depends on DEBUG_KERNEL help Enables the display of the minimum amount of free stack which each task has ever had available in the sysrq-T and sysrq-P debug output. This option will slow down process creation somewhat. config 4KSTACKS bool "Use 4Kb for kernel stacks instead of 8Kb" depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB help If you say Y here the kernel will use a 4Kb stacksize for the kernel stack attached to each process/thread. This facilitates running more threads on a system and also reduces the pressure on the VM subsystem for higher order allocations. This option will also use IRQ stacks to compensate for the reduced stackspace. config IRQSTACKS bool "Use separate kernel stacks when processing interrupts" depends on DEBUG_KERNEL && SUPERH32 help If you say Y here the kernel will use separate kernel stacks for handling hard and soft interrupts. This can help avoid overflowing the process kernel stacks. config DUMP_CODE bool "Show disassembly of nearby code in register dumps" depends on DEBUG_KERNEL && SUPERH32 default y if DEBUG_BUGVERBOSE default n help This prints out a code trace of the instructions leading up to the faulting instruction as a debugging aid. As this does grow the kernel in size a bit, most users will want to say N here. Those looking for more verbose debugging output should say Y. config SH_NO_BSS_INIT bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)" depends on DEBUG_KERNEL default n help If running in painfully slow environments, such as an RTL simulation or from remote memory via SHdebug, where the memory can already be gauranteed to ber zeroed on boot, say Y. For all other cases, say N. If this option seems perplexing, or you aren't sure, say N. config MORE_COMPILE_OPTIONS bool "Add any additional compile options" help If you want to add additional CFLAGS to the kernel build, enable this option and then enter what you would like to add in the next question. Note however that -g is already appended with the selection of KGDB. config COMPILE_OPTIONS string "Additional compile arguments" depends on MORE_COMPILE_OPTIONS config SH64_SR_WATCH bool "Debug: set SR.WATCH to enable hardware watchpoints and trace" depends on SUPERH64 config POOR_MANS_STRACE bool "Debug: enable rudimentary strace facility" depends on SUPERH64 help This option allows system calls to be traced to the console. It also aids in detecting kernel stack underflow. It is useful for debugging early-userland problems (e.g. init incurring fatal exceptions.) endmenu