diff options
author | Stefan Reinauer <reinauer@chromium.org> | 2012-02-28 13:37:39 -0800 |
---|---|---|
committer | Stefan Reinauer <reinauer@chromium.org> | 2012-02-28 14:32:14 -0800 |
commit | 888f8d2d3519c768e30125c8de080f2bf2413823 (patch) | |
tree | 32a2dffe8eb0139eede3848e21d2cd5b94919e82 /lib/vbexport | |
parent | e9173303e7f06c8ceefc8134b6bbfe5257704017 (diff) |
Print firmware version in tab screen
In bug reports with screen shots of the firmware screens with tab
pressed, it would be extremely useful to see the version of the
currently running firmware and the read-only firmware, so output
this information.
BUG=none
TEST=press TAB at dev screen, see firmware versions printed on the
screen.
Signed-off-by: Stefan Reinauer <reinauer@google.com>
Change-Id: If91d4b1da8a7f69ff797b0b00c507248139601cd
Reviewed-on: https://gerrit.chromium.org/gerrit/17002
Tested-by: Stefan Reinauer <reinauer@chromium.org>
Commit-Ready: Stefan Reinauer <reinauer@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Diffstat (limited to 'lib/vbexport')
-rw-r--r-- | lib/vbexport/display.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/vbexport/display.c b/lib/vbexport/display.c index 2de65cd38f9..53189670364 100644 --- a/lib/vbexport/display.c +++ b/lib/vbexport/display.c @@ -18,6 +18,8 @@ #define HAVE_DISPLAY #endif #include <chromeos/common.h> +#include <chromeos/crossystem_data.h> +#include <chromeos/fdt_decode.h> #include <lzma/LzmaTypes.h> #include <lzma/LzmaDec.h> #include <lzma/LzmaTools.h> @@ -187,8 +189,26 @@ VbError_t VbExDisplayImage(uint32_t x, uint32_t y, VbError_t VbExDisplayDebugInfo(const char *info_str) { #ifdef HAVE_DISPLAY + crossystem_data_t *cdata; + size_t size; + display_callbacks_.dc_position_cursor(0, 0); display_callbacks_.dc_puts(info_str); + + + cdata = fdt_decode_chromeos_alloc_region(gd->blob, "cros-system-data", + &size); + if (!cdata) { + VBDEBUG("cros-system-data missing " + "from fdt, or malloc failed\n"); + return VBERROR_UNKNOWN; + } + + display_callbacks_.dc_puts("read-only firmware id: "); + display_callbacks_.dc_puts((char *)cdata->readonly_firmware_id); + display_callbacks_.dc_puts("\nactive firmware id: "); + display_callbacks_.dc_puts((char *)cdata->firmware_id); + display_callbacks_.dc_puts("\n"); #endif return VBERROR_SUCCESS; } |