blob: 50f48f0c5630dea049667a419b3e0fd28b9b9c2d [file] [log] [blame]
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001menu "Kernel hacking"
2
3source "lib/Kconfig.debug"
4
Paul Mackerrasff642082005-10-10 22:15:52 +10005config DEBUG_STACKOVERFLOW
6 bool "Check for stack overflows"
Kumar Gala304df8f2007-01-30 00:45:56 -06007 depends on DEBUG_KERNEL
Paul Mackerrasff642082005-10-10 22:15:52 +10008 help
9 This option will cause messages to be printed if free stack space
10 drops below a certain limit.
11
Paul Mackerrasff642082005-10-10 22:15:52 +100012config DEBUG_STACK_USAGE
13 bool "Stack utilization instrumentation"
Kumar Gala304df8f2007-01-30 00:45:56 -060014 depends on DEBUG_KERNEL
Paul Mackerrasff642082005-10-10 22:15:52 +100015 help
16 Enables the display of the minimum amount of free stack which each
17 task has ever had available in the sysrq-T and sysrq-P debug output.
18
19 This option will slow down process creation somewhat.
20
Mike Kravetz57852a82006-09-06 16:23:12 -070021config HCALL_STATS
22 bool "Hypervisor call instrumentation"
23 depends on PPC_PSERIES && DEBUG_FS
24 help
25 Adds code to keep track of the number of hypervisor calls made and
26 the amount of time spent in hypervisor callsr. Wall time spent in
27 each call is always calculated, and if available CPU cycles spent
28 are also calculated. A directory named hcall_inst is added at the
29 root of the debugfs filesystem. Within the hcall_inst directory
30 are files that contain CPU specific call statistics.
31
32 This option will add a small amount of overhead to all hypervisor
33 calls.
34
Paul Mackerrasff642082005-10-10 22:15:52 +100035config DEBUGGER
36 bool "Enable debugger hooks"
37 depends on DEBUG_KERNEL
38 help
39 Include in-kernel hooks for kernel debuggers. Unless you are
40 intending to debug the kernel, say N here.
41
Paul Mackerras14cf11a2005-09-26 16:04:21 +100042config KGDB
43 bool "Include kgdb kernel debugger"
Paul Mackerrasff642082005-10-10 22:15:52 +100044 depends on DEBUGGER && (BROKEN || PPC_GEN550 || 4xx)
Paul Mackerras14cf11a2005-09-26 16:04:21 +100045 select DEBUG_INFO
46 help
47 Include in-kernel hooks for kgdb, the Linux kernel source level
48 debugger. See <http://kgdb.sourceforge.net/> for more information.
49 Unless you are intending to debug the kernel, say N here.
50
51choice
52 prompt "Serial Port"
53 depends on KGDB
54 default KGDB_TTYS1
55
56config KGDB_TTYS0
57 bool "ttyS0"
58
59config KGDB_TTYS1
60 bool "ttyS1"
61
62config KGDB_TTYS2
63 bool "ttyS2"
64
65config KGDB_TTYS3
66 bool "ttyS3"
67
68endchoice
69
70config KGDB_CONSOLE
71 bool "Enable serial console thru kgdb port"
72 depends on KGDB && 8xx || CPM2
73 help
74 If you enable this, all serial console messages will be sent
75 over the gdb stub.
76 If unsure, say N.
77
78config XMON
79 bool "Include xmon kernel debugger"
Stephen Rothwellbbb68172006-11-30 11:44:09 +110080 depends on DEBUGGER
Paul Mackerras14cf11a2005-09-26 16:04:21 +100081 help
82 Include in-kernel hooks for the xmon kernel monitor/debugger.
83 Unless you are intending to debug the kernel, say N here.
Paul Mackerrasff642082005-10-10 22:15:52 +100084 Make sure to enable also CONFIG_BOOTX_TEXT on Macs. Otherwise
85 nothing will appear on the screen (xmon writes directly to the
86 framebuffer memory).
87 The cmdline option 'xmon' or 'xmon=early' will drop into xmon
88 very early during boot. 'xmon=on' will just enable the xmon
89 debugger hooks. 'xmon=off' will disable the debugger hooks
90 if CONFIG_XMON_DEFAULT is set.
Olaf Hering26c8af52006-09-08 16:29:21 +020091 xmon will print a backtrace on the very first invocation.
92 'xmon=nobt' will disable this autobacktrace.
Paul Mackerrasff642082005-10-10 22:15:52 +100093
94config XMON_DEFAULT
95 bool "Enable xmon by default"
96 depends on XMON
97 help
98 xmon is normally disabled unless booted with 'xmon=on'.
99 Use 'xmon=off' to disable xmon init during runtime.
100
Michael Ellermane0426042006-11-23 00:46:45 +0100101config XMON_DISASSEMBLY
102 bool "Include disassembly support in xmon"
103 depends on XMON
104 default y
105 help
106 Include support for disassembling in xmon. You probably want
107 to say Y here, unless you're building for a memory-constrained
108 system.
109
Paul Mackerrasff642082005-10-10 22:15:52 +1000110config IRQSTACKS
111 bool "Use separate kernel stacks when processing interrupts"
112 depends on PPC64
113 help
114 If you say Y here the kernel will use separate kernel stacks
115 for handling hard and soft interrupts. This can help avoid
116 overflowing the process kernel stacks.
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000117
118config BDI_SWITCH
119 bool "Include BDI-2000 user context switcher"
Paul Mackerrasff642082005-10-10 22:15:52 +1000120 depends on DEBUG_KERNEL && PPC32
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000121 help
122 Include in-kernel support for the Abatron BDI2000 debugger.
123 Unless you are intending to debug the kernel with one of these
124 machines, say N here.
125
126config BOOTX_TEXT
127 bool "Support for early boot text console (BootX or OpenFirmware only)"
Stephen Rothwell80814be2006-11-30 11:45:14 +1100128 depends PPC_OF
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000129 help
130 Say Y here to see progress messages from the boot firmware in text
131 mode. Requires either BootX or Open Firmware.
132
133config SERIAL_TEXT_DEBUG
134 bool "Support for early boot texts over serial port"
Kumar Galafd42c712007-03-16 08:46:55 -0500135 depends on 4xx
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000136
Michael Ellerman485a2d52006-05-09 16:03:51 +1000137config PPC_EARLY_DEBUG
138 bool "Early debugging (dangerous)"
139
Michael Ellerman296167a2006-01-11 11:54:09 +1100140choice
Michael Ellerman485a2d52006-05-09 16:03:51 +1000141 prompt "Early debugging console"
142 depends on PPC_EARLY_DEBUG
Michael Ellerman296167a2006-01-11 11:54:09 +1100143 help
Michael Ellerman485a2d52006-05-09 16:03:51 +1000144 Use the selected console for early debugging. Careful, if you
145 enable debugging for the wrong type of machine your kernel
146 _will not boot_.
Michael Ellerman296167a2006-01-11 11:54:09 +1100147
148config PPC_EARLY_DEBUG_LPAR
149 bool "LPAR HV Console"
150 depends on PPC_PSERIES
151 help
152 Select this to enable early debugging for a machine with a HVC
153 console on vterm 0.
154
155config PPC_EARLY_DEBUG_G5
156 bool "Apple G5"
157 depends on PPC_PMAC64
158 help
159 Select this to enable early debugging for Apple G5 machines.
160
Michael Ellermancc46bb92006-06-23 18:20:16 +1000161config PPC_EARLY_DEBUG_RTAS_PANEL
Michael Ellerman296167a2006-01-11 11:54:09 +1100162 bool "RTAS Panel"
163 depends on PPC_RTAS
164 help
165 Select this to enable early debugging via the RTAS panel.
166
Michael Ellermancc46bb92006-06-23 18:20:16 +1000167config PPC_EARLY_DEBUG_RTAS_CONSOLE
168 bool "RTAS Console"
169 depends on PPC_RTAS
170 select UDBG_RTAS_CONSOLE
171 help
172 Select this to enable early debugging via the RTAS console.
173
Michael Ellerman296167a2006-01-11 11:54:09 +1100174config PPC_EARLY_DEBUG_MAPLE
175 bool "Maple real mode"
176 depends on PPC_MAPLE
177 help
178 Select this to enable early debugging for Maple.
179
180config PPC_EARLY_DEBUG_ISERIES
181 bool "iSeries HV Console"
182 depends on PPC_ISERIES
183 help
184 Select this to enable early debugging for legacy iSeries. You need
185 to hit "Ctrl-x Ctrl-x" to see the messages on the console.
186
Olof Johansson39c870d2007-02-04 16:36:49 -0600187config PPC_EARLY_DEBUG_PAS_REALMODE
188 bool "PA Semi real mode"
189 depends on PPC_PASEMI
190 help
191 Select this to enable early debugging for PA Semi.
192 Output will be on UART0.
193
Ishizaki Kouc347b792007-02-02 16:47:17 +0900194config PPC_EARLY_DEBUG_BEAT
195 bool "Beat HV Console"
196 depends on PPC_CELLEB
197 select PPC_UDBG_BEAT
198 help
199 Select this to enable early debugging for Celleb with Beat.
200
Michael Ellerman296167a2006-01-11 11:54:09 +1100201endchoice
202
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000203endmenu