• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1menu "Kernel hacking"
2
3source "lib/Kconfig.debug"
4
5config DEBUG_STACKOVERFLOW
6	bool "Check for stack overflows"
7	depends on DEBUG_KERNEL
8
9config DEBUG_DECOMPRESS_KERNEL
10	bool "Using serial port during decompressing kernel"
11	depends on DEBUG_KERNEL
12	default n
13	help
14	  If you say Y here you will confirm the start and the end of
15	  decompressing Linux seeing "Uncompressing Linux... " and
16	  "Ok, booting the kernel.\n" on console.
17
18config TEST_MISALIGNMENT_HANDLER
19	bool "Run tests on the misalignment handler"
20	depends on DEBUG_KERNEL
21	default n
22	help
23	  If you say Y here the kernel will execute a list of misaligned memory
24	  accesses to make sure the misalignment handler deals them with
25	  correctly.  If it does not, the kernel will throw a BUG.
26
27config KPROBES
28	bool "Kprobes"
29	depends on DEBUG_KERNEL
30	help
31	  Kprobes allows you to trap at almost any kernel address and
32	  execute a callback function.  register_kprobe() establishes
33	  a probepoint and specifies the callback.  Kprobes is useful
34	  for kernel debugging, non-intrusive instrumentation and testing.
35	  If in doubt, say "N".
36
37config GDBSTUB
38	bool "Remote GDB kernel debugging"
39	depends on DEBUG_KERNEL
40	select DEBUG_INFO
41	select FRAME_POINTER
42	help
43	  If you say Y here, it will be possible to remotely debug the kernel
44	  using gdb. This enlarges your kernel ELF image disk size by several
45	  megabytes and requires a machine with more than 16 MB, better 32 MB
46	  RAM to avoid excessive linking time. This is only useful for kernel
47	  hackers. If unsure, say N.
48
49config GDBSTUB_IMMEDIATE
50	bool "Break into GDB stub immediately"
51	depends on GDBSTUB
52	help
53	  If you say Y here, GDB stub will break into the program as soon as
54	  possible, leaving the program counter at the beginning of
55	  start_kernel() in init/main.c.
56
57config GDB_CONSOLE
58	bool "Console output to GDB"
59	depends on GDBSTUB
60	help
61	  If you are using GDB for remote debugging over a serial port and
62	  would like kernel messages to be formatted into GDB $O packets so
63	  that GDB prints them as program output, say 'Y'.
64
65config GDBSTUB_DEBUGGING
66	bool "Debug GDB stub by messages to serial port"
67	depends on GDBSTUB
68	help
69	  This causes debugging messages to be displayed at various points
70	  during execution of the GDB stub routines. Such messages will be
71	  displayed on ttyS0 if that isn't the GDB stub's port, or ttySM0
72	  otherwise.
73
74config GDBSTUB_DEBUG_ENTRY
75	bool "Debug GDB stub entry"
76	depends on GDBSTUB_DEBUGGING
77	help
78	  This option causes information to be displayed about entry to or exit
79	  from the main GDB stub routine.
80
81config GDBSTUB_DEBUG_PROTOCOL
82	bool "Debug GDB stub protocol"
83	depends on GDBSTUB_DEBUGGING
84	help
85	  This option causes information to be displayed about the GDB remote
86	  protocol messages generated exchanged with GDB.
87
88config GDBSTUB_DEBUG_IO
89	bool "Debug GDB stub I/O"
90	depends on GDBSTUB_DEBUGGING
91	help
92	  This option causes information to be displayed about GDB stub's
93	  low-level I/O.
94
95config GDBSTUB_DEBUG_BREAKPOINT
96	bool "Debug GDB stub breakpoint management"
97	depends on GDBSTUB_DEBUGGING
98	help
99	  This option causes information to be displayed about GDB stub's
100	  breakpoint management.
101
102choice
103	prompt "GDB stub port"
104	default GDBSTUB_TTYSM0
105	depends on GDBSTUB
106	help
107	  Select the serial port used for GDB-stub.
108
109config GDBSTUB_ON_TTYSM0
110	bool "/dev/ttySM0 [SIF0]"
111	depends on MN10300_TTYSM0
112	select GDBSTUB_ON_TTYSMx
113
114config GDBSTUB_ON_TTYSM1
115	bool "/dev/ttySM1 [SIF1]"
116	depends on MN10300_TTYSM1
117	select GDBSTUB_ON_TTYSMx
118
119config GDBSTUB_ON_TTYSM2
120	bool "/dev/ttySM2 [SIF2]"
121	depends on MN10300_TTYSM2
122	select GDBSTUB_ON_TTYSMx
123
124config GDBSTUB_ON_TTYS0
125	bool "/dev/ttyS0"
126	select GDBSTUB_ON_TTYSx
127
128config GDBSTUB_ON_TTYS1
129	bool "/dev/ttyS1"
130	select GDBSTUB_ON_TTYSx
131
132endchoice
133
134config GDBSTUB_ON_TTYSMx
135	bool
136	depends on GDBSTUB_ON_TTYSM0 || GDBSTUB_ON_TTYSM1 || GDBSTUB_ON_TTYSM2
137	default y
138
139config GDBSTUB_ON_TTYSx
140	bool
141	depends on GDBSTUB_ON_TTYS0 || GDBSTUB_ON_TTYS1
142	default y
143
144endmenu
145