2005-04-16 16:20:36 -06:00
|
|
|
menu "Kernel hacking"
|
|
|
|
|
2006-12-04 02:17:28 -07:00
|
|
|
config TRACE_IRQFLAGS_SUPPORT
|
2007-12-10 21:49:35 -07:00
|
|
|
def_bool y
|
2006-12-04 02:17:28 -07:00
|
|
|
|
2005-04-16 16:20:36 -06:00
|
|
|
source "lib/Kconfig.debug"
|
|
|
|
|
|
|
|
config SH_STANDARD_BIOS
|
|
|
|
bool "Use LinuxSH standard BIOS"
|
2008-04-24 20:54:06 -06:00
|
|
|
depends on SUPERH32
|
2005-04-16 16:20:36 -06:00
|
|
|
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"
|
2006-11-26 20:10:23 -07:00
|
|
|
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
|
2007-08-07 03:52:29 -06:00
|
|
|
hex
|
2006-11-26 20:10:23 -07:00
|
|
|
depends on EARLY_SCIF_CONSOLE
|
2007-04-25 20:51:00 -06:00
|
|
|
default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705
|
2007-12-25 19:45:06 -07:00
|
|
|
default "0xa4430000" if CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721
|
2008-03-12 21:52:44 -06:00
|
|
|
default "0xf8420000" if CPU_SUBTYPE_SH7619
|
|
|
|
default "0xff804000" if CPU_SUBTYPE_MXG
|
2007-08-07 03:52:29 -06:00
|
|
|
default "0xffc30000" if CPU_SUBTYPE_SHX3
|
2008-03-12 21:52:44 -06:00
|
|
|
default "0xffe00000" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7763 || \
|
2008-07-07 06:11:51 -06:00
|
|
|
CPU_SUBTYPE_SH7722 || CPU_SUBTYPE_SH7366 || \
|
|
|
|
CPU_SUBTYPE_SH7343
|
2006-11-26 20:10:23 -07:00
|
|
|
default "0xffe80000" if CPU_SH4
|
2008-03-12 21:52:44 -06:00
|
|
|
default "0xffea0000" if CPU_SUBTYPE_SH7785
|
|
|
|
default "0xfffe8000" if CPU_SUBTYPE_SH7203
|
|
|
|
default "0xfffe9800" if CPU_SUBTYPE_SH7206 || CPU_SUBTYPE_SH7263
|
2007-08-07 03:52:29 -06:00
|
|
|
default "0x00000000"
|
2005-04-16 16:20:36 -06:00
|
|
|
|
|
|
|
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.
|
|
|
|
|
2006-11-26 20:10:23 -07:00
|
|
|
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.
|
|
|
|
|
2007-05-31 23:19:22 -06:00
|
|
|
config DEBUG_BOOTMEM
|
|
|
|
depends on DEBUG_KERNEL
|
|
|
|
bool "Debug BOOTMEM initialization"
|
|
|
|
|
2006-09-27 03:20:16 -06:00
|
|
|
config DEBUG_STACKOVERFLOW
|
|
|
|
bool "Check for stack overflows"
|
2007-11-21 01:47:15 -07:00
|
|
|
depends on DEBUG_KERNEL && SUPERH32
|
2006-09-27 03:20:16 -06:00
|
|
|
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.
|
|
|
|
|
2006-09-27 03:22:14 -06:00
|
|
|
config 4KSTACKS
|
|
|
|
bool "Use 4Kb for kernel stacks instead of 8Kb"
|
2008-09-20 05:16:35 -06:00
|
|
|
depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB
|
2006-09-27 03:22:14 -06:00
|
|
|
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.
|
|
|
|
|
2007-11-01 21:16:51 -06:00
|
|
|
config IRQSTACKS
|
|
|
|
bool "Use separate kernel stacks when processing interrupts"
|
2007-11-21 01:47:15 -07:00
|
|
|
depends on DEBUG_KERNEL && SUPERH32
|
2007-11-01 21:16:51 -06:00
|
|
|
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.
|
|
|
|
|
2008-12-16 23:56:06 -07:00
|
|
|
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.
|
|
|
|
|
2008-12-16 23:33:43 -07:00
|
|
|
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.
|
|
|
|
|
2005-04-16 16:20:36 -06:00
|
|
|
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
|
|
|
|
|
2007-11-21 00:58:56 -07:00
|
|
|
config SH64_SR_WATCH
|
|
|
|
bool "Debug: set SR.WATCH to enable hardware watchpoints and trace"
|
2008-12-16 23:36:50 -07:00
|
|
|
depends on SUPERH64
|
2007-11-21 00:58:56 -07:00
|
|
|
|
|
|
|
config POOR_MANS_STRACE
|
|
|
|
bool "Debug: enable rudimentary strace facility"
|
2008-12-16 23:36:50 -07:00
|
|
|
depends on SUPERH64
|
2007-11-21 00:58:56 -07:00
|
|
|
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.)
|
|
|
|
|
2005-04-16 16:20:36 -06:00
|
|
|
endmenu
|