summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Parker <dparker@chromium.org>2012-08-01 08:16:38 -0700
committerChe-Liang Chiou <clchiou@chromium.org>2012-08-09 11:36:42 -0700
commitcd6ea2f63c853948b3d355ac1a8393ee41f4a66a (patch)
tree55ab0280e818c09c82b5c29bf015c31d31646fa6
parent490272a0fe2f75966b45e08b09821fdf120e36b2 (diff)
downloadvboot-cd6ea2f63c853948b3d355ac1a8393ee41f4a66a.tar.gz
Increase max number of bitmaps to composite to 16 per screen.
This is needed to render new-style screens that use 13 bitmaps. bmpblk version is changed from 1.2 to 2.0, due to incompatibility. BUG=chrome-os-partner:11078 TEST=emerge-<board> vboot-reference. Run firmware with new bmpblock. Original-Original-Change-Id: I750da66b020fe195896df58f31fcbb2a9e33e404 Reviewed-on: https://gerrit.chromium.org/gerrit/28945 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org> (cherry picked from commit 0b7ee46c2eeba858ff59d534e265b445895623a2) Original-Change-Id: I80543c46a7c0e09169e29e32077d84c57192e431 Reviewed-on: https://gerrit.chromium.org/gerrit/29602 Reviewed-by: Dave Parker <dparker@chromium.org> Reviewed-by: Bill Richardson <wfrichar@chromium.org> Commit-Ready: Hung-Te Lin <hungte@chromium.org> Tested-by: Hung-Te Lin <hungte@chromium.org> Reviewed-by: Tom Wai-Hong Tam <waihong@chromium.org> (cherry picked from commit 3985f94fae52aa1df853f7d47388c67c3022e069) Change-Id: I54977c24c80ac7b28dadafd8b18ec03cdce7f860 Reviewed-on: https://gerrit.chromium.org/gerrit/29789 Reviewed-by: Che-Liang Chiou <clchiou@chromium.org> Tested-by: Che-Liang Chiou <clchiou@chromium.org>
-rw-r--r--firmware/include/bmpblk_header.h6
-rw-r--r--scripts/newbitmaps/README6
-rw-r--r--scripts/newbitmaps/default_source/bmpblock.binbin130686 -> 134718 bytes
-rw-r--r--scripts/newbitmaps/default_source/config.yaml2
-rwxr-xr-xscripts/newbitmaps/images/make_default_yaml2
-rw-r--r--utility/bmpblk_utility.cc15
6 files changed, 12 insertions, 19 deletions
diff --git a/firmware/include/bmpblk_header.h b/firmware/include/bmpblk_header.h
index c99f0fe3..06ddaa8f 100644
--- a/firmware/include/bmpblk_header.h
+++ b/firmware/include/bmpblk_header.h
@@ -53,10 +53,10 @@ __pragma(pack(push, 1)) /* Support packing for MSVC. */
#define BMPBLOCK_SIGNATURE "$BMP"
#define BMPBLOCK_SIGNATURE_SIZE (4)
-#define BMPBLOCK_MAJOR_VERSION (0x0001)
-#define BMPBLOCK_MINOR_VERSION (0x0002)
+#define BMPBLOCK_MAJOR_VERSION (0x0002)
+#define BMPBLOCK_MINOR_VERSION (0x0000)
-#define MAX_IMAGE_IN_LAYOUT (8)
+#define MAX_IMAGE_IN_LAYOUT (16)
/* BMPBLOCK header, describing how many screen layouts and image infos */
typedef struct BmpBlockHeader {
diff --git a/scripts/newbitmaps/README b/scripts/newbitmaps/README
index 5bc2d6fd..1720063d 100644
--- a/scripts/newbitmaps/README
+++ b/scripts/newbitmaps/README
@@ -74,6 +74,12 @@ The old v1.1 bmpblock will be accepted by the vboot wrapper, but a $HWID
screen without a corresponding font should be silently ignored.
+Version 2.0. Used by BIOS with complex composition (Kiev, Link, Snow, etc.)
+
+The max number of components in one screen has increased from 8 to 16, makes
+bitmap block structure incompatible with previous versions.
+
+
--------------------------------------------
Instructions for manually rebuilding things:
diff --git a/scripts/newbitmaps/default_source/bmpblock.bin b/scripts/newbitmaps/default_source/bmpblock.bin
index 2dc10c6c..3785fb00 100644
--- a/scripts/newbitmaps/default_source/bmpblock.bin
+++ b/scripts/newbitmaps/default_source/bmpblock.bin
Binary files differ
diff --git a/scripts/newbitmaps/default_source/config.yaml b/scripts/newbitmaps/default_source/config.yaml
index 32729542..00babb8d 100644
--- a/scripts/newbitmaps/default_source/config.yaml
+++ b/scripts/newbitmaps/default_source/config.yaml
@@ -3,7 +3,7 @@
# original sources are lost in the mists of time, so most of this is simply
# unpacked from the binary.
-bmpblock: 1.2
+bmpblock: 2.0
compression: 2
images:
$HWID: FONTS.bmp # 0x0 4092/58196 tag=1 fmt=2
diff --git a/scripts/newbitmaps/images/make_default_yaml b/scripts/newbitmaps/images/make_default_yaml
index 186bfcee..2ff1b7b9 100755
--- a/scripts/newbitmaps/images/make_default_yaml
+++ b/scripts/newbitmaps/images/make_default_yaml
@@ -139,7 +139,7 @@ for hwid_bmp in hwid_unknown.bmp; do
# List the images. The major difference is the HWID.
cat >"$yaml_file" <<'EOF1'
-bmpblock: 1.2
+bmpblock: 2.0
compression: 1
diff --git a/utility/bmpblk_utility.cc b/utility/bmpblk_utility.cc
index 2846746f..386d2d44 100644
--- a/utility/bmpblk_utility.cc
+++ b/utility/bmpblk_utility.cc
@@ -189,20 +189,7 @@ namespace vboot_reference {
error("Syntax error in parsing bmpblock.\n");
}
string gotversion = (char*)event.data.scalar.value;
- if (gotversion == "1.2") {
- render_hwid_ = true;
- support_font_ = true;
- } else if (gotversion == "1.1") {
- minor_version_ = 1;
- render_hwid_ = true;
- support_font_ = false;
- fprintf(stderr, "WARNING: using old format: %s\n", gotversion.c_str());
- } else if (gotversion == "1.0") {
- minor_version_ = 0;
- render_hwid_ = false;
- support_font_ = false;
- fprintf(stderr, "WARNING: using old format: %s\n", gotversion.c_str());
- } else {
+ if (gotversion != "2.0") {
error("Unsupported version specified in config file (%s)\n",
gotversion.c_str());
}