xref: /openbmc/linux/arch/sh/Kconfig.debug (revision a1e58bbd)
1menu "Kernel hacking"
2
3config TRACE_IRQFLAGS_SUPPORT
4	def_bool y
5
6source "lib/Kconfig.debug"
7
8config SH_STANDARD_BIOS
9	bool "Use LinuxSH standard BIOS"
10	help
11	  Say Y here if your target has the gdb-sh-stub
12	  package from www.m17n.org (or any conforming standard LinuxSH BIOS)
13	  in FLASH or EPROM.  The kernel will use standard BIOS calls during
14	  boot for various housekeeping tasks (including calls to read and
15	  write characters to a system console, get a MAC address from an
16	  on-board Ethernet interface, and shut down the hardware).  Note this
17	  does not work with machines with an existing operating system in
18	  mask ROM and no flash (WindowsCE machines fall in this category).
19	  If unsure, say N.
20
21config EARLY_SCIF_CONSOLE
22	bool "Use early SCIF console"
23	help
24	  This enables an early console using a fixed SCIF port. This can
25	  be used by platforms that are either not running the SH
26	  standard BIOS, or do not wish to use the BIOS callbacks for the
27	  serial I/O.
28
29config EARLY_SCIF_CONSOLE_PORT
30	hex
31	depends on EARLY_SCIF_CONSOLE
32	default "0xffe00000" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7763
33	default "0xffe00000" if CPU_SUBTYPE_SH7722 || CPU_SUBTYPE_SH7366
34	default "0xffea0000" if CPU_SUBTYPE_SH7785
35	default "0xfffe8000" if CPU_SUBTYPE_SH7203
36	default "0xfffe9800" if CPU_SUBTYPE_SH7206 || CPU_SUBTYPE_SH7263
37	default "0xf8420000" if CPU_SUBTYPE_SH7619
38	default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705
39	default "0xa4430000" if CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721
40	default "0xffc30000" if CPU_SUBTYPE_SHX3
41	default "0xffe80000" if CPU_SH4
42	default "0x00000000"
43
44config EARLY_PRINTK
45	bool "Early printk support"
46	depends on SH_STANDARD_BIOS || EARLY_SCIF_CONSOLE
47	help
48	  Say Y here to redirect kernel printk messages to the serial port
49	  used by the SH-IPL bootloader, starting very early in the boot
50	  process and ending when the kernel's serial console is initialised.
51	  This option is only useful porting the kernel to a new machine,
52	  when the kernel may crash or hang before the serial console is
53	  initialised. If unsure, say N.
54
55	  On devices that are running SH-IPL and want to keep the port
56	  initialization consistent while not using the BIOS callbacks,
57	  select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using
58	  the kernel command line option to toggle back and forth.
59
60config DEBUG_BOOTMEM
61	depends on DEBUG_KERNEL
62	bool "Debug BOOTMEM initialization"
63
64config DEBUG_STACKOVERFLOW
65	bool "Check for stack overflows"
66	depends on DEBUG_KERNEL && SUPERH32
67	help
68	  This option will cause messages to be printed if free stack space
69	  drops below a certain limit.
70
71config DEBUG_STACK_USAGE
72	bool "Stack utilization instrumentation"
73	depends on DEBUG_KERNEL
74	help
75	  Enables the display of the minimum amount of free stack which each
76	  task has ever had available in the sysrq-T and sysrq-P debug output.
77
78	  This option will slow down process creation somewhat.
79
80config 4KSTACKS
81	bool "Use 4Kb for kernel stacks instead of 8Kb"
82	depends on DEBUG_KERNEL
83	help
84	  If you say Y here the kernel will use a 4Kb stacksize for the
85	  kernel stack attached to each process/thread. This facilitates
86	  running more threads on a system and also reduces the pressure
87	  on the VM subsystem for higher order allocations. This option
88	  will also use IRQ stacks to compensate for the reduced stackspace.
89
90config IRQSTACKS
91	bool "Use separate kernel stacks when processing interrupts"
92	depends on DEBUG_KERNEL && SUPERH32
93	help
94	  If you say Y here the kernel will use separate kernel stacks
95	  for handling hard and soft interrupts.  This can help avoid
96	  overflowing the process kernel stacks.
97
98config SH_KGDB
99	bool "Include KGDB kernel debugger"
100	select FRAME_POINTER
101	select DEBUG_INFO
102	depends on CPU_SH3 || CPU_SH4
103	help
104	  Include in-kernel hooks for kgdb, the Linux kernel source level
105	  debugger.  See <http://kgdb.sourceforge.net/> for more information.
106	  Unless you are intending to debug the kernel, say N here.
107
108menu "KGDB configuration options"
109	depends on SH_KGDB
110
111config MORE_COMPILE_OPTIONS
112	bool "Add any additional compile options"
113	help
114	  If you want to add additional CFLAGS to the kernel build, enable this
115	  option and then enter what you would like to add in the next question.
116	  Note however that -g is already appended with the selection of KGDB.
117
118config COMPILE_OPTIONS
119	string "Additional compile arguments"
120	depends on MORE_COMPILE_OPTIONS
121
122config KGDB_NMI
123	def_bool n
124	prompt "Enter KGDB on NMI"
125
126config SH_KGDB_CONSOLE
127	def_bool n
128	prompt "Console messages through GDB"
129	depends on !SERIAL_SH_SCI_CONSOLE && SERIAL_SH_SCI=y
130	select SERIAL_CORE_CONSOLE
131
132config KGDB_SYSRQ
133	def_bool y
134	prompt "Allow SysRq 'G' to enter KGDB"
135	depends on MAGIC_SYSRQ
136
137comment "Serial port setup"
138
139config KGDB_DEFPORT
140	int "Port number (ttySCn)"
141	default "1"
142
143config KGDB_DEFBAUD
144	int "Baud rate"
145	default "115200"
146
147choice
148	prompt "Parity"
149	depends on SH_KGDB
150	default KGDB_DEFPARITY_N
151
152config KGDB_DEFPARITY_N
153	bool "None"
154
155config KGDB_DEFPARITY_E
156	bool "Even"
157
158config KGDB_DEFPARITY_O
159	bool "Odd"
160
161endchoice
162
163choice
164	prompt "Data bits"
165	depends on SH_KGDB
166	default KGDB_DEFBITS_8
167
168config KGDB_DEFBITS_8
169	bool "8"
170
171config KGDB_DEFBITS_7
172	bool "7"
173
174endchoice
175
176endmenu
177
178if SUPERH64
179
180config SH64_PROC_ASIDS
181	bool "Debug: report ASIDs through /proc/asids"
182	depends on PROC_FS
183
184config SH64_SR_WATCH
185	bool "Debug: set SR.WATCH to enable hardware watchpoints and trace"
186
187config POOR_MANS_STRACE
188	bool "Debug: enable rudimentary strace facility"
189	help
190	  This option allows system calls to be traced to the console.  It also
191	  aids in detecting kernel stack underflow.  It is useful for debugging
192	  early-userland problems (e.g. init incurring fatal exceptions.)
193
194config SH_ALPHANUMERIC
195	bool "Enable debug outputs to on-board alphanumeric display"
196	depends on SH_CAYMAN
197
198config SH_NO_BSS_INIT
199	bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)"
200
201endif
202
203endmenu
204