xref: /linux/arch/powerpc/Kconfig.debug (revision c537b994505099b7197e7d3125b942ecbcc51eb6)
1menu "Kernel hacking"
2
3source "lib/Kconfig.debug"
4
5config DEBUG_STACKOVERFLOW
6	bool "Check for stack overflows"
7	depends on DEBUG_KERNEL
8	help
9	  This option will cause messages to be printed if free stack space
10	  drops below a certain limit.
11
12config DEBUG_STACK_USAGE
13	bool "Stack utilization instrumentation"
14	depends on DEBUG_KERNEL
15	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
21config 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
35config 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
42config KGDB
43	bool "Include kgdb kernel debugger"
44	depends on DEBUGGER && (BROKEN || PPC_GEN550 || 4xx)
45	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"
80	depends on DEBUGGER
81	help
82	  Include in-kernel hooks for the xmon kernel monitor/debugger.
83	  Unless you are intending to debug the kernel, say N here.
84	  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.
91	  xmon will print a backtrace on the very first invocation.
92	  'xmon=nobt' will disable this autobacktrace.
93
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
101config 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
110config 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.
117
118config BDI_SWITCH
119	bool "Include BDI-2000 user context switcher"
120	depends on DEBUG_KERNEL && PPC32
121	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)"
128	depends PPC_OF
129	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"
135	depends on 4xx || LOPEC || MV64X60 || PPLUS || PRPMC800 || \
136		PPC_GEN550 || PPC_MPC52xx
137
138config PPC_EARLY_DEBUG
139	bool "Early debugging (dangerous)"
140
141choice
142	prompt "Early debugging console"
143	depends on PPC_EARLY_DEBUG
144	help
145	  Use the selected console for early debugging. Careful, if you
146	  enable debugging for the wrong type of machine your kernel
147	  _will not boot_.
148
149config PPC_EARLY_DEBUG_LPAR
150	bool "LPAR HV Console"
151	depends on PPC_PSERIES
152	help
153	  Select this to enable early debugging for a machine with a HVC
154	  console on vterm 0.
155
156config PPC_EARLY_DEBUG_G5
157	bool "Apple G5"
158	depends on PPC_PMAC64
159	help
160	  Select this to enable early debugging for Apple G5 machines.
161
162config PPC_EARLY_DEBUG_RTAS_PANEL
163	bool "RTAS Panel"
164	depends on PPC_RTAS
165	help
166	  Select this to enable early debugging via the RTAS panel.
167
168config PPC_EARLY_DEBUG_RTAS_CONSOLE
169	bool "RTAS Console"
170	depends on PPC_RTAS
171	select UDBG_RTAS_CONSOLE
172	help
173	  Select this to enable early debugging via the RTAS console.
174
175config PPC_EARLY_DEBUG_MAPLE
176	bool "Maple real mode"
177	depends on PPC_MAPLE
178	help
179	  Select this to enable early debugging for Maple.
180
181config PPC_EARLY_DEBUG_ISERIES
182	bool "iSeries HV Console"
183	depends on PPC_ISERIES
184	help
185	  Select this to enable early debugging for legacy iSeries. You need
186	  to hit "Ctrl-x Ctrl-x" to see the messages on the console.
187
188config PPC_EARLY_DEBUG_PAS_REALMODE
189	bool "PA Semi real mode"
190	depends on PPC_PASEMI
191	help
192	  Select this to enable early debugging for PA Semi.
193	  Output will be on UART0.
194
195config PPC_EARLY_DEBUG_BEAT
196	bool "Beat HV Console"
197	depends on PPC_CELLEB
198	select PPC_UDBG_BEAT
199	help
200	  Select this to enable early debugging for Celleb with Beat.
201
202endchoice
203
204endmenu
205