coreboot-kgpe-d16/util/board_status
Paul Menzel 5e20c1cbc8 util/board-status: Reject logs from dirty images
Currently, there are a lot of uploads in the board status repository,
where the logs say, that the coreboot image or payload were built from a
dirty source tree. Add a check to reject such uploads.

Change-Id: I920e26a10f74e1f3b9b4e5f8c9284c59692a519b
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39562
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-25 20:03:03 +00:00
..
go/src
README
board_status.sh util/board-status: Reject logs from dirty images 2020-03-25 20:03:03 +00:00
description.md
getrevision.sh
set_up_live_image.sh

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.