![Michael Ellerman](/assets/img/avatar_default.png)
If you undefine all the early debugging options and then run make oldconfig, you don't get prompted to see if you want to enable any of them. This is annoying. AFAICT we can't do this just with a choice, because the choice is either optional, in which case we don't get prompted, or not in which case we _must_ select early debugging. So add a bool which controls whether we have early debugging at all, and then if that's enabled provide the choice. The extra bool will actually be useful in another patch I have lying around, so this is a win-win. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
159 lines
4.2 KiB
Text
159 lines
4.2 KiB
Text
menu "Kernel hacking"
|
|
|
|
source "lib/Kconfig.debug"
|
|
|
|
config DEBUG_STACKOVERFLOW
|
|
bool "Check for stack overflows"
|
|
depends on DEBUG_KERNEL && PPC64
|
|
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 && PPC64
|
|
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 DEBUGGER
|
|
bool "Enable debugger hooks"
|
|
depends on DEBUG_KERNEL
|
|
help
|
|
Include in-kernel hooks for kernel debuggers. Unless you are
|
|
intending to debug the kernel, say N here.
|
|
|
|
config KGDB
|
|
bool "Include kgdb kernel debugger"
|
|
depends on DEBUGGER && (BROKEN || PPC_GEN550 || 4xx)
|
|
select DEBUG_INFO
|
|
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.
|
|
|
|
choice
|
|
prompt "Serial Port"
|
|
depends on KGDB
|
|
default KGDB_TTYS1
|
|
|
|
config KGDB_TTYS0
|
|
bool "ttyS0"
|
|
|
|
config KGDB_TTYS1
|
|
bool "ttyS1"
|
|
|
|
config KGDB_TTYS2
|
|
bool "ttyS2"
|
|
|
|
config KGDB_TTYS3
|
|
bool "ttyS3"
|
|
|
|
endchoice
|
|
|
|
config KGDB_CONSOLE
|
|
bool "Enable serial console thru kgdb port"
|
|
depends on KGDB && 8xx || CPM2
|
|
help
|
|
If you enable this, all serial console messages will be sent
|
|
over the gdb stub.
|
|
If unsure, say N.
|
|
|
|
config XMON
|
|
bool "Include xmon kernel debugger"
|
|
depends on DEBUGGER && !PPC_ISERIES
|
|
help
|
|
Include in-kernel hooks for the xmon kernel monitor/debugger.
|
|
Unless you are intending to debug the kernel, say N here.
|
|
Make sure to enable also CONFIG_BOOTX_TEXT on Macs. Otherwise
|
|
nothing will appear on the screen (xmon writes directly to the
|
|
framebuffer memory).
|
|
The cmdline option 'xmon' or 'xmon=early' will drop into xmon
|
|
very early during boot. 'xmon=on' will just enable the xmon
|
|
debugger hooks. 'xmon=off' will disable the debugger hooks
|
|
if CONFIG_XMON_DEFAULT is set.
|
|
|
|
config XMON_DEFAULT
|
|
bool "Enable xmon by default"
|
|
depends on XMON
|
|
help
|
|
xmon is normally disabled unless booted with 'xmon=on'.
|
|
Use 'xmon=off' to disable xmon init during runtime.
|
|
|
|
config IRQSTACKS
|
|
bool "Use separate kernel stacks when processing interrupts"
|
|
depends on PPC64
|
|
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 BDI_SWITCH
|
|
bool "Include BDI-2000 user context switcher"
|
|
depends on DEBUG_KERNEL && PPC32
|
|
help
|
|
Include in-kernel support for the Abatron BDI2000 debugger.
|
|
Unless you are intending to debug the kernel with one of these
|
|
machines, say N here.
|
|
|
|
config BOOTX_TEXT
|
|
bool "Support for early boot text console (BootX or OpenFirmware only)"
|
|
depends PPC_OF && !PPC_ISERIES
|
|
help
|
|
Say Y here to see progress messages from the boot firmware in text
|
|
mode. Requires either BootX or Open Firmware.
|
|
|
|
config SERIAL_TEXT_DEBUG
|
|
bool "Support for early boot texts over serial port"
|
|
depends on 4xx || LOPEC || MV64X60 || PPLUS || PRPMC800 || \
|
|
PPC_GEN550 || PPC_MPC52xx
|
|
|
|
config PPC_EARLY_DEBUG
|
|
bool "Early debugging (dangerous)"
|
|
|
|
choice
|
|
prompt "Early debugging console"
|
|
depends on PPC_EARLY_DEBUG
|
|
help
|
|
Use the selected console for early debugging. Careful, if you
|
|
enable debugging for the wrong type of machine your kernel
|
|
_will not boot_.
|
|
|
|
config PPC_EARLY_DEBUG_LPAR
|
|
bool "LPAR HV Console"
|
|
depends on PPC_PSERIES
|
|
help
|
|
Select this to enable early debugging for a machine with a HVC
|
|
console on vterm 0.
|
|
|
|
config PPC_EARLY_DEBUG_G5
|
|
bool "Apple G5"
|
|
depends on PPC_PMAC64
|
|
help
|
|
Select this to enable early debugging for Apple G5 machines.
|
|
|
|
config PPC_EARLY_DEBUG_RTAS
|
|
bool "RTAS Panel"
|
|
depends on PPC_RTAS
|
|
help
|
|
Select this to enable early debugging via the RTAS panel.
|
|
|
|
config PPC_EARLY_DEBUG_MAPLE
|
|
bool "Maple real mode"
|
|
depends on PPC_MAPLE
|
|
help
|
|
Select this to enable early debugging for Maple.
|
|
|
|
config PPC_EARLY_DEBUG_ISERIES
|
|
bool "iSeries HV Console"
|
|
depends on PPC_ISERIES
|
|
help
|
|
Select this to enable early debugging for legacy iSeries. You need
|
|
to hit "Ctrl-x Ctrl-x" to see the messages on the console.
|
|
|
|
endchoice
|
|
|
|
endmenu
|