Difference between revisions of "Console and outputs"

From coreboot
Jump to navigation Jump to search
Line 3: Line 3:
! Output name
! Output name
! direction (from the target coreboot machine point of view)
! direction (from the target coreboot machine point of view)
! Hardware requirements
! Requirements
! software compatibility (compatibility with software loaded after coreboot, like OS payloads etc...)
! software compatibility (compatibility with software loaded after coreboot, like OS payloads etc...)
|-
|-
Line 29: Line 29:
* input?
* input?
* output
* output
|
* An USB debug port supported by coreboot.
* To find on which usb connector it goes.
|
|
* grub
* grub
Line 37: Line 40:
|
|
* output only
* output only
|
* A working "beep" sound card at boot. On some laptops it's necessary to tell the embedded controller to enable sound output to get it working.
|
|
For writting to it from the coreboot target computer:
For writting to it from the coreboot target computer:
Line 46: Line 51:
! [[Network console]]
! [[Network console]]
(sends coreboot logs over the network)
(sends coreboot logs over the network)
|
* A ne2k compatible ethernet card.
|
|
* output
* output
Line 56: Line 63:
* input/output for grub.
* input/output for grub.
* It requires the computer to be booted to retrive the logs.
* It requires the computer to be booted to retrive the logs.
|
* a coreboot device with cbmem working.
|
|
For writting to the buffer which is in the coreboot target computer:
For writting to the buffer which is in the coreboot target computer:

Revision as of 12:55, 15 December 2013

Coreboot has various possible consoles:

Output name direction (from the target coreboot machine point of view) Requirements software compatibility (compatibility with software loaded after coreboot, like OS payloads etc...)
Serial console

(sends coreboot logs over the serial port)

  • input
  • output
  • An internal(not USB) serial port:
    • it can on the mainboard
    • it can also be a PCIe OXPCIe952 card with the 0x1415 and 0xc158 vendor and device ID (respectively).
    • USB serial ports are not supported by coreboot yet.
  • seabios
  • grub as a payload
  • grub running after seabios
  • libpayload
  • linux kernel (loaded after the payload)
  • most GNU/Linux init systems(sysvinit, systemd, upstart etc...)
Console Over EHCI debug port

(sends coreboot logs over the usb debug port)

  • input?
  • output
  • An USB debug port supported by coreboot.
  • To find on which usb connector it goes.
  • grub
  • linux kernel in its early initialisation (I'm not sure that it can be kept afterward, because, after the early initialisation, by default it tries to initialise the USB port normally)
Console trough spkmodem

(sends coreboot logs over the sound card)

  • output only
  • A working "beep" sound card at boot. On some laptops it's necessary to tell the embedded controller to enable sound output to get it working.

For writting to it from the coreboot target computer:

  • coreboot's console
  • grub's console

For reading it from a remote computer:

  • coreboot's/grub's spkmodem_recv uttilty (same uttility, but it's available in both git repositories)
Network console

(sends coreboot logs over the network)

  • A ne2k compatible ethernet card.
  • output
  • probably no input
Cbmem console

(Ram buffer, like dmesg)

  • output only for coreboot.
  • input/output for grub.
  • It requires the computer to be booted to retrive the logs.
  • a coreboot device with cbmem working.

For writting to the buffer which is in the coreboot target computer:

  • coreboot console output
  • grub console output
  • seabios

For reading the buffer on the coreboot target computer, after coreboot booted:

  • grub with the cbmemc command
  • coreboot's userspace cbmem -c uttility

Other output: