coreboot/util/cbfstool
Hsuan Ting Chen fec16a3574 util/elogtool: Add support for parsing CrOS diagnostics log
Remove the "_DEPRECATED_" tag from ChromeOS diagnostics event and add a
subtype: "ELOG_CROS_DIAGNOSTICS_LOGS" under it.

The data of "ELOG_CROS_DIAGNOSTICS_LOGS" (0x02) contains:
* An uint8_t of subtype code
* Any number of "ChromeOS diagnostics logs" events

Each "ChromeOS diagnostics log" represents the result of one ChromeOS
diagnostics test run. It is stored within an uint8_t raw[3]:
 * [23:19] = ELOG_CROS_DIAG_TYPE_*
 * [18:16] = ELOG_CROS_DIAG_RESULT_*
 * [15:0]  = Running time in seconds

Also add support for parsing this event. The parser will first calculate
the number of runs it contains, and try to parse the result one by one.

BUG=b:226551117
TEST=Build and boot google/tomato to OS,
localhost ~ # elogtool list
0 | 2022-09-26 04:25:32 | Log area cleared | 186
1 | 2022-09-26 04:25:50 | System boot | 0
2 | 2022-09-26 04:25:50 | Firmware vboot info | boot_mode=Manual recovery
  | recovery_reason=0x2/0 (Recovery button pressed)
  | fw_tried=A | fw_try_count=0 | fw_prev_tried=A
  | fw_prev_result=Unknown
3 | 2022-09-26 04:25:50 | EC Event | Keyboard Recovery
4 | 2022-09-26 04:26:01 | Memory Cache Update | Normal | Success
5 | 2022-09-26 04:26:06 | System boot | 0
6 | 2022-09-26 04:26:07 | Firmware vboot info | boot_mode=Diagnostic
  | fw_tried=A | fw_try_count=0 | fw_prev_tried=A
  | fw_prev_result=Unknown
7 | 2022-09-26 04:26:07 | Diagnostics Mode | Diagnostics Logs
  | type=Memory check (quick), result=Aborted, time=0m0s
  | type=Memory check (full), result=Aborted, time=0m0s
  | type=Storage self-test (extended), result=Aborted, time=0m1s

Change-Id: I02428cd21be2ed797eb7aab45f1ef1d782a9c047
Signed-off-by: Hsuan Ting Chen <roccochen@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67834
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2022-10-14 16:06:39 +00:00
..
bpdt_formats
console util/cbfstool: Wrap logging macros in do - while 2022-10-13 17:07:02 +00:00
flashmap
fpt_formats
lz4
lzma
tests
.gitignore
amdcompress.c
cbfs-mkpayload.c util/cbfstool: Wrap logging macros in do - while 2022-10-13 17:07:02 +00:00
cbfs-mkstage.c
cbfs-payload-linux.c
cbfs.h
cbfs_glue.h cbfs/vboot: Adapt to new vb2_digest API 2022-09-02 23:51:29 +00:00
cbfs_image.c util/cbfstool: Wrap logging macros in do - while 2022-10-13 17:07:02 +00:00
cbfs_image.h util/cbfstool: Fix truncate command error handling and cbfs_image_from_buffer() 2022-08-03 23:24:49 +00:00
cbfs_sections.c
cbfs_sections.h
cbfscomptool.c
cbfstool.c cbfs/vboot: Adapt to new vb2_digest API 2022-09-02 23:51:29 +00:00
coff.h
common.c
common.h
compress.c
cse_fpt.c
cse_fpt.h
cse_helpers.c
cse_helpers.h
cse_serger.c
cse_serger.h
default-x86.fmd
default.fmd
description.md
elf.h
elfheaders.c
elfparsing.h
elogtool.c
eventlog.c util/elogtool: Add support for parsing CrOS diagnostics log 2022-10-14 16:06:39 +00:00
eventlog.h
EXAMPLE
fdt.h
fit.c util/ifittool: Error out if microcodes do not fit the FIT table 2022-09-15 13:01:42 +00:00
fit.h
flashmap_tests.c
flashrom.c
flashrom.h
fmap_from_fmd.c
fmap_from_fmd.h
fmaptool.c
fmd.c
fmd.h
fmd_parser.c_shipped
fmd_parser.h_shipped
fmd_parser.y
fmd_scanner.c_shipped
fmd_scanner.h_shipped
fmd_scanner.l
fv.h
ifittool.c util/cbfstool: Fix truncate command error handling and cbfs_image_from_buffer() 2022-08-03 23:24:49 +00:00
ifwitool.c
linux.h
linux_trampoline.c
linux_trampoline.h
linux_trampoline.S
Makefile
Makefile.inc
option.h
partitioned_file.c
partitioned_file.h
platform_fixups.c cbfs/vboot: Adapt to new vb2_digest API 2022-09-02 23:51:29 +00:00
ProcessorBind.h
rmodtool.c
rmodule.c
rmodule.h
xdr.c