972276b675d1ad291a266b8fd53e8f03bddef709
[coreboot.git] / src / console / Kconfig
1 menu "Console"
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 # Use "select HAVE_USBDEBUG" on southbridges which have Debug Port code.
88 config HAVE_USBDEBUG
89         def_bool n
90
91 config USBDEBUG
92         def_bool n
93
94 config USBDEBUG
95         bool "USB 2.0 EHCI debug dongle support"
96         default n
97         depends on HAVE_USBDEBUG
98         help
99           This option allows you to use a so-called USB EHCI Debug device
100           (such as the Ajays NET20DC, AMIDebug RX, or a system using the
101           Linux "EHCI Debug Device gadget" driver found in recent kernel)
102           to retrieve the coreboot debug messages (instead, or in addition
103           to, a serial port).
104
105           This feature is NOT supported on all chipsets in coreboot!
106
107           It also requires a USB2 controller which supports the EHCI
108           Debug Port capability.
109
110           See http://www.coreboot.org/EHCI_Debug_Port for an up-to-date list
111           of supported controllers.
112
113           If unsure, say N.
114
115 # Note: This option doesn't make sense on Intel ICH / AMD SB600 southbridges
116 # as those hardcode the physical USB port to be used as Debug Port to 1.
117 # It cannot be changed by coreboot.
118 config USBDEBUG_DEFAULT_PORT
119         int "Default USB port to use as Debug Port"
120         default 1
121         depends on USBDEBUG && !SOUTHBRIDGE_INTEL_I82801GX && !SOUTHBRIDGE_AMD_SB600
122         help
123           This option selects which physical USB port coreboot will try to
124           use as EHCI Debug Port first (valid values are: 1-15).
125
126           If coreboot doesn't detect an EHCI Debug Port dongle on this port,
127           it will try all the other ports one after the other. This will take
128           a few seconds of time though, and thus slow down the booting process.
129
130           Hence, if you select the correct port here, you can speed up
131           your boot time. Which USB port number (1-15) refers to which
132           actual port on your mainboard (potentially also USB pin headers
133           on your mainboard) is highly board-specific, and you'll likely
134           have to find out by trial-and-error.
135
136 # TODO: Deps?
137 # TODO: Improve description.
138 config ONBOARD_VGA_IS_PRIMARY
139         bool "Use onboard VGA as primary video device"
140         default n
141         help
142           If not selected, the last adapter found will be used.
143
144 config CONSOLE_NE2K
145         bool "Network console over NE2000 compatible Ethernet adapter"
146         default n
147         help
148           Send coreboot debug output to a Ethernet console, it works
149           same way as Linux netconsole, packets are received to UDP
150           port 6666 on IP/MAC specified with options bellow.
151           Use following netcat command: nc -u -l -p 6666
152
153 config CONSOLE_NE2K_DST_MAC
154         depends on CONSOLE_NE2K
155         string "Destination MAC address of remote system"
156         default "00:13:d4:76:a2:ac"
157         help
158           Type in either MAC address of logging system or MAC address
159           of the router.
160
161 config CONSOLE_NE2K_DST_IP
162         depends on CONSOLE_NE2K
163         string "Destination IP of logging system"
164         default "10.0.1.27"
165         help
166           This is IP adress of the system running for example
167           netcat command to dump the packets.
168
169 config CONSOLE_NE2K_SRC_IP
170         depends on CONSOLE_NE2K
171         string "IP address of coreboot system"
172         default "10.0.1.253"
173         help
174           This is the IP of the coreboot system
175
176 config CONSOLE_NE2K_IO_PORT
177         depends on CONSOLE_NE2K
178         hex "NE2000 adapter fixed IO port address"
179         default 0xe00
180         help
181           This is the IO port address for the IO port
182           on the card, please select some non-conflicting region,
183           32 bytes of IO spaces will be used (and align on 32 bytes
184           boundary, qemu needs broader align)
185
186
187 choice
188         prompt "Maximum console log level"
189         default MAXIMUM_CONSOLE_LOGLEVEL_8
190
191 config MAXIMUM_CONSOLE_LOGLEVEL_8
192         bool "8: SPEW"
193         help
194           Way too many details.
195 config MAXIMUM_CONSOLE_LOGLEVEL_7
196         bool "7: DEBUG"
197         help
198           Debug-level messages.
199 config MAXIMUM_CONSOLE_LOGLEVEL_6
200         bool "6: INFO"
201         help
202           Informational messages.
203 config MAXIMUM_CONSOLE_LOGLEVEL_5
204         bool "5: NOTICE"
205         help
206           Normal but significant conditions.
207 config MAXIMUM_CONSOLE_LOGLEVEL_4
208         bool "4: WARNING"
209         help
210           Warning conditions.
211 config MAXIMUM_CONSOLE_LOGLEVEL_3
212         bool "3: ERR"
213         help
214           Error conditions.
215 config MAXIMUM_CONSOLE_LOGLEVEL_2
216         bool "2: CRIT"
217         help
218           Critical conditions.
219 config MAXIMUM_CONSOLE_LOGLEVEL_1
220         bool "1: ALERT"
221         help
222           Action must be taken immediately.
223 config MAXIMUM_CONSOLE_LOGLEVEL_0
224         bool "0: EMERG"
225         help
226           System is unusable.
227
228 endchoice
229
230 config MAXIMUM_CONSOLE_LOGLEVEL
231         int
232         default 0 if MAXIMUM_CONSOLE_LOGLEVEL_0
233         default 1 if MAXIMUM_CONSOLE_LOGLEVEL_1
234         default 2 if MAXIMUM_CONSOLE_LOGLEVEL_2
235         default 3 if MAXIMUM_CONSOLE_LOGLEVEL_3
236         default 4 if MAXIMUM_CONSOLE_LOGLEVEL_4
237         default 5 if MAXIMUM_CONSOLE_LOGLEVEL_5
238         default 6 if MAXIMUM_CONSOLE_LOGLEVEL_6
239         default 7 if MAXIMUM_CONSOLE_LOGLEVEL_7
240         default 8 if MAXIMUM_CONSOLE_LOGLEVEL_8
241         help
242           Map the log level config names to an integer.
243
244 choice
245         prompt "Default console log level"
246         default DEFAULT_CONSOLE_LOGLEVEL_8
247
248 config DEFAULT_CONSOLE_LOGLEVEL_8
249         bool "8: SPEW"
250         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8)
251         help
252           Way too many details.
253 config DEFAULT_CONSOLE_LOGLEVEL_7
254         bool "7: DEBUG"
255         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7)
256         help
257           Debug-level messages.
258 config DEFAULT_CONSOLE_LOGLEVEL_6
259         bool "6: INFO"
260         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
261                     MAXIMUM_CONSOLE_LOGLEVEL_6)
262         help
263           Informational messages.
264 config DEFAULT_CONSOLE_LOGLEVEL_5
265         bool "5: NOTICE"
266         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
267                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5)
268         help
269           Normal but significant conditions.
270 config DEFAULT_CONSOLE_LOGLEVEL_4
271         bool "4: WARNING"
272         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
273                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
274                     MAXIMUM_CONSOLE_LOGLEVEL_4)
275         help
276           Warning conditions.
277 config DEFAULT_CONSOLE_LOGLEVEL_3
278         bool "3: ERR"
279         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
280                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
281                     MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3)
282         help
283           Error conditions.
284 config DEFAULT_CONSOLE_LOGLEVEL_2
285         bool "2: CRIT"
286         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
287                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
288                     MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3 ||\
289                     MAXIMUM_CONSOLE_LOGLEVEL_2)
290         help
291           Critical conditions.
292 config DEFAULT_CONSOLE_LOGLEVEL_1
293         bool "1: ALERT"
294         depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\
295                     MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\
296                     MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3 ||\
297                     MAXIMUM_CONSOLE_LOGLEVEL_2 || MAXIMUM_CONSOLE_LOGLEVEL_1)
298         help
299           Action must be taken immediately.
300 config DEFAULT_CONSOLE_LOGLEVEL_0
301         bool "0: EMERG"
302         help
303           System is unusable.
304
305 endchoice
306
307 config DEFAULT_CONSOLE_LOGLEVEL
308         int
309         default 0 if DEFAULT_CONSOLE_LOGLEVEL_0
310         default 1 if DEFAULT_CONSOLE_LOGLEVEL_1
311         default 2 if DEFAULT_CONSOLE_LOGLEVEL_2
312         default 3 if DEFAULT_CONSOLE_LOGLEVEL_3
313         default 4 if DEFAULT_CONSOLE_LOGLEVEL_4
314         default 5 if DEFAULT_CONSOLE_LOGLEVEL_5
315         default 6 if DEFAULT_CONSOLE_LOGLEVEL_6
316         default 7 if DEFAULT_CONSOLE_LOGLEVEL_7
317         default 8 if DEFAULT_CONSOLE_LOGLEVEL_8
318         help
319           Map the log level config names to an integer.
320
321 config CONSOLE_LOGBUF
322         bool
323         default n
324
325 config NO_POST
326         bool "Don't show any POST codes"
327         default n
328
329 config CONSOLE_POST
330         bool "Show POST codes on the debug console"
331         depends on !NO_POST
332         default n
333         help
334           If enabled, coreboot will additionally print POST codes (which are
335           usually displayed using a so-called "POST card" ISA/PCI/PCI-E
336           device) on the debug console.
337
338 endmenu
339