Blame view

arch/powerpc/Kconfig.debug 12.2 KB
b24413180   Greg Kroah-Hartman   License cleanup: ...
1
  # SPDX-License-Identifier: GPL-2.0
14cf11af6   Paul Mackerras   powerpc: Merge en...
2

ba55bd743   Michael Ellerman   powerpc: Add conf...
3
4
  config PPC_DISABLE_WERROR
  	bool "Don't build arch/powerpc code with -Werror"
ba55bd743   Michael Ellerman   powerpc: Add conf...
5
6
7
8
9
10
11
12
13
14
15
16
17
  	help
  	  This option tells the compiler NOT to build the code under
  	  arch/powerpc with the -Werror flag (which means warnings
  	  are treated as errors).
  
  	  Only enable this if you are hitting a build failure in the
  	  arch/powerpc code caused by a warning, and you don't feel
  	  inclined to fix it.
  
  config PPC_WERROR
  	bool
  	depends on !PPC_DISABLE_WERROR
  	default y
c4d04be11   Johannes Berg   powerpc: Allow th...
18
19
20
21
22
23
24
25
  config PRINT_STACK_DEPTH
  	int "Stack depth to print" if DEBUG_KERNEL
  	default 64
  	help
  	  This option allows you to set the stack depth that the kernel
  	  prints in stack traces. This can be useful if your display is
  	  too small and stack traces cause important information to
  	  scroll off the screen.
57852a853   Mike Kravetz   [POWERPC] powerpc...
26
27
  config HCALL_STATS
  	bool "Hypervisor call instrumentation"
c8cd093a6   Anton Blanchard   powerpc: tracing:...
28
  	depends on PPC_PSERIES && DEBUG_FS && TRACEPOINTS
57852a853   Mike Kravetz   [POWERPC] powerpc...
29
30
  	help
  	  Adds code to keep track of the number of hypervisor calls made and
3dde6ad8f   David Sterba   Fix trivial typos...
31
  	  the amount of time spent in hypervisor calls.  Wall time spent in
57852a853   Mike Kravetz   [POWERPC] powerpc...
32
33
34
35
36
37
38
  	  each call is always calculated, and if available CPU cycles spent
  	  are also calculated.  A directory named hcall_inst is added at the
  	  root of the debugfs filesystem.  Within the hcall_inst directory
  	  are files that contain CPU specific call statistics.
  
  	  This option will add a small amount of overhead to all hypervisor
  	  calls.
80947e7c9   Geert Uytterhoeven   powerpc: Keep tra...
39
40
41
42
43
44
45
46
47
48
49
50
  config PPC_EMULATED_STATS
  	bool "Emulated instructions tracking"
  	depends on DEBUG_FS
  	help
  	  Adds code to keep track of the number of instructions that are
  	  emulated by the in-kernel emulator. Counters for the various classes
  	  of emulated instructions are available under
  	  powerpc/emulated_instructions/ in the root of the debugfs file
  	  system. Optionally (controlled by
  	  powerpc/emulated_instructions/do_warn in debugfs), rate-limited
  	  warnings can be printed to the console when instructions are
  	  emulated.
ae0dc7362   Michael Ellerman   powerpc: Add test...
51
  config CODE_PATCHING_SELFTEST
759fb100b   Andrew Donnellan   powerpc: Fix styl...
52
  	bool "Run self-tests of the code-patching code"
ae0dc7362   Michael Ellerman   powerpc: Add test...
53
  	depends on DEBUG_KERNEL
ae0dc7362   Michael Ellerman   powerpc: Add test...
54

bfbfc8a43   Michael Ellerman   powerpc: Add kcon...
55
56
57
58
59
60
61
62
  config JUMP_LABEL_FEATURE_CHECKS
  	bool "Enable use of jump label for cpu/mmu_has_feature()"
  	depends on JUMP_LABEL
  	default y
  	help
  	  Selecting this options enables use of jump labels for some internal
  	  feature checks. This should generate more optimal code for those
  	  checks.
c812c7d8f   Aneesh Kumar K.V   powerpc/mm: Catch...
63
64
65
  config JUMP_LABEL_FEATURE_CHECK_DEBUG
  	bool "Do extra check on feature fixup calls"
  	depends on DEBUG_KERNEL && JUMP_LABEL_FEATURE_CHECKS
c812c7d8f   Aneesh Kumar K.V   powerpc/mm: Catch...
66
67
68
69
70
  	help
  	  This tries to catch incorrect usage of cpu_has_feature() and
  	  mmu_has_feature() in the code.
  
  	  If you don't know what this means, say N.
362e7701f   Michael Ellerman   powerpc: Add self...
71
  config FTR_FIXUP_SELFTEST
759fb100b   Andrew Donnellan   powerpc: Fix styl...
72
  	bool "Run self-tests of the feature-fixup code"
362e7701f   Michael Ellerman   powerpc: Add self...
73
  	depends on DEBUG_KERNEL
362e7701f   Michael Ellerman   powerpc: Add self...
74

7e302869e   Michael Ellerman   powerpc: Split-ou...
75
  config MSI_BITMAP_SELFTEST
759fb100b   Andrew Donnellan   powerpc: Fix styl...
76
  	bool "Run self-tests of the MSI bitmap code"
7e302869e   Michael Ellerman   powerpc: Split-ou...
77
  	depends on DEBUG_KERNEL
7e302869e   Michael Ellerman   powerpc: Split-ou...
78

9aa88188e   Madhavan Srinivasan   powerpc: Add new ...
79
80
  config PPC_IRQ_SOFT_MASK_DEBUG
  	bool "Include extra checks for powerpc irq soft masking"
9aa88188e   Madhavan Srinivasan   powerpc: Add new ...
81

14cf11af6   Paul Mackerras   powerpc: Merge en...
82
83
  config XMON
  	bool "Include xmon kernel debugger"
17ce452f7   Jason Wessel   kgdb, powerpc: ar...
84
  	depends on DEBUG_KERNEL
14cf11af6   Paul Mackerras   powerpc: Merge en...
85
86
87
  	help
  	  Include in-kernel hooks for the xmon kernel monitor/debugger.
  	  Unless you are intending to debug the kernel, say N here.
ff64208df   Paul Mackerras   powerpc: Merge Kc...
88
89
90
91
92
93
94
  	  Make sure to enable also CONFIG_BOOTX_TEXT on Macs. Otherwise
  	  nothing will appear on the screen (xmon writes directly to the
  	  framebuffer memory).
  	  The cmdline option 'xmon' or 'xmon=early' will drop into xmon
  	  very early during boot. 'xmon=on' will just enable the xmon
  	  debugger hooks.  'xmon=off' will disable the debugger hooks
  	  if CONFIG_XMON_DEFAULT is set.
26c8af5f0   Olaf Hering   [POWERPC] print b...
95
96
  	  xmon will print a backtrace on the very first invocation.
  	  'xmon=nobt' will disable this autobacktrace.
ff64208df   Paul Mackerras   powerpc: Merge Kc...
97
98
99
100
101
102
103
  
  config XMON_DEFAULT
  	bool "Enable xmon by default"
  	depends on XMON
  	help
  	  xmon is normally disabled unless booted with 'xmon=on'.
  	  Use 'xmon=off' to disable xmon init during runtime.
e0426047c   Michael Ellerman   [POWERPC] Make xm...
104
105
106
107
108
109
110
111
  config XMON_DISASSEMBLY
  	bool "Include disassembly support in xmon"
  	depends on XMON
  	default y
  	help
  	  Include support for disassembling in xmon. You probably want
  	  to say Y here, unless you're building for a memory-constrained
  	  system.
0acb5f645   Christopher M. Riedl   powerpc/xmon: add...
112
113
114
115
116
  config XMON_DEFAULT_RO_MODE
  	bool "Restrict xmon to read-only operations by default"
  	depends on XMON
  	default y
  	help
5f017a56a   Krzysztof Kozlowski   powerpc: Fix Kcon...
117
118
  	  Operate xmon in read-only mode. The cmdline options 'xmon=rw' and
  	  'xmon=ro' override this default.
0acb5f645   Christopher M. Riedl   powerpc/xmon: add...
119

17ce452f7   Jason Wessel   kgdb, powerpc: ar...
120
121
122
123
  config DEBUGGER
  	bool
  	depends on KGDB || XMON
  	default y
14cf11af6   Paul Mackerras   powerpc: Merge en...
124
125
  config BDI_SWITCH
  	bool "Include BDI-2000 user context switcher"
ff64208df   Paul Mackerras   powerpc: Merge Kc...
126
  	depends on DEBUG_KERNEL && PPC32
14cf11af6   Paul Mackerras   powerpc: Merge en...
127
128
129
130
131
132
133
  	help
  	  Include in-kernel support for the Abatron BDI2000 debugger.
  	  Unless you are intending to debug the kernel with one of these
  	  machines, say N here.
  
  config BOOTX_TEXT
  	bool "Support for early boot text console (BootX or OpenFirmware only)"
52d996270   Kevin Hao   powerpc: kill PPC_OF
134
  	depends on PPC_BOOK3S
14cf11af6   Paul Mackerras   powerpc: Merge en...
135
136
137
  	help
  	  Say Y here to see progress messages from the boot firmware in text
  	  mode. Requires either BootX or Open Firmware.
485a2d54d   Michael Ellerman   [PATCH] powerpc: ...
138
139
  config PPC_EARLY_DEBUG
  	bool "Early debugging (dangerous)"
7ee17466b   Benjamin Herrenschmidt   [POWERPC] Early d...
140
141
142
143
144
145
146
  	help
  	  Say Y to enable some early debugging facilities that may be available
  	  for your processor/board combination. Those facilities are hacks
  	  intended to debug problems early during boot, this should not be
  	  enabled in a production kernel.
  	  Note that enabling this will also cause the kernel default log level
  	  to be pushed to max automatically very early during boot
485a2d54d   Michael Ellerman   [PATCH] powerpc: ...
147

296167ae1   Michael Ellerman   [PATCH] powerpc: ...
148
  choice
485a2d54d   Michael Ellerman   [PATCH] powerpc: ...
149
150
  	prompt "Early debugging console"
  	depends on PPC_EARLY_DEBUG
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
151
  	help
485a2d54d   Michael Ellerman   [PATCH] powerpc: ...
152
153
154
  	  Use the selected console for early debugging. Careful, if you
  	  enable debugging for the wrong type of machine your kernel
  	  _will not boot_.
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
155

071df9422   Alistair Popple   powerpc: Add a co...
156
157
158
159
160
161
  config PPC_EARLY_DEBUG_BOOTX
  	bool "BootX or OpenFirmware"
  	depends on BOOTX_TEXT
  	help
  	  Select this to enable early debugging for a machine using BootX
  	  or OpenFirmware.
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
162
163
  config PPC_EARLY_DEBUG_LPAR
  	bool "LPAR HV Console"
236977609   Michael Ellerman   powerpc/pseries: ...
164
  	depends on PPC_PSERIES && HVC_CONSOLE
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
165
166
167
  	help
  	  Select this to enable early debugging for a machine with a HVC
  	  console on vterm 0.
4d2bb3f50   Benjamin Herrenschmidt   powerpc/pseries: ...
168
169
  config PPC_EARLY_DEBUG_LPAR_HVSI
  	bool "LPAR HVSI Console"
236977609   Michael Ellerman   powerpc/pseries: ...
170
  	depends on PPC_PSERIES && HVC_CONSOLE
4d2bb3f50   Benjamin Herrenschmidt   powerpc/pseries: ...
171
172
173
  	help
  	  Select this to enable early debugging for a machine with a HVSI
  	  console on a specified vterm.
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
174
175
176
177
178
  config PPC_EARLY_DEBUG_G5
  	bool "Apple G5"
  	depends on PPC_PMAC64
  	help
  	  Select this to enable early debugging for Apple G5 machines.
cc46bb98c   Michael Ellerman   [POWERPC] Add udb...
179
  config PPC_EARLY_DEBUG_RTAS_PANEL
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
180
181
182
183
  	bool "RTAS Panel"
  	depends on PPC_RTAS
  	help
  	  Select this to enable early debugging via the RTAS panel.
cc46bb98c   Michael Ellerman   [POWERPC] Add udb...
184
185
186
187
188
189
  config PPC_EARLY_DEBUG_RTAS_CONSOLE
  	bool "RTAS Console"
  	depends on PPC_RTAS
  	select UDBG_RTAS_CONSOLE
  	help
  	  Select this to enable early debugging via the RTAS console.
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
190
191
192
193
194
  config PPC_EARLY_DEBUG_MAPLE
  	bool "Maple real mode"
  	depends on PPC_MAPLE
  	help
  	  Select this to enable early debugging for Maple.
39c870d5b   Olof Johansson   [POWERPC] pasemi:...
195
196
197
198
199
200
  config PPC_EARLY_DEBUG_PAS_REALMODE
  	bool "PA Semi real mode"
  	depends on PPC_PASEMI
  	help
  	  Select this to enable early debugging for PA Semi.
  	  Output will be on UART0.
d9b55a036   David Gibson   [POWERPC] Early s...
201
202
  config PPC_EARLY_DEBUG_44x
  	bool "Early serial debugging for IBM/AMCC 44x CPUs"
b2677b8dd   Alexander Graf   KVM: PPC: Remove ...
203
  	depends on 44x
d9b55a036   David Gibson   [POWERPC] Early s...
204
205
  	help
  	  Select this to enable early debugging for IBM 44x chips via the
6bbc54762   Hugh Blemings   [POWERPC] 4xx: Ba...
206
  	  inbuilt serial port.  If you enable this, ensure you set
5f017a56a   Krzysztof Kozlowski   powerpc: Fix Kcon...
207
  	  PPC_EARLY_DEBUG_44x_PHYSLOW below to suit your target board.
d9b55a036   David Gibson   [POWERPC] Early s...
208

9dae8afdf   Benjamin Herrenschmidt   [POWERPC] 4xx: Ad...
209
210
211
212
213
214
  config PPC_EARLY_DEBUG_40x
  	bool "Early serial debugging for IBM/AMCC 40x CPUs"
  	depends on 40x
  	help
  	  Select this to enable early debugging for IBM 40x chips via the
  	  inbuilt serial port. This works on chips with a 16550 compatible
7ade8495d   Michal Simek   powerpc: Remove X...
215
  	  UART.
9dae8afdf   Benjamin Herrenschmidt   [POWERPC] 4xx: Ad...
216

c374e00e1   Scott Wood   [POWERPC] Add ear...
217
218
219
  config PPC_EARLY_DEBUG_CPM
  	bool "Early serial debugging for Freescale CPM-based serial ports"
  	depends on SERIAL_CPM
c374e00e1   Scott Wood   [POWERPC] Add ear...
220
221
222
223
  	help
  	  Select this to enable early debugging for Freescale chips
  	  using a CPM-based serial port.  This assumes that the bootwrapper
  	  has run, and set up the CPM in a particular way.
d1d56f8c1   Albert Herranz   powerpc: gamecube...
224
225
226
227
228
229
230
  config PPC_EARLY_DEBUG_USBGECKO
  	bool "Early debugging through the USB Gecko adapter"
  	depends on GAMECUBE_COMMON
  	select USBGECKO_UDBG
  	help
  	  Select this to enable early debugging for Nintendo GameCube/Wii
  	  consoles via an external USB Gecko adapter.
c26afe9e8   Hector Martin   powerpc/ps3: Add ...
231
232
233
234
235
236
237
  config PPC_EARLY_DEBUG_PS3GELIC
  	bool "Early debugging through the PS3 Ethernet port"
  	depends on PPC_PS3
  	select PS3GELIC_UDBG
  	help
  	  Select this to enable early debugging for the PlayStation3 via
  	  UDP broadcasts sent out through the Ethernet port.
daea1175a   Benjamin Herrenschmidt   powerpc/powernv: ...
238
239
240
241
242
243
244
245
246
247
248
249
250
  config PPC_EARLY_DEBUG_OPAL_RAW
  	bool "OPAL raw console"
  	depends on HVC_OPAL
  	help
  	  Select this to enable early debugging for the PowerNV platform
  	  using a "raw" console
  
  config PPC_EARLY_DEBUG_OPAL_HVSI
  	bool "OPAL hvsi console"
  	depends on HVC_OPAL
  	help
  	  Select this to enable early debugging for the PowerNV platform
  	  using an "hvsi" console
30650239a   Alistair Popple   powerpc: Add an i...
251
252
253
254
255
256
257
  config PPC_EARLY_DEBUG_MEMCONS
  	bool "In memory console"
  	help
  	  Select this to enable early debugging using an in memory console.
  	  This console provides input and output buffers stored within the
  	  kernel BSS and should be safe to select on any system. A debugger
  	  can then be used to read kernel output or send input to the console.
296167ae1   Michael Ellerman   [PATCH] powerpc: ...
258
  endchoice
30650239a   Alistair Popple   powerpc: Add an i...
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
  config PPC_MEMCONS_OUTPUT_SIZE
  	int "In memory console output buffer size"
  	depends on PPC_EARLY_DEBUG_MEMCONS
  	default 4096
  	help
  	  Selects the size of the output buffer (in bytes) of the in memory
  	  console.
  
  config PPC_MEMCONS_INPUT_SIZE
  	int "In memory console input buffer size"
  	depends on PPC_EARLY_DEBUG_MEMCONS
  	default 128
  	help
  	  Selects the size of the input buffer (in bytes) of the in memory
  	  console.
daea1175a   Benjamin Herrenschmidt   powerpc/powernv: ...
274
275
276
  config PPC_EARLY_DEBUG_OPAL
  	def_bool y
  	depends on PPC_EARLY_DEBUG_OPAL_RAW || PPC_EARLY_DEBUG_OPAL_HVSI
4d2bb3f50   Benjamin Herrenschmidt   powerpc/pseries: ...
277
278
279
280
281
282
283
  config PPC_EARLY_DEBUG_HVSI_VTERMNO
  	hex "vterm number to use with early debug HVSI"
  	depends on PPC_EARLY_DEBUG_LPAR_HVSI
  	default "0x30000000"
  	help
  	  You probably want 0x30000000 for your first serial port and
  	  0x30000001 for your second one
daea1175a   Benjamin Herrenschmidt   powerpc/powernv: ...
284
285
286
287
288
289
290
  config PPC_EARLY_DEBUG_OPAL_VTERMNO
  	hex "vterm number to use with OPAL early debug"
  	depends on PPC_EARLY_DEBUG_OPAL
  	default "0"
  	help
  	  This correspond to which /dev/hvcN you want to use for early
  	  debug.
daea1175a   Benjamin Herrenschmidt   powerpc/powernv: ...
291
292
  	  On OPAL v2, this will be 0 for network console and 1 or 2 for
  	  the machine built-in serial ports.
d9b55a036   David Gibson   [POWERPC] Early s...
293
294
  config PPC_EARLY_DEBUG_44x_PHYSLOW
  	hex "Low 32 bits of early debug UART physical address"
247537b9a   Adrian Bunk   kconfig: syntax c...
295
  	depends on PPC_EARLY_DEBUG_44x
d9b55a036   David Gibson   [POWERPC] Early s...
296
  	default "0x40000200"
6bbc54762   Hugh Blemings   [POWERPC] 4xx: Ba...
297
298
  	help
  	  You probably want 0x40000200 for ebony boards and
5f017a56a   Krzysztof Kozlowski   powerpc: Fix Kcon...
299
  	  0x40000300 for taishan
d9b55a036   David Gibson   [POWERPC] Early s...
300
301
302
  
  config PPC_EARLY_DEBUG_44x_PHYSHIGH
  	hex "EPRN of early debug UART physical address"
247537b9a   Adrian Bunk   kconfig: syntax c...
303
  	depends on PPC_EARLY_DEBUG_44x
d9b55a036   David Gibson   [POWERPC] Early s...
304
  	default "0x1"
9dae8afdf   Benjamin Herrenschmidt   [POWERPC] 4xx: Ad...
305
306
307
308
  config PPC_EARLY_DEBUG_40x_PHYSADDR
  	hex "Early debug UART physical address"
  	depends on PPC_EARLY_DEBUG_40x
  	default "0xef600300"
c374e00e1   Scott Wood   [POWERPC] Add ear...
309
310
311
  config PPC_EARLY_DEBUG_CPM_ADDR
  	hex "CPM UART early debug transmit descriptor address"
  	depends on PPC_EARLY_DEBUG_CPM
15f8c604a   Scott Wood   [POWERPC] cpm: De...
312
  	default "0xfa202008" if PPC_EP88XC
c2dd3529f   Laurent Pinchart   [POWERPC] cpm-ser...
313
  	default "0xf0001ff8" if CPM2
15f8c604a   Scott Wood   [POWERPC] cpm: De...
314
  	default "0xff002008" if CPM1
c374e00e1   Scott Wood   [POWERPC] Add ear...
315
316
317
318
319
  	help
  	  This specifies the address of the transmit descriptor
  	  used for early debug output.  Because it is needed before
  	  platform probing is done, all platforms selected must
  	  share the same address.
d6b9a81b2   Anton Blanchard   powerpc: IOMMU fa...
320
321
322
323
324
325
326
327
  config FAIL_IOMMU
  	bool "Fault-injection capability for IOMMU"
  	depends on FAULT_INJECTION
  	help
  	  Provide fault-injection capability for IOMMU. Each device can
  	  be selectively enabled via the fail_iommu property.
  
  	  If you are unsure, say N.
8eb07b187   Rashmica Gupta   powerpc/mm: Dump ...
328
  config PPC_PTDUMP
5f017a56a   Krzysztof Kozlowski   powerpc: Fix Kcon...
329
330
331
  	bool "Export kernel pagetable layout to userspace via debugfs"
  	depends on DEBUG_KERNEL && DEBUG_FS
  	help
8eb07b187   Rashmica Gupta   powerpc/mm: Dump ...
332
333
334
335
336
337
  	  This option exports the state of the kernel pagetables to a
  	  debugfs file. This is only useful for kernel developers who are
  	  working in architecture specific areas of the kernel - probably
  	  not a good idea to enable this feature in a production kernel.
  
  	  If you are unsure, say N.
453d87f6a   Russell Currey   powerpc/mm: Warn ...
338
339
  config PPC_DEBUG_WX
  	bool "Warn on W+X mappings at boot"
f509247b0   Christophe Leroy   powerpc/ptdump: O...
340
  	depends on PPC_PTDUMP && STRICT_KERNEL_RWX
453d87f6a   Russell Currey   powerpc/mm: Warn ...
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
  	help
  	  Generate a warning if any W+X mappings are found at boot.
  
  	  This is useful for discovering cases where the kernel is leaving
  	  W+X mappings after applying NX, as such mappings are a security risk.
  
  	  Note that even if the check fails, your kernel is possibly
  	  still fine, as W+X mappings are not a security hole in
  	  themselves, what they do is that they make the exploitation
  	  of other unfixed kernel bugs easier.
  
  	  There is no runtime or memory usage effect of this option
  	  once the kernel has booted up - it's a one time check.
  
  	  If in doubt, say "Y".
727f13616   Michael Ellerman   powerpc: Disable ...
356
357
  config PPC_FAST_ENDIAN_SWITCH
  	bool "Deprecated fast endian-switch syscall"
5f017a56a   Krzysztof Kozlowski   powerpc: Fix Kcon...
358
359
  	depends on DEBUG_KERNEL && PPC_BOOK3S_64
  	help
727f13616   Michael Ellerman   powerpc: Disable ...
360
  	  If you're unsure what this is, say N.
b4abe38fd   Christophe Leroy   powerpc/32: prepa...
361
362
363
364
365
  
  config KASAN_SHADOW_OFFSET
  	hex
  	depends on KASAN
  	default 0xe0000000