xref: /openbmc/linux/arch/sh/Kconfig.debug (revision 160b8e75)
1# SPDX-License-Identifier: GPL-2.0
2menu "Kernel hacking"
3
4config TRACE_IRQFLAGS_SUPPORT
5	def_bool y
6
7source "lib/Kconfig.debug"
8
9config SH_STANDARD_BIOS
10	bool "Use LinuxSH standard BIOS"
11	depends on SUPERH32
12	help
13	  Say Y here if your target has the gdb-sh-stub
14	  package from www.m17n.org (or any conforming standard LinuxSH BIOS)
15	  in FLASH or EPROM.  The kernel will use standard BIOS calls during
16	  boot for various housekeeping tasks (including calls to read and
17	  write characters to a system console, get a MAC address from an
18	  on-board Ethernet interface, and shut down the hardware).  Note this
19	  does not work with machines with an existing operating system in
20	  mask ROM and no flash (WindowsCE machines fall in this category).
21	  If unsure, say N.
22
23config STACK_DEBUG
24	bool "Check for stack overflows"
25	depends on DEBUG_KERNEL && SUPERH32
26	help
27	  This option will cause messages to be printed if free stack space
28	  drops below a certain limit. Saying Y here will add overhead to
29	  every function call and will therefore incur a major
30	  performance hit. Most users should say N.
31
32config 4KSTACKS
33	bool "Use 4Kb for kernel stacks instead of 8Kb"
34	depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB
35	help
36	  If you say Y here the kernel will use a 4Kb stacksize for the
37	  kernel stack attached to each process/thread. This facilitates
38	  running more threads on a system and also reduces the pressure
39	  on the VM subsystem for higher order allocations. This option
40	  will also use IRQ stacks to compensate for the reduced stackspace.
41
42config IRQSTACKS
43	bool "Use separate kernel stacks when processing interrupts"
44	depends on DEBUG_KERNEL && SUPERH32 && BROKEN
45	help
46	  If you say Y here the kernel will use separate kernel stacks
47	  for handling hard and soft interrupts.  This can help avoid
48	  overflowing the process kernel stacks.
49
50config DUMP_CODE
51	bool "Show disassembly of nearby code in register dumps"
52	depends on DEBUG_KERNEL && SUPERH32
53	default y if DEBUG_BUGVERBOSE
54	default n
55	help
56	  This prints out a code trace of the instructions leading up to
57	  the faulting instruction as a debugging aid. As this does grow
58	  the kernel in size a bit, most users will want to say N here.
59
60	  Those looking for more verbose debugging output should say Y.
61
62config DWARF_UNWINDER
63	bool "Enable the DWARF unwinder for stacktraces"
64	select FRAME_POINTER
65	depends on SUPERH32
66	default n
67	help
68	  Enabling this option will make stacktraces more accurate, at
69	  the cost of an increase in overall kernel size.
70
71config SH_NO_BSS_INIT
72	bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)"
73	depends on DEBUG_KERNEL
74	default n
75	help
76	  If running in painfully slow environments, such as an RTL
77	  simulation or from remote memory via SHdebug, where the memory
78	  can already be guaranteed to ber zeroed on boot, say Y.
79
80	  For all other cases, say N. If this option seems perplexing, or
81	  you aren't sure, say N.
82
83config SH64_SR_WATCH
84	bool "Debug: set SR.WATCH to enable hardware watchpoints and trace"
85	depends on SUPERH64
86
87config MCOUNT
88	def_bool y
89	depends on SUPERH32
90	depends on STACK_DEBUG || FUNCTION_TRACER
91
92endmenu
93