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