mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 00:34:20 +08:00
110ed28246
While using separate IRQ stacks can cut down on stack consumption, many users can also use 4k stacks directly without the additional need of separate stacks for soft and hardirqs. With this split, we support the same rationale for 4KSTACKS as m68knommu, with the IRQSTACKS abstraction as per ppc64. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
177 lines
4.9 KiB
Plaintext
177 lines
4.9 KiB
Plaintext
menu "Kernel hacking"
|
|
|
|
config TRACE_IRQFLAGS_SUPPORT
|
|
bool
|
|
default 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 "0xffe00000" if CPU_SUBTYPE_SH7780
|
|
default "0xffea0000" if CPU_SUBTYPE_SH7785
|
|
default "0xfffe9800" if CPU_SUBTYPE_SH7206
|
|
default "0xf8420000" if CPU_SUBTYPE_SH7619
|
|
default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705
|
|
default "0xa4430000" if CPU_SUBTYPE_SH7720
|
|
default "0xffc30000" if CPU_SUBTYPE_SHX3
|
|
default "0xffe80000" if CPU_SH4
|
|
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
|
|
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
|
|
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
|
|
bool "Enter KGDB on NMI"
|
|
default n
|
|
|
|
config SH_KGDB_CONSOLE
|
|
bool "Console messages through GDB"
|
|
depends on !SERIAL_SH_SCI_CONSOLE
|
|
select SERIAL_CORE_CONSOLE
|
|
default n
|
|
|
|
config KGDB_SYSRQ
|
|
bool "Allow SysRq 'G' to enter KGDB"
|
|
default y
|
|
|
|
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
|
|
|
|
endmenu
|