xref: /openbmc/linux/arch/mips/Kconfig.debug (revision 2d972b6a)
1# SPDX-License-Identifier: GPL-2.0
2menu "Kernel hacking"
3
4config TRACE_IRQFLAGS_SUPPORT
5	bool
6	default y
7
8source "lib/Kconfig.debug"
9
10config EARLY_PRINTK
11	bool "Early printk" if EXPERT
12	depends on SYS_HAS_EARLY_PRINTK
13	default y
14	help
15	  This option enables special console drivers which allow the kernel
16	  to print messages very early in the bootup process.
17
18	  This is useful for kernel debugging when your machine crashes very
19	  early before the console code is initialized. For normal operation,
20	  it is not recommended because it looks ugly on some machines and
21	  doesn't cooperate with an X server. You should normally say N here,
22	  unless you want to debug such a crash.
23
24config EARLY_PRINTK_8250
25	bool
26	depends on EARLY_PRINTK && USE_GENERIC_EARLY_PRINTK_8250
27	default y
28	help
29	  "8250/16550 and compatible serial early printk driver"
30	  If you say Y here, it will be possible to use a 8250/16550 serial
31	  port as the boot console.
32
33config USE_GENERIC_EARLY_PRINTK_8250
34	bool
35
36config CMDLINE_BOOL
37	bool "Built-in kernel command line"
38	default n
39	help
40	  For most systems, it is firmware or second stage bootloader that
41	  by default specifies the kernel command line options.  However,
42	  it might be necessary or advantageous to either override the
43	  default kernel command line or add a few extra options to it.
44	  For such cases, this option allows you to hardcode your own
45	  command line options directly into the kernel.  For that, you
46	  should choose 'Y' here, and fill in the extra boot arguments
47	  in CONFIG_CMDLINE.
48
49	  The built-in options will be concatenated to the default command
50	  line if CMDLINE_OVERRIDE is set to 'N'. Otherwise, the default
51	  command line will be ignored and replaced by the built-in string.
52
53	  Most MIPS systems will normally expect 'N' here and rely upon
54	  the command line from the firmware or the second-stage bootloader.
55
56config CMDLINE
57	string "Default kernel command string"
58	depends on CMDLINE_BOOL
59	default ""
60	help
61	  On some platforms, there is currently no way for the boot loader to
62	  pass arguments to the kernel.  For these platforms, and for the cases
63	  when you want to add some extra options to the command line or ignore
64	  the default command line, you can supply some command-line options at
65	  build time by entering them here.  In other cases you can specify
66	  kernel args so that you don't have to set them up in board prom
67	  initialization routines.
68
69	  For more information, see the CMDLINE_BOOL and CMDLINE_OVERRIDE
70	  options.
71
72config CMDLINE_OVERRIDE
73	bool "Built-in command line overrides firmware arguments"
74	default n
75	depends on CMDLINE_BOOL
76	help
77	  By setting this option to 'Y' you will have your kernel ignore
78	  command line arguments from firmware or second stage bootloader.
79	  Instead, the built-in command line will be used exclusively.
80
81	  Normally, you will choose 'N' here.
82
83config SB1XXX_CORELIS
84	bool "Corelis Debugger"
85	depends on SIBYTE_SB1xxx_SOC
86	select DEBUG_INFO if !COMPILE_TEST
87	help
88	  Select compile flags that produce code that can be processed by the
89	  Corelis mksym utility and UDB Emulator.
90
91config DEBUG_ZBOOT
92	bool "Enable compressed kernel support debugging"
93	depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT
94	default n
95	help
96	  If you want to add compressed kernel support to a new board, and the
97	  board supports uart16550 compatible serial port, please select
98	  SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to
99	  debug it.
100
101	  If your board doesn't support uart16550 compatible serial port, you
102	  can try to select SYS_SUPPORTS_ZBOOT and use the other methods to
103	  debug it. for example, add a new serial port support just as
104	  arch/mips/boot/compressed/uart-16550.c does.
105
106	  After the compressed kernel support works, please disable this option
107	  to reduce the kernel image size and speed up the booting procedure a
108	  little.
109
110config SPINLOCK_TEST
111	bool "Enable spinlock timing tests in debugfs"
112	depends on DEBUG_FS
113	default n
114	help
115	  Add several files to the debugfs to test spinlock speed.
116
117config SCACHE_DEBUGFS
118	bool "L2 cache debugfs entries"
119	depends on DEBUG_FS
120	help
121	  Enable this to allow parts of the L2 cache configuration, such as
122	  whether or not prefetching is enabled, to be exposed to userland
123	  via debugfs.
124
125	  If unsure, say N.
126
127menuconfig MIPS_CPS_NS16550_BOOL
128	bool "CPS SMP NS16550 UART output"
129	depends on MIPS_CPS
130	help
131	  Output debug information via an ns16550 compatible UART if exceptions
132	  occur early in the boot process of a secondary core.
133
134if MIPS_CPS_NS16550_BOOL
135
136config MIPS_CPS_NS16550
137	def_bool MIPS_CPS_NS16550_BASE != 0
138
139config MIPS_CPS_NS16550_BASE
140	hex "UART Base Address"
141	default 0x1b0003f8 if MIPS_MALTA
142	default 0
143	help
144	  The base address of the ns16550 compatible UART on which to output
145	  debug information from the early stages of core startup.
146
147	  This is only used if non-zero.
148
149config MIPS_CPS_NS16550_SHIFT
150	int "UART Register Shift"
151	default 0
152	help
153	  The number of bits to shift ns16550 register indices by in order to
154	  form their addresses. That is, log base 2 of the span between
155	  adjacent ns16550 registers in the system.
156
157endif # MIPS_CPS_NS16550_BOOL
158
159endmenu
160