| menu "Kernel hacking" | 
 |  | 
 | config TRACE_IRQFLAGS_SUPPORT | 
 | 	def_bool y | 
 |  | 
 | source "lib/Kconfig.debug" | 
 |  | 
 | config SH_STANDARD_BIOS | 
 | 	bool "Use LinuxSH standard BIOS" | 
 | 	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 | 
 | 	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 | 
 | 	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 SH_KGDB | 
 | 	bool "Include KGDB kernel debugger" | 
 | 	select FRAME_POINTER | 
 | 	select DEBUG_INFO | 
 | 	depends on CPU_SH3 || CPU_SH4 | 
 | 	help | 
 | 	  Include in-kernel hooks for kgdb, the Linux kernel source level | 
 | 	  debugger.  See <http://kgdb.sourceforge.net/> for more information. | 
 | 	  Unless you are intending to debug the kernel, say N here. | 
 |  | 
 | menu "KGDB configuration options" | 
 | 	depends on SH_KGDB | 
 |  | 
 | 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 KGDB_NMI | 
 | 	def_bool n | 
 | 	prompt "Enter KGDB on NMI" | 
 |  | 
 | config SH_KGDB_CONSOLE | 
 | 	def_bool n | 
 | 	prompt "Console messages through GDB" | 
 | 	depends on !SERIAL_SH_SCI_CONSOLE && SERIAL_SH_SCI=y | 
 | 	select SERIAL_CORE_CONSOLE | 
 |  | 
 | config KGDB_SYSRQ | 
 | 	def_bool y | 
 | 	prompt "Allow SysRq 'G' to enter KGDB" | 
 | 	depends on MAGIC_SYSRQ | 
 |  | 
 | comment "Serial port setup" | 
 |  | 
 | config KGDB_DEFPORT | 
 | 	int "Port number (ttySCn)" | 
 | 	default "1" | 
 |  | 
 | config KGDB_DEFBAUD | 
 | 	int "Baud rate" | 
 | 	default "115200" | 
 |  | 
 | choice | 
 | 	prompt "Parity" | 
 | 	depends on SH_KGDB | 
 | 	default KGDB_DEFPARITY_N | 
 |  | 
 | config KGDB_DEFPARITY_N | 
 | 	bool "None" | 
 |  | 
 | config KGDB_DEFPARITY_E | 
 | 	bool "Even" | 
 |  | 
 | config KGDB_DEFPARITY_O | 
 | 	bool "Odd" | 
 |  | 
 | endchoice | 
 |  | 
 | choice | 
 | 	prompt "Data bits" | 
 | 	depends on SH_KGDB | 
 | 	default KGDB_DEFBITS_8 | 
 |  | 
 | config KGDB_DEFBITS_8 | 
 | 	bool "8" | 
 |  | 
 | config KGDB_DEFBITS_7 | 
 | 	bool "7" | 
 |  | 
 | endchoice | 
 |  | 
 | endmenu | 
 |  | 
 | if SUPERH64 | 
 |  | 
 | config SH64_PROC_ASIDS | 
 | 	bool "Debug: report ASIDs through /proc/asids" | 
 | 	depends on PROC_FS | 
 |  | 
 | config SH64_SR_WATCH | 
 | 	bool "Debug: set SR.WATCH to enable hardware watchpoints and trace" | 
 |  | 
 | config POOR_MANS_STRACE | 
 | 	bool "Debug: enable rudimentary strace facility" | 
 | 	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.) | 
 |  | 
 | config SH_ALPHANUMERIC | 
 | 	bool "Enable debug outputs to on-board alphanumeric display" | 
 | 	depends on SH_CAYMAN | 
 |  | 
 | config SH_NO_BSS_INIT | 
 | 	bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)" | 
 |  | 
 | endif | 
 |  | 
 | endmenu |