coreboot-kgpe-d16/util/board_status
Yegor Timoshenko c2e4941367 treewide: use /usr/bin/env where appropriate
Some Unix systems (GuixSD, NixOS) do not install programs like
Bash and Python to /usr/bin, and /usr/bin/env has to be used to
locate these instead.

Change-Id: I7546bcb881c532adc984577ecb0ee2ec4f2efe00
Signed-off-by: Yegor Timoshenko <yegortimoshenko@riseup.net>
Reviewed-on: https://review.coreboot.org/28953
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2018-11-17 07:32:03 +00:00
..
go/src Rewrite board_status in go. 2014-11-26 23:18:58 +01:00
README util/board_status: do a spell check 2017-09-04 08:27:27 +00:00
board_status.sh board-status: Only store CBMEM console from last boot 2018-09-17 13:53:02 +00:00
description.md util: Add description.md to each util 2018-07-26 13:26:50 +00:00
getrevision.sh board_status/getrevision.sh: get rid of colons in dir names 2016-01-29 16:56:31 +01:00
set_up_live_image.sh treewide: use /usr/bin/env where appropriate 2018-11-17 07:32:03 +00:00

README

General information on boot logs
================================
To gather good boot logs, you must set the debug level to Spew.

If your board uses CMOS configuration[1], you can do it like this:
nvramtool -w debug_level=Spew

Else you will need to have to set the default log level at compile
time, to do that go in "Console  --->" in make menuconfig, then set
"Default console log level" to SPEW

Reference:
----------
[1] in make menuconfig you should have: [*] Use CMOS for configuration values
    This option is also known as CONFIG_USE_OPTION_TABLE in Kconfig.
Information through SSH
======================
board_status.sh can gather information through ssh with the -r
option.

When using "-r <host>", The script will attempt to log into
root@<host>.
In order for "-r <host>" to work, the script has to be able
to log into the remote host's root account, without having
to provide a password.
That can be achieved with the use of SSH keys and ssh-agent.

board_status.sh expects the remote host to have the following
programs in its path: cbmem, dmesg

Boot log gathering through a serial port
=======================================
When using -s </dev/xxx>, board_status.sh starts by retrieving the
boot log through the serial port.

To produce such logs, power off the board, run board_status.sh
with the right arguments, power on the board.
At that point the logs will be displayed by board_status.sh as they
are produced by the board.

Enter will have to be pressed once the board has booted and is in a
state where the script is able to log into that board.

Publishing
==========
The -u switch will publish the results: It will make a git patch out
of the status information, that will be directly pushed in the
board-status repository.
It expects the user to already have an account in coreboot's gerrit
instance.