xref: /openbmc/linux/arch/mips/Kconfig.debug (revision e60865572f81fb2687163fd37ea37cd4283e0bce)
11da177e4SLinus Torvaldsmenu "Kernel hacking"
21da177e4SLinus Torvalds
3192ef366SRalf Baechleconfig TRACE_IRQFLAGS_SUPPORT
4192ef366SRalf Baechle	bool
5192ef366SRalf Baechle	default y
6192ef366SRalf Baechle
71da177e4SLinus Torvaldssource "lib/Kconfig.debug"
81da177e4SLinus Torvalds
94dd92e15SRalf Baechleconfig EARLY_PRINTK
106a108a14SDavid Rientjes	bool "Early printk" if EXPERT
114dd92e15SRalf Baechle	depends on SYS_HAS_EARLY_PRINTK
124dd92e15SRalf Baechle	default y
134dd92e15SRalf Baechle	help
144dd92e15SRalf Baechle	  This option enables special console drivers which allow the kernel
154dd92e15SRalf Baechle	  to print messages very early in the bootup process.
164dd92e15SRalf Baechle
174dd92e15SRalf Baechle	  This is useful for kernel debugging when your machine crashes very
184dd92e15SRalf Baechle	  early before the console code is initialized. For normal operation,
194dd92e15SRalf Baechle	  it is not recommended because it looks ugly on some machines and
204dd92e15SRalf Baechle	  doesn't cooperate with an X server. You should normally say N here,
214dd92e15SRalf Baechle	  unless you want to debug such a crash.
224dd92e15SRalf Baechle
237cd93b89SYoichi Yuasaconfig EARLY_PRINTK_8250
24*e6086557SRalf Baechle	bool
25*e6086557SRalf Baechle	depends on EARLY_PRINTK && USE_GENERIC_EARLY_PRINTK_8250
26*e6086557SRalf Baechle	default y
277cd93b89SYoichi Yuasa	help
28*e6086557SRalf Baechle	  "8250/16550 and compatible serial early printk driver"
297cd93b89SYoichi Yuasa	  If you say Y here, it will be possible to use a 8250/16550 serial
307cd93b89SYoichi Yuasa	  port as the boot console.
317cd93b89SYoichi Yuasa
32*e6086557SRalf Baechleconfig USE_GENERIC_EARLY_PRINTK_8250
33*e6086557SRalf Baechle	bool
34*e6086557SRalf Baechle
356acc7d48SDmitri Vorobievconfig CMDLINE_BOOL
366acc7d48SDmitri Vorobiev	bool "Built-in kernel command line"
376acc7d48SDmitri Vorobiev	default n
386acc7d48SDmitri Vorobiev	help
396acc7d48SDmitri Vorobiev	  For most systems, it is firmware or second stage bootloader that
406acc7d48SDmitri Vorobiev	  by default specifies the kernel command line options.  However,
416acc7d48SDmitri Vorobiev	  it might be necessary or advantageous to either override the
426acc7d48SDmitri Vorobiev	  default kernel command line or add a few extra options to it.
436acc7d48SDmitri Vorobiev	  For such cases, this option allows you to hardcode your own
446acc7d48SDmitri Vorobiev	  command line options directly into the kernel.  For that, you
456acc7d48SDmitri Vorobiev	  should choose 'Y' here, and fill in the extra boot arguments
466acc7d48SDmitri Vorobiev	  in CONFIG_CMDLINE.
476acc7d48SDmitri Vorobiev
486acc7d48SDmitri Vorobiev	  The built-in options will be concatenated to the default command
496acc7d48SDmitri Vorobiev	  line if CMDLINE_OVERRIDE is set to 'N'. Otherwise, the default
506acc7d48SDmitri Vorobiev	  command line will be ignored and replaced by the built-in string.
516acc7d48SDmitri Vorobiev
526acc7d48SDmitri Vorobiev	  Most MIPS systems will normally expect 'N' here and rely upon
536acc7d48SDmitri Vorobiev	  the command line from the firmware or the second-stage bootloader.
546acc7d48SDmitri Vorobiev
551da177e4SLinus Torvaldsconfig CMDLINE
561da177e4SLinus Torvalds	string "Default kernel command string"
576acc7d48SDmitri Vorobiev	depends on CMDLINE_BOOL
581da177e4SLinus Torvalds	default ""
591da177e4SLinus Torvalds	help
601da177e4SLinus Torvalds	  On some platforms, there is currently no way for the boot loader to
616acc7d48SDmitri Vorobiev	  pass arguments to the kernel.  For these platforms, and for the cases
626acc7d48SDmitri Vorobiev	  when you want to add some extra options to the command line or ignore
636acc7d48SDmitri Vorobiev	  the default command line, you can supply some command-line options at
646acc7d48SDmitri Vorobiev	  build time by entering them here.  In other cases you can specify
656acc7d48SDmitri Vorobiev	  kernel args so that you don't have to set them up in board prom
666acc7d48SDmitri Vorobiev	  initialization routines.
676acc7d48SDmitri Vorobiev
686acc7d48SDmitri Vorobiev	  For more information, see the CMDLINE_BOOL and CMDLINE_OVERRIDE
696acc7d48SDmitri Vorobiev	  options.
706acc7d48SDmitri Vorobiev
716acc7d48SDmitri Vorobievconfig CMDLINE_OVERRIDE
726b2aac42SMasanari Iida	bool "Built-in command line overrides firmware arguments"
736acc7d48SDmitri Vorobiev	default n
746acc7d48SDmitri Vorobiev	depends on CMDLINE_BOOL
756acc7d48SDmitri Vorobiev	help
766acc7d48SDmitri Vorobiev	  By setting this option to 'Y' you will have your kernel ignore
776acc7d48SDmitri Vorobiev	  command line arguments from firmware or second stage bootloader.
786acc7d48SDmitri Vorobiev	  Instead, the built-in command line will be used exclusively.
796acc7d48SDmitri Vorobiev
806acc7d48SDmitri Vorobiev	  Normally, you will choose 'N' here.
811da177e4SLinus Torvalds
829349075aSRalf Baechleconfig SMTC_IDLE_HOOK_DEBUG
83c68644d3SRalf Baechle	bool "Enable additional debug checks before going into CPU idle loop"
84c68644d3SRalf Baechle	depends on DEBUG_KERNEL && MIPS_MT_SMTC
85c68644d3SRalf Baechle	help
86c68644d3SRalf Baechle	  This option enables Enable additional debug checks before going into
87c68644d3SRalf Baechle	  CPU idle loop.  For details on these checks, see
88c68644d3SRalf Baechle	  arch/mips/kernel/smtc.c.  This debugging option result in significant
89c68644d3SRalf Baechle	  overhead so should be disabled in production kernels.
90c68644d3SRalf Baechle
911da177e4SLinus Torvaldsconfig SB1XXX_CORELIS
921da177e4SLinus Torvalds	bool "Corelis Debugger"
931da177e4SLinus Torvalds	depends on SIBYTE_SB1xxx_SOC
941da177e4SLinus Torvalds	select DEBUG_INFO
951da177e4SLinus Torvalds	help
961da177e4SLinus Torvalds	  Select compile flags that produce code that can be processed by the
971da177e4SLinus Torvalds	  Corelis mksym utility and UDB Emulator.
981da177e4SLinus Torvalds
991da177e4SLinus Torvaldsconfig RUNTIME_DEBUG
1001da177e4SLinus Torvalds	bool "Enable run-time debugging"
1011da177e4SLinus Torvalds	depends on DEBUG_KERNEL
1021da177e4SLinus Torvalds	help
1031da177e4SLinus Torvalds	  If you say Y here, some debugging macros will do run-time checking.
1041da177e4SLinus Torvalds	  If you say N here, those macros will mostly turn to no-ops.  See
10500ace207SDmitri Vorobiev	  arch/mips/include/asm/debug.h for debugging macros.
1061da177e4SLinus Torvalds	  If unsure, say N.
1071da177e4SLinus Torvalds
108f86a69b1SWu Zhangjinconfig DEBUG_ZBOOT
109f86a69b1SWu Zhangjin	bool "Enable compressed kernel support debugging"
110f86a69b1SWu Zhangjin	depends on DEBUG_KERNEL && SYS_SUPPORTS_ZBOOT
111f86a69b1SWu Zhangjin	default n
112f86a69b1SWu Zhangjin	help
113f86a69b1SWu Zhangjin	  If you want to add compressed kernel support to a new board, and the
114f86a69b1SWu Zhangjin	  board supports uart16550 compatible serial port, please select
115f86a69b1SWu Zhangjin	  SYS_SUPPORTS_ZBOOT_UART16550 for your board and enable this option to
116f86a69b1SWu Zhangjin	  debug it.
117f86a69b1SWu Zhangjin
118f86a69b1SWu Zhangjin	  If your board doesn't support uart16550 compatible serial port, you
119f86a69b1SWu Zhangjin	  can try to select SYS_SUPPORTS_ZBOOT and use the other methods to
120f86a69b1SWu Zhangjin	  debug it. for example, add a new serial port support just as
121f86a69b1SWu Zhangjin	  arch/mips/boot/compressed/uart-16550.c does.
122f86a69b1SWu Zhangjin
123f86a69b1SWu Zhangjin	  After the compressed kernel support works, please disable this option
124f86a69b1SWu Zhangjin	  to reduce the kernel image size and speed up the booting procedure a
125f86a69b1SWu Zhangjin	  little.
126f86a69b1SWu Zhangjin
127bba90760SDavid Daneyconfig SPINLOCK_TEST
128bba90760SDavid Daney	bool "Enable spinlock timing tests in debugfs"
129bba90760SDavid Daney	depends on DEBUG_FS
130bba90760SDavid Daney	default n
131bba90760SDavid Daney	help
132bba90760SDavid Daney	  Add several files to the debugfs to test spinlock speed.
133bba90760SDavid Daney
1341da177e4SLinus Torvaldsendmenu
135