Add support for the console over Ethernet (through PCI NE2000).
[coreboot.git] / src / console / Kconfig
1 menu "Console options"
2 # TODO: Rename to SERIAL_CONSOLE once Kconfig transition is complete.
3 config CONSOLE_SERIAL8250
4         bool "Serial port console output"
5         default y
6         help
7           Send coreboot debug output to a serial port console.
8
9 choice
10         prompt "Serial port"
11         default CONSOLE_SERIAL_COM1
12         depends on CONSOLE_SERIAL8250
13
14 config CONSOLE_SERIAL_COM1
15         bool "COM1/ttyS0, I/O port 0x3f8"
16         help
17           Serial console on COM1/ttyS0 at I/O port 0x3f8.
18 config CONSOLE_SERIAL_COM2
19         bool "COM2/ttyS1, I/O port 0x2f8"
20         help
21           Serial console on COM2/ttyS1 at I/O port 0x2f8.
22 config CONSOLE_SERIAL_COM3
23         bool "COM3/ttyS2, I/O port 0x3e8"
24         help
25           Serial console on COM3/ttyS2 at I/O port 0x3e8.
26 config CONSOLE_SERIAL_COM4
27         bool "COM4/ttyS3, I/O port 0x2e8"
28         help
29           Serial console on COM4/ttyS3 at I/O port 0x2e8.
30
31 endchoice
32
33 config TTYS0_BASE
34         hex
35         depends on CONSOLE_SERIAL8250
36         default 0x3f8 if CONSOLE_SERIAL_COM1
37         default 0x2f8 if CONSOLE_SERIAL_COM2
38         default 0x3e8 if CONSOLE_SERIAL_COM3
39         default 0x2e8 if CONSOLE_SERIAL_COM4
40         help
41           Map the COM port names to the respective I/O port.
42
43 choice
44         prompt "Baud rate"
45         default CONSOLE_SERIAL_115200
46         depends on CONSOLE_SERIAL8250
47
48 config CONSOLE_SERIAL_115200
49         bool "115200"
50         help
51           Set serial port Baud rate to 115200.
52 config CONSOLE_SERIAL_57600
53         bool "57600"
54         help
55           Set serial port Baud rate to 57600.
56 config CONSOLE_SERIAL_38400
57         bool "38400"
58         help
59           Set serial port Baud rate to 38400.
60 config CONSOLE_SERIAL_19200
61         bool "19200"
62         help
63           Set serial port Baud rate to 19200.
64 config CONSOLE_SERIAL_9600
65         bool "9600"
66         help
67           Set serial port Baud rate to 9600.
68
69 endchoice
70
71 config TTYS0_BAUD
72         int
73         default 115200 if CONSOLE_SERIAL_115200
74         default 57600 if CONSOLE_SERIAL_57600
75         default 38400 if CONSOLE_SERIAL_38400
76         default 19200 if CONSOLE_SERIAL_19200
77         default 9600 if CONSOLE_SERIAL_9600
78         help
79           Map the Baud rates to an integer.
80
81 # TODO: Allow user-friendly selection of settings other than 8n1.
82 config TTYS0_LCS
83         int
84         default 3
85         depends on CONSOLE_SERIAL8250
86
87 # TODO: FIX DEPENDENCY HERE
88 config USBDEBUG
89         bool "USB 2.0 EHCI debug dongle support"
90         default n
91         help
92           This option allows you to use a so-called USB EHCI Debug device
93           to retrieve the coreboot debug messages (instead, or in addition
94           to, a serial port).
95
96           This feature is NOT supported on all chipsets in coreboot!
97
98           It also requires a USB2 controller which supports the EHCI
99           Debug Port capability. Controllers which are known to work:
100
101             * 10b9:5239 ALi Corporation USB 2.0 (USB PCI card)
102             * 8086:24cd Intel ICH4/ICH4-M
103             * 8086:24dd Intel ICH5
104             * 8086:265c Intel ICH6
105             * 8086:268c Intel 631xESB/632xESB/3100
106             * 8086:27cc Intel ICH7
107             * 8086:2836 Intel ICH8
108             * 8086:283a Intel ICH8
109             * 8086:293a Intel ICH9
110             * 10de:0088 NVIDIA MCP2A
111             * 10de:005b NVIDIA CK804
112             * 10de:026e NVIDIA MCP51
113             * 10de:036d NVIDIA MCP55
114             * 10de:03f2 NVIDIA MCP61
115             * 1002:4386 ATI/AMD SB600
116             * 1106:3104 VIA VX800
117
118           See http://www.coreboot.org/EHCI_Debug_Port for an up-to-date list.
119
120 config CONSOLE_VGA
121         bool "Use VGA console once initialized"
122         default n
123
124 # TODO: Deps?
125 # TODO: Improve description.
126 config CONSOLE_VGA_ONBOARD_AT_FIRST
127         bool "Use onboard VGA as primary video device"
128         default n
129         help
130           If not selected, the last adapter found will be used.
131
132 config CONSOLE_NE2K
133         bool "Network console over NE2000 compatible Ethernet adapter"
134         default n
135         help
136           Send coreboot debug output to a Ethernet console, it works
137           same way as Linux netconsole, packets are received to UDP
138           port 6666 on IP/MAC specified with options bellow.
139           Use following netcat command: nc -u -l -p 6666
140
141 config CONSOLE_NE2K_DST_MAC
142         depends on CONSOLE_NE2K
143         string "Destination MAC address of remote system"
144         default "00:13:d4:76:a2:ac"
145         help
146           Type in either MAC address of logging system or MAC address
147           of the router.
148
149 config CONSOLE_NE2K_DST_IP
150         depends on CONSOLE_NE2K
151         string "Destination IP of logging system"
152         default "10.0.1.27"
153         help
154           This is IP adress of the system running for example
155           netcat command to dump the packets.
156
157 config CONSOLE_NE2K_SRC_IP
158         depends on CONSOLE_NE2K
159         string "IP adress of Coreboot system"
160         default "10.0.1.253"
161         help
162           This is the IP of the Coreboot system
163
164 config CONSOLE_NE2K_IO_PORT
165         depends on CONSOLE_NE2K
166         hex "NE2000 adapter fixed IO port address"
167         default 0xe00
168         help
169           This is the IO port address for the IO port
170           on the card, please select some non-conflicting region,
171           32 bytes of IO spaces will be used (and align on 32 bytes
172           boundary, qemu needs broader align)
173
174
175 choice
176         prompt "Maximum console log level"
177         default MAXIMUM_CONSOLE_LOGLEVEL_8
178
179 config MAXIMUM_CONSOLE_LOGLEVEL_8
180         bool "8: SPEW"
181         help
182           Way too many details.
183 config MAXIMUM_CONSOLE_LOGLEVEL_7
184         bool "7: DEBUG"
185         help
186           Debug-level messages.
187 config MAXIMUM_CONSOLE_LOGLEVEL_6
188         bool "6: INFO"
189         help
190           Informational messages.
191 config MAXIMUM_CONSOLE_LOGLEVEL_5
192         bool "5: NOTICE"
193         help
194           Normal but significant conditions.
195 config MAXIMUM_CONSOLE_LOGLEVEL_4
196         bool "4: WARNING"
197         help
198           Warning conditions.
199 config MAXIMUM_CONSOLE_LOGLEVEL_3
200         bool "3: ERR"
201         help
202           Error conditions.
203 config MAXIMUM_CONSOLE_LOGLEVEL_2
204         bool "2: CRIT"
205         help
206           Critical conditions.
207 config MAXIMUM_CONSOLE_LOGLEVEL_1
208         bool "1: ALERT"
209         help
210           Action must be taken immediately.
211 config MAXIMUM_CONSOLE_LOGLEVEL_0
212         bool "0: EMERG"
213         help
214           System is unusable.
215
216 endchoice
217
218 config MAXIMUM_CONSOLE_LOGLEVEL
219         int
220         default 0 if MAXIMUM_CONSOLE_LOGLEVEL_0
221         default 1 if MAXIMUM_CONSOLE_LOGLEVEL_1
222         default 2 if MAXIMUM_CONSOLE_LOGLEVEL_2
223         default 3 if MAXIMUM_CONSOLE_LOGLEVEL_3
224         default 4 if MAXIMUM_CONSOLE_LOGLEVEL_4
225         default 5 if MAXIMUM_CONSOLE_LOGLEVEL_5
226         default 6 if MAXIMUM_CONSOLE_LOGLEVEL_6
227         default 7 if MAXIMUM_CONSOLE_LOGLEVEL_7
228         default 8 if MAXIMUM_CONSOLE_LOGLEVEL_8
229         help
230           Map the log level config names to an integer.
231
232 choice
233         prompt "Default console log level"
234         default DEFAULT_CONSOLE_LOGLEVEL_8
235
236 config DEFAULT_CONSOLE_LOGLEVEL_8
237         bool "8: SPEW"
238         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8)
239         help
240           Way too many details.
241 config DEFAULT_CONSOLE_LOGLEVEL_7
242         bool "7: DEBUG"
243         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7)
244         help
245           Debug-level messages.
246 config DEFAULT_CONSOLE_LOGLEVEL_6
247         bool "6: INFO"
248         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
249                     MAXIMUM_CONSOLE_LOGLEVEL_6)
250         help
251           Informational messages.
252 config DEFAULT_CONSOLE_LOGLEVEL_5
253         bool "5: NOTICE"
254         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
255                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5)
256         help
257           Normal but significant conditions.
258 config DEFAULT_CONSOLE_LOGLEVEL_4
259         bool "4: WARNING"
260         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
261                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
262                     MAXIMUM_CONSOLE_LOGLEVEL_4)
263         help
264           Warning conditions.
265 config DEFAULT_CONSOLE_LOGLEVEL_3
266         bool "3: ERR"
267         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
268                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
269                     MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3)
270         help
271           Error conditions.
272 config DEFAULT_CONSOLE_LOGLEVEL_2
273         bool "2: CRIT"
274         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
275                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
276                     MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3 ||\
277                     MAXIMUM_CONSOLE_LOGLEVEL_2)
278         help
279           Critical conditions.
280 config DEFAULT_CONSOLE_LOGLEVEL_1
281         bool "1: ALERT"
282         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
283                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
284                     MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3 ||\
285                     MAXIMUM_CONSOLE_LOGLEVEL_2 || MAXIMUM_CONSOLE_LOGLEVEL_1)
286         help
287           Action must be taken immediately.
288 config DEFAULT_CONSOLE_LOGLEVEL_0
289         bool "0: EMERG"
290         help
291           System is unusable.
292
293 endchoice
294
295 config DEFAULT_CONSOLE_LOGLEVEL
296         int
297         default 0 if DEFAULT_CONSOLE_LOGLEVEL_0
298         default 1 if DEFAULT_CONSOLE_LOGLEVEL_1
299         default 2 if DEFAULT_CONSOLE_LOGLEVEL_2
300         default 3 if DEFAULT_CONSOLE_LOGLEVEL_3
301         default 4 if DEFAULT_CONSOLE_LOGLEVEL_4
302         default 5 if DEFAULT_CONSOLE_LOGLEVEL_5
303         default 6 if DEFAULT_CONSOLE_LOGLEVEL_6
304         default 7 if DEFAULT_CONSOLE_LOGLEVEL_7
305         default 8 if DEFAULT_CONSOLE_LOGLEVEL_8
306         help
307           Map the log level config names to an integer.
308
309 config CONSOLE_BTEXT
310         bool
311         default n
312
313 config CONSOLE_SROM
314         bool
315         default n
316
317 config CONSOLE_LOGBUF
318         bool
319         default n
320
321 config NO_POST
322         bool "Don't show any POST codes"
323         default n
324
325 config SERIAL_POST
326         bool "Show POST codes on the serial port console"
327         depends on CONSOLE_SERIAL8250 && !NO_POST
328         default n
329         help
330           If enabled, coreboot will additionally print POST codes (which are
331           usually displayed using a so-called "POST card" ISA/PCI/PCI-E
332           device) on the serial console.
333
334 endmenu
335