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