blob: 2881d8471a17378af767cf81ed3b0336306b2f2d [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001menu "Kernel hacking"
2
Paul Mundtafbfb522006-12-04 18:17:28 +09003config TRACE_IRQFLAGS_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +09004 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +09005
Linus Torvalds1da177e2005-04-16 15:20:36 -07006source "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"
Paul Mundt6fc21b82006-11-27 12:10:23 +090023 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
Paul Mundt8d797cd2007-08-07 18:52:29 +090030 hex
Paul Mundt6fc21b82006-11-27 12:10:23 +090031 depends on EARLY_SCIF_CONSOLE
32 default "0xffe00000" if CPU_SUBTYPE_SH7780
Magnus Damm5cbc3af2007-09-10 12:05:10 +090033 default "0xffea0000" if CPU_SUBTYPE_SH7785
Paul Mundt6d01f512007-11-26 18:17:21 +090034 default "0xfffe8000" if CPU_SUBTYPE_SH7203
Paul Mundta8f67f42007-11-26 19:54:02 +090035 default "0xfffe9800" if CPU_SUBTYPE_SH7206 || CPU_SUBTYPE_SH7263
Yoshinori Sato11cbb702006-12-07 18:07:27 +090036 default "0xf8420000" if CPU_SUBTYPE_SH7619
Nobuhiro Iwamatsu2a8ff452007-04-26 11:51:00 +090037 default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705
Markus Brunner3ea6bc32007-08-20 08:59:33 +090038 default "0xa4430000" if CPU_SUBTYPE_SH7720
Paul Mundt8d797cd2007-08-07 18:52:29 +090039 default "0xffc30000" if CPU_SUBTYPE_SHX3
Paul Mundt6fc21b82006-11-27 12:10:23 +090040 default "0xffe80000" if CPU_SH4
Paul Mundt8d797cd2007-08-07 18:52:29 +090041 default "0x00000000"
Linus Torvalds1da177e2005-04-16 15:20:36 -070042
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
Paul Mundt6fc21b82006-11-27 12:10:23 +090054 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
Paul Mundt91e656a2007-06-01 14:19:22 +090059config DEBUG_BOOTMEM
60 depends on DEBUG_KERNEL
61 bool "Debug BOOTMEM initialization"
62
Paul Mundtd153ea82006-09-27 18:20:16 +090063config DEBUG_STACKOVERFLOW
64 bool "Check for stack overflows"
Paul Mundt5db141a2007-11-21 17:47:15 +090065 depends on DEBUG_KERNEL && SUPERH32
Paul Mundtd153ea82006-09-27 18:20:16 +090066 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
Paul Mundta6a311392006-09-27 18:22:14 +090079config 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
Paul Mundt110ed282007-11-02 12:16:51 +090089config IRQSTACKS
90 bool "Use separate kernel stacks when processing interrupts"
Paul Mundt5db141a2007-11-21 17:47:15 +090091 depends on DEBUG_KERNEL && SUPERH32
Paul Mundt110ed282007-11-02 12:16:51 +090092 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
Paul Mundtfa5da2f2007-03-08 17:27:37 +090097config SH_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -070098 bool "Include KGDB kernel debugger"
Paul Mundt2549b322006-09-27 16:22:33 +090099 select FRAME_POINTER
Paul Mundtfa5da2f2007-03-08 17:27:37 +0900100 select DEBUG_INFO
Paul Mundt357d5942007-06-11 15:32:07 +0900101 depends on CPU_SH3 || CPU_SH4
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102 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"
Paul Mundtfa5da2f2007-03-08 17:27:37 +0900108 depends on SH_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109
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
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900122 def_bool n
123 prompt "Enter KGDB on NMI"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124
Linus Torvalds1da177e2005-04-16 15:20:36 -0700125config SH_KGDB_CONSOLE
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900126 def_bool n
127 prompt "Console messages through GDB"
Paul Mundt808bde22007-11-06 17:34:33 +0900128 depends on !SERIAL_SH_SCI_CONSOLE && SERIAL_SH_SCI=y
Paul Mundtfa5da2f2007-03-08 17:27:37 +0900129 select SERIAL_CORE_CONSOLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700130
131config KGDB_SYSRQ
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900132 def_bool y
133 prompt "Allow SysRq 'G' to enter KGDB"
Paul Mundt0acc7292007-11-06 17:50:07 +0900134 depends on MAGIC_SYSRQ
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135
Linus Torvalds1da177e2005-04-16 15:20:36 -0700136comment "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"
Paul Mundtfa5da2f2007-03-08 17:27:37 +0900148 depends on SH_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149 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"
Paul Mundtfa5da2f2007-03-08 17:27:37 +0900164 depends on SH_KGDB
Linus Torvalds1da177e2005-04-16 15:20:36 -0700165 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
Paul Mundt8214d522007-11-21 16:58:56 +0900177if 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
Linus Torvalds1da177e2005-04-16 15:20:36 -0700202endmenu