mirror of https://gitee.com/openkylin/linux.git
132 lines
4.5 KiB
Plaintext
132 lines
4.5 KiB
Plaintext
menu "Kernel hacking"
|
|
|
|
source "lib/Kconfig.debug"
|
|
|
|
# RMK wants arm kernels compiled with frame pointers or stack unwinding.
|
|
# 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
|
|
depends on !THUMB2_KERNEL
|
|
default y if !ARM_UNWIND
|
|
help
|
|
If you say N here, the resulting kernel will be slightly smaller and
|
|
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.
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
# 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
|
|
Say Y here to include definitions of printascii, printch, printhex
|
|
in the kernel. This is helpful if you are debugging code that
|
|
executes before the console is initialized.
|
|
|
|
config EARLY_PRINTK
|
|
bool "Early printk"
|
|
depends on DEBUG_LL
|
|
help
|
|
Say Y here if you want to have an early console using the
|
|
kernel low-level debugging functions. Add earlyprintk to your
|
|
kernel parameters to enable this console.
|
|
|
|
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 and on the XScale with the PEEDI.
|
|
|
|
It does include a timeout to ensure that the system does not
|
|
totally freeze when there is nothing connected to read.
|
|
|
|
config OC_ETM
|
|
bool "On-chip ETM and ETB"
|
|
select ARM_AMBA
|
|
help
|
|
Enables the on-chip embedded trace macrocell and embedded trace
|
|
buffer driver that will allow you to collect traces of the
|
|
kernel code.
|
|
|
|
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.
|
|
|
|
config DEBUG_S3C_UART
|
|
depends on PLAT_SAMSUNG
|
|
int "S3C UART to use for low-level debug"
|
|
default "0"
|
|
help
|
|
Choice for UART for kernel low-level using S3C UARTS,
|
|
should be between zero and two. The port must have been
|
|
initialised by the boot-loader before use.
|
|
|
|
The uncompressor code port configuration is now handled
|
|
by CONFIG_S3C_LOWLEVEL_UART_PORT.
|
|
|
|
endmenu
|