menu "Kernel hacking"

config TRACE_IRQFLAGS_SUPPORT
	bool
	default y

source "lib/Kconfig.debug"

config CMDLINE
	string "Default kernel command string"
	default ""
	help
	  On some platforms, there is currently no way for the boot loader to
	  pass arguments to the kernel. For these platforms, you can supply
	  some command-line options at build time by entering them here.  In
	  other cases you can specify kernel args so that you don't have
	  to set them up in board prom initialization routines.

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 and sysrq-P debug output.

	  This option will slow down process creation somewhat.

config SMTC_IDLE_HOOK_DEBUG
	bool "Enable additional debug checks before going into CPU idle loop"
	depends on DEBUG_KERNEL && MIPS_MT_SMTC
	help
	  This option enables Enable additional debug checks before going into
	  CPU idle loop.  For details on these checks, see
	  arch/mips/kernel/smtc.c.  This debugging option result in significant
	  overhead so should be disabled in production kernels.

config KGDB
	bool "Remote GDB kernel debugging"
	depends on DEBUG_KERNEL && SYS_SUPPORTS_KGDB
	select DEBUG_INFO
	help
	  If you say Y here, it will be possible to remotely debug the MIPS
	  kernel using gdb. This enlarges your kernel image disk size by
	  several megabytes and requires a machine with more than 16 MB,
	  better 32 MB RAM to avoid excessive linking time. This is only
	  useful for kernel hackers. If unsure, say N.

config SYS_SUPPORTS_KGDB
	bool

config GDB_CONSOLE
	bool "Console output to GDB"
	depends on KGDB
	help
	  If you are using GDB for remote debugging over a serial port and
	  would like kernel messages to be formatted into GDB $O packets so
	  that GDB prints them as program output, say 'Y'.

config SB1XXX_CORELIS
	bool "Corelis Debugger"
	depends on SIBYTE_SB1xxx_SOC
	select DEBUG_INFO
	help
	  Select compile flags that produce code that can be processed by the
	  Corelis mksym utility and UDB Emulator.

config RUNTIME_DEBUG
	bool "Enable run-time debugging"
	depends on DEBUG_KERNEL
	help
	  If you say Y here, some debugging macros will do run-time checking.
	  If you say N here, those macros will mostly turn to no-ops.  See
	  include/asm-mips/debug.h for debuging macros.
	  If unsure, say N.

config MIPS_UNCACHED
	bool "Run uncached"
	depends on DEBUG_KERNEL && !SMP && !SGI_IP27
	help
	  If you say Y here there kernel will disable all CPU caches.  This will
	  reduce the system's performance dramatically but can help finding
	  otherwise hard to track bugs.  It can also useful if you're doing
	  hardware debugging with a logic analyzer and need to see all traffic
	  on the bus.

endmenu

config DEBUG_USER
	bool "Debug information for userspace processes"
	help
	  If you say Y here then userspace exceptions such as SIGSEGV
	  and SIGILL will generate register and stack dumps when they
	  occur to aid debugging.
