BOOT_CONSOLE(8)

NAME
boot_console - selection of a console device in the i386 bootloader

DESCRIPTION
The NetBSD i386 bootloader selects a console device for its user interaction and passes information about it to the NetBSD kernel. The selection process is controlled by bootloader compile-time options and system setup at the bootloader startup time.

  Serial Console Options
The compile-time options (to be set in the booter's “Makefile”) are:

SUPPORT_SERIAL=policy
enables support for serial input / output. By default this option is not set and the standard PC keyboard and display are always used as the console device. See “Console selection Policy” below for valid values of policy.

DIRECT_SERIAL
causes direct hardware access to be used for serial input / output. With this option, software handshake (XON/XOFF) is used for flow control. Without this option, BIOS functions are employed for serial port handling, which require hardware handshake lines to be completely wired.

CONSPEED=integer
sets the baud-rate for the serial console. This option has only an effect when used in combination with the “DIRECT_SERIAL” option above, otherwise, the default setting of 9600 baud is used. The value of integer must be something that makes sense as a serial port baud rate.

COMCONS_KEYPRESS
Require a character input within seven(7) seconds from serial console device to be selected.

  Console Selection Policy
The actual policy for the console selection is determined by the value of “SUPPORT_SERIAL” The following options are available:

CONSDEV_PC
Force use of the standard PC keyboard and display as the console.

CONSDEV_COM0 ... CONSDEV_COM3
Use the serial port with the corresponding BIOS number as the console. No output is attempted to the selected serial port. If the port is not known to the BIOS, it falls back to “CONSDEV_PC”. (Note: This feature can be deliberately used for console selection if the serial ports have been disabled in the BIOS.)

CONSDEV_COM0KBD ... CONSDEV_COM3KBD
If the port is known to the BIOS, and output of a character to the port succeeds (and if “DIRECT_SERIAL” is defined the RS-232 “modem ready” status is on after the character is output), and the conditions described under “COMCONS_KEYPRESS” above are fulfilled, the port is used as console. If the port is not known to the BIOS, it falls back to “CONSDEV_PC”.

CONSDEV_AUTO
Auto-select the console. All serial ports known to the BIOS are probed in sequence. If output of a character to the port succeeds (and if “DIRECT_SERIAL” is defined the RS-232 “modem ready” status is on after the character is output), and the conditions described under “COMCONS_KEYPRESS” above are fulfilled, the port is used as console. If no serial port passes the check, “CONSDEV_PC” is used. The progress of the selection process is shown at the PC display as digits corresponding to the serial port number currently probed.

FILES

/sys/arch/i386/stand/{bios,dos,net}boot/Makefile
    compile time options for the boot programs.

SEE ALSO
console(4), boot(8)

BUGS
The value of SERIAL_POLICY should be settable through a boot configuration option. However traditionally there was no non-volatile storage available on the PC platform. This requires console auto-selection methods which can be inconvenient and / or unstable in some situations. The selection policy should be adapted to the local hardware configuration, which might require code changes. (Some BIOS versions, particularly those used on large servers and in embedded and single-board industrial computers, have integrated support for serial consoles. The boot loader should query for these settings if possible.)

The serial communication parameters (byte-size, parity, stop-bits) are not settable (either at compile time or run time). The default parameters are “8 N 1”.

The baud rate is not settable when using BIOS I/O. It should be settable at compile time with “CONSPEED” just as it is when using “DIRECT_SERIAL”. The default speed is 9600 baud (the maximum for BIOS I/O).