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