Console and outputs: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(14 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
! Output name | ! Output name | ||
! direction (from the target | ! direction (from the coreboot target machine point of view) | ||
! Requirements | ! Requirements | ||
! | ! Compatibility with software loaded after coreboot, like OS and payloads | ||
|- | |- | ||
! [[Serial console]] | ! [[Serial console]] | ||
Line 13: | Line 13: | ||
| | | | ||
* An internal(not USB) serial port: | * An internal(not USB) serial port: | ||
** it can on the mainboard | ** it can be on the mainboard | ||
** it can also be a PCIe OXPCIe952 card with the 0x1415 and 0xc158 vendor and device ID (respectively). | ** 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. | ** USB serial ports are not supported by coreboot yet. | ||
Line 51: | Line 51: | ||
|- | |- | ||
! [[Network console]] | ! [[Network console]] | ||
(sends coreboot logs over the network) | |||
| | | | ||
* output | * output | ||
* probably no input | * probably no input | ||
| | | | ||
* A ne2k compatible ethernet card. | * A ne2k compatible ethernet card on the coreboot target system. | ||
* A network between the coreboot computer and the computer receiving the logs. | |||
| | | | ||
For sending the logs: | For sending the logs: | ||
* the linux kernel | * the linux kernel | ||
For receiving the logs: | |||
* nc and similar networking uttilities. | |||
|- | |- | ||
! [[Cbmem console]] | ! [[Cbmem console]] | ||
Line 65: | Line 68: | ||
| | | | ||
* output only for coreboot. | * output only for coreboot. | ||
* | * output for grub. Can also print cbmem console content. | ||
* It requires the computer to be booted to retrive the logs. | * It requires the computer to be booted to retrive the logs. | ||
| | | | ||
Line 77: | Line 80: | ||
* grub with the cbmemc command | * grub with the cbmemc command | ||
* coreboot's userspace cbmem -c uttility | * coreboot's userspace cbmem -c uttility | ||
|- | |||
|- | |||
! [[POST card]] | |||
| | |||
* output only. | |||
| | |||
| | |||
|- | |- | ||
|} | |} | ||
* [[ | If none of the above works for your case, you might consider: | ||
* | * Trying [[Developer_Manual/Tools#Flash_emulators_.28used_to_flash_and_debug.29 | Flash emulators]] to trace the code being accessed. | ||
* [[Developer_Manual/Tools#Oscilloscope| Osciloscopes]] for hardware related lower level debuging. | |||
* [https://www.serialice.com SerialICE] if you can add support for your board serial or [[EHCI Debug Port]] in [https://www.serialice.com SerialICE] |
Revision as of 14:28, 13 March 2016
Coreboot has various possible consoles:
Output name | direction (from the coreboot target machine point of view) | Requirements | Compatibility with software loaded after coreboot, like OS and payloads |
---|---|---|---|
Serial console
(sends coreboot logs over the serial port) |
|
|
|
Console Over EHCI debug port
(sends coreboot logs over the usb debug port) |
|
|
|
Console trough spkmodem
(sends coreboot logs over the sound card) |
|
|
For writting to it from the coreboot target computer:
For reading it from a remote computer:
|
Network console
(sends coreboot logs over the network) |
|
|
For sending the logs:
For receiving the logs:
|
Cbmem console
(Ram buffer, like dmesg) |
|
|
For writting to the buffer which is in the coreboot target computer:
For reading the buffer on the coreboot target computer, after coreboot booted:
|
POST card |
|
If none of the above works for your case, you might consider:
- Trying Flash emulators to trace the code being accessed.
- Osciloscopes for hardware related lower level debuging.
- SerialICE if you can add support for your board serial or EHCI Debug Port in SerialICE