2005-04-17 06:20:36 +08:00
|
|
|
menu "Kernel hacking"
|
|
|
|
|
|
|
|
source "lib/Kconfig.debug"
|
|
|
|
|
2009-02-12 20:56:34 +08:00
|
|
|
# RMK wants arm kernels compiled with frame pointers or stack unwinding.
|
2005-04-17 06:20:36 +08:00
|
|
|
# If you know what you are doing and are willing to live without stack
|
|
|
|
# traces, you can get a slightly smaller kernel by setting this option to
|
|
|
|
# n, but then RMK will have to kill you ;).
|
|
|
|
config FRAME_POINTER
|
|
|
|
bool
|
2009-02-12 20:56:34 +08:00
|
|
|
default y if !ARM_UNWIND
|
2005-04-17 06:20:36 +08:00
|
|
|
help
|
|
|
|
If you say N here, the resulting kernel will be slightly smaller and
|
2009-02-12 20:56:34 +08:00
|
|
|
faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
|
|
|
|
when a problem occurs with the kernel, the information that is
|
|
|
|
reported is severely limited.
|
|
|
|
|
|
|
|
config ARM_UNWIND
|
|
|
|
bool "Enable stack unwinding support"
|
|
|
|
depends on AEABI && EXPERIMENTAL
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This option enables stack unwinding support in the kernel
|
|
|
|
using the information automatically generated by the
|
|
|
|
compiler. The resulting kernel image is slightly bigger but
|
|
|
|
the performance is not affected. Currently, this feature
|
|
|
|
only works with EABI compilers. If unsure say Y.
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
config DEBUG_USER
|
|
|
|
bool "Verbose user fault messages"
|
|
|
|
help
|
|
|
|
When a user program crashes due to an exception, the kernel can
|
|
|
|
print a brief message explaining what the problem was. This is
|
|
|
|
sometimes helpful for debugging but serves no purpose on a
|
|
|
|
production system. Most people should say N here.
|
|
|
|
|
|
|
|
In addition, you need to pass user_debug=N on the kernel command
|
|
|
|
line to enable this feature. N consists of the sum of:
|
|
|
|
|
|
|
|
1 - undefined instruction events
|
|
|
|
2 - system calls
|
|
|
|
4 - invalid data aborts
|
|
|
|
8 - SIGSEGV faults
|
|
|
|
16 - SIGBUS faults
|
|
|
|
|
|
|
|
config DEBUG_ERRORS
|
|
|
|
bool "Verbose kernel error messages"
|
|
|
|
depends on DEBUG_KERNEL
|
|
|
|
help
|
|
|
|
This option controls verbose debugging information which can be
|
|
|
|
printed when the kernel detects an internal error. This debugging
|
|
|
|
information is useful to kernel hackers when tracking down problems,
|
|
|
|
but mostly meaningless to other people. It's safe to say Y unless
|
|
|
|
you are concerned with the code size or don't want to see these
|
|
|
|
messages.
|
|
|
|
|
2007-07-25 00:37:01 +08:00
|
|
|
config DEBUG_STACK_USAGE
|
|
|
|
bool "Enable 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 output.
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
# These options are only for real kernel hackers who want to get their hands dirty.
|
|
|
|
config DEBUG_LL
|
|
|
|
bool "Kernel low-level debugging functions"
|
|
|
|
depends on DEBUG_KERNEL
|
|
|
|
help
|
2005-09-09 22:57:17 +08:00
|
|
|
Say Y here to include definitions of printascii, printch, printhex
|
2005-04-17 06:20:36 +08:00
|
|
|
in the kernel. This is helpful if you are debugging code that
|
|
|
|
executes before the console is initialized.
|
|
|
|
|
|
|
|
config DEBUG_ICEDCC
|
|
|
|
bool "Kernel low-level debugging via EmbeddedICE DCC channel"
|
|
|
|
depends on DEBUG_LL
|
|
|
|
help
|
|
|
|
Say Y here if you want the debug print routines to direct their
|
|
|
|
output to the EmbeddedICE macrocell's DCC channel using
|
|
|
|
co-processor 14. This is known to work on the ARM9 style ICE
|
|
|
|
channel.
|
|
|
|
|
|
|
|
It does include a timeout to ensure that the system does not
|
|
|
|
totally freeze when there is nothing connected to read.
|
|
|
|
|
|
|
|
config DEBUG_DC21285_PORT
|
|
|
|
bool "Kernel low-level debugging messages via footbridge serial port"
|
|
|
|
depends on DEBUG_LL && FOOTBRIDGE
|
|
|
|
help
|
|
|
|
Say Y here if you want the debug print routines to direct their
|
|
|
|
output to the serial port in the DC21285 (Footbridge). Saying N
|
|
|
|
will cause the debug messages to appear on the first 16550
|
|
|
|
serial port.
|
|
|
|
|
|
|
|
config DEBUG_CLPS711X_UART2
|
|
|
|
bool "Kernel low-level debugging messages via UART2"
|
|
|
|
depends on DEBUG_LL && ARCH_CLPS711X
|
|
|
|
help
|
|
|
|
Say Y here if you want the debug print routines to direct their
|
|
|
|
output to the second serial port on these devices. Saying N will
|
|
|
|
cause the debug messages to appear on the first serial port.
|
|
|
|
|
2007-07-22 23:12:04 +08:00
|
|
|
config DEBUG_S3C_PORT
|
|
|
|
depends on DEBUG_LL && PLAT_S3C
|
|
|
|
bool "Kernel low-level debugging messages via S3C UART"
|
2005-04-17 06:20:36 +08:00
|
|
|
help
|
|
|
|
Say Y here if you want debug print routines to go to one of the
|
2007-07-22 23:12:04 +08:00
|
|
|
S3C internal UARTs. The chosen UART must have been configured
|
2005-04-17 06:20:36 +08:00
|
|
|
before it is used.
|
|
|
|
|
2007-07-22 23:12:04 +08:00
|
|
|
config DEBUG_S3C_UART
|
|
|
|
depends on PLAT_S3C
|
|
|
|
int "S3C UART to use for low-level debug"
|
2005-04-17 06:20:36 +08:00
|
|
|
default "0"
|
|
|
|
help
|
2007-07-22 23:12:04 +08:00
|
|
|
Choice for UART for kernel low-level using S3C UARTS,
|
2005-04-17 06:20:36 +08:00
|
|
|
should be between zero and two. The port must have been
|
2006-06-05 04:22:11 +08:00
|
|
|
initialised by the boot-loader before use.
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
The uncompressor code port configuration is now handled
|
2007-07-22 23:11:20 +08:00
|
|
|
by CONFIG_S3C_LOWLEVEL_UART_PORT.
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
endmenu
|