Commit Graph

306 Commits

Author SHA1 Message Date
Mike Frysinger
8b42ac8e26 Key increment scripts: fix incrementing keys not in $PWD
Part of the recent rewrite dropped changing of the active dir to
${KEY_DIR}.  Meant the scripts needed to be run inside of the key
dir since not all functions take the key dir as an argument but
instead assume they're in ${PWD}.

BUG=None
TEST=Ran increment_kernel_subkey_and_key_mp.sh and saw it work
BRANCH=None

Change-Id: Icbc02f123e999d186d9c40fd16528a134397699e
Reviewed-on: https://gerrit.chromium.org/gerrit/35803
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
2012-10-16 23:25:29 -07:00
Gaurav Shah
9bf0d535fe resign_firmwarefd.sh: Fix flag option name
We didn't get bit by this bug because getlong_opt does partial matching
on long option names. So --flag also works.

BUG=none
TEST=resign a test firmware; ensure preamble flag is preserved.
BRANCH=none

Change-Id: Ifd87c627b82468529fe1241be3629198d194027b
Reviewed-on: https://gerrit.chromium.org/gerrit/35350
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Commit-Ready: Gaurav Shah <gauravsh@chromium.org>
Tested-by: Gaurav Shah <gauravsh@chromium.org>
2012-10-12 11:12:54 -07:00
Paul Taysom
212eb98136 Added patterns for bootcache
The bootcache will be changing the linux command line. Added additional
patterns that are acceptable to the signing software.

BUG=chromium-os:25441
TEST=ran security_test_image script against stumpy recovery images
BRANCH=none

Change-Id: I22d00ebc6191b5499f722974d90c260b78eb63b2
Reviewed-on: https://gerrit.chromium.org/gerrit/34959
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Paul Taysom <taysom@chromium.org>
Tested-by: Paul Taysom <taysom@chromium.org>
2012-10-09 13:45:13 -07:00
Mike Frysinger
4615b96345 signer scripts: return an error when loading configs fail
If we are given a config file that doesn't exist, return an error rather
ignoring it.  This way we don't accidentally give images a pass when we
didn't properly test them.

BUG=None
TEST=`./security_test_image --board=x86-alex --baselines=/` now shows 3 failures rather than all pass
BRANCH=None

Change-Id: I9d130db05befaeac8fcca921f0e43f47c2461f9f
Reviewed-on: https://gerrit.chromium.org/gerrit/34795
Reviewed-by: Ryan Cui <rcui@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
2012-10-05 15:21:10 -07:00
Mike Frysinger
283cbf89a9 sign_official_build.sh: add an update payload operation
This enables the signer script to sign update payloads.

BUG=chromium-os:34521
TEST=`./sign_official_build.sh update_payload testcase.sha256 . foo` produced a signed foo file
BRANCH=None

Change-Id: I27a9de89e760427251538deec38161944388a152
Reviewed-on: https://gerrit.chromium.org/gerrit/33535
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
2012-09-26 16:12:48 -07:00
Stefan Reinauer
a2326ee152 Add CTRL-L in dev screen to support a "legacy boot option"
This option is disabled per default and can be enabled with
crossystem dev_boot_legacy=1
or by setting the GBB flag
GBB_FLAG_FORCE_DEV_BOOT_LEGACY      0x00000080

BUG=chrome-os-partner:6108
TEST=crossystem dev_boot_legacy=1
     boot to dev mode screen, press CTRL-L, see SeaBIOS start
     (other CLs needed)
BRANCH=link
Signed-off-by: Stefan Reinauer <reinauer@chromium.org>

Change-Id: I593d2be7cff5ca07b8d08012c4514a172bd75a38
Reviewed-on: https://gerrit.chromium.org/gerrit/31265
Reviewed-by: Stefan Reinauer <reinauer@chromium.org>
Tested-by: Stefan Reinauer <reinauer@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Commit-Ready: Stefan Reinauer <reinauer@chromium.org>
2012-09-20 17:32:22 -07:00
Kris Rambish
40bc7b7802 Do not create the kernel data keys.
BUG=None
TEST=Ran it
BRANCH=None

Change-Id: Ib494c64d81c4ee80991a01b2172c7c47b60d5658
Reviewed-on: https://gerrit.chromium.org/gerrit/33659
Tested-by: Kris Rambish <krisr@chromium.org>
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
2012-09-19 18:45:21 -07:00
Kris Rambish
40d8651bb3 Add scripts to increment single fm/kernel keys.
For firmware and kernel key increment testing we need to be able to
rev only particular keys and verify an autoupdate works.

BUG=None
TEST=Ran it
BRANCH=None

Change-Id: Ic814480b4bf8fbc994132fcd7ba519c3be9b0ccd
Reviewed-on: https://gerrit.chromium.org/gerrit/32458
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Kris Rambish <krisr@chromium.org>
Tested-by: Kris Rambish <krisr@chromium.org>
2012-09-18 16:05:00 -07:00
Tom Wai-Hong Tam
46c01a2d2b scripts: Add the new GBB_FLAG_ENTER_TRIGGERS_TONORM usage
This GBB_FLAG_ENTER_TRIGGERS_TONORM is new added for allowing Enter
(default is Space) to trigger the TONORM screen. This flag is
used by FAFT testing.

Chage the usage of set_gbb_flags.sh to help an user.

BUG=chrome-os-partner:12699
TEST=None. Trivial comment change.

Change-Id: I8a1efa880627965570719f22dedfa0e31ab2d5f5
Reviewed-on: https://gerrit.chromium.org/gerrit/33404
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Tom Wai-Hong Tam <waihong@chromium.org>
Tested-by: Tom Wai-Hong Tam <waihong@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
2012-09-17 07:47:03 -07:00
Hung-Te Lin
35f5474788 newbitmaps: Remove language in UPDATE screen.
Currently we don't accept keyboard input in UPDATE screen.

BRANCH=none
BUG=chrome-os-partner:13821
TEST=make # no more languages on UPDATE screen.

Change-Id: I08fa6dab7415e9a461ca8096073e98a155a8489e
Reviewed-on: https://gerrit.chromium.org/gerrit/33161
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-09-12 21:17:14 -07:00
Mike Frysinger
22bd8b0c29 sign_official_build.sh: rename "install" to "factory"
This lines up with the terminology that people have been using, and the
valid types that can appear in signer instruction files.  We keep around
the old "install" so that other code continues to work.

BUG=None
TEST=None
BRANCH=none

Change-Id: I8d0d2ab4c0ae61f6bcdbcc24ec9796d9eabe386e
Reviewed-on: https://gerrit.chromium.org/gerrit/33056
Reviewed-by: David McMahon <djmm@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
2012-09-12 00:29:28 -07:00
Hung-Te Lin
4b193b7f5c newbitmaps: Add 1280x* with AR=8x5 profiles
For larger panels, we want to support 1280x* profiles.

BRANCH=none
BUG=chrome-os-partner:12896
TEST=make # all profiles generated.

Change-Id: I5b6729e4335bc0ade3948151e766c02ab937435d
Reviewed-on: https://gerrit.chromium.org/gerrit/32892
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-09-11 19:22:36 -07:00
Hung-Te Lin
599565b4dd newbitmaps: Remove SD card asset for USB-only profiles.
BRANCH=none
BUG=chrome-os-partner:13767
TEST=make # success, s1024usb profiles don't have SD in Remove page.

Change-Id: Ifa605dea50d9d8538fca6032743662e9d8dc7e6c
Reviewed-on: https://gerrit.chromium.org/gerrit/32683
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Dave Parker <dparker@chromium.org>
2012-09-10 23:15:40 -07:00
Hung-Te Lin
2607e39f0e newbitmaps: Add more locales & fix locale 'ms' (Malay).
Adding 'update' and language description for locale 'ms'.
Also fixed 'model' height in 'th' locale.

BRANCH=none
BUG=chrome-os-partner:11969
TEST=make # success.

Change-Id: I3eb12d43284bab8c3c243cf86e3dc90c7c0e5497
Reviewed-on: https://gerrit.chromium.org/gerrit/32440
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-09-06 18:13:20 -07:00
Gaurav Shah
7b3e34a236 Key increment script: Preserve extension and take the target keyset directory
First, preserve extensions for the backed up keys (and keyblocks). Useful since
our wrapping scripts look at the extension in deciding what needs wrapping.

Second, instead of having to run the script from within a keyset directory,
take the keyset path as an argument and increment the versions for
the keys in there.

BUG=chrome-os-partner:13748
TEST=ran on devkeys
BRANCH=none

Change-Id: I9e8c3e58149e5cb4cd5557521e047e25c06b0cd6
Reviewed-on: https://gerrit.chromium.org/gerrit/32417
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Tested-by: Gaurav Shah <gauravsh@chromium.org>
2012-09-06 16:29:24 -07:00
Che-Liang Chiou
3ae4dd7052 signing script: Resign just firmware body, not the entire section
The signing script extracted firmware body sections FW_MAIN_{A,B} and
resigned the whole section instead of just firmware body.

As a result, read-only firmware spends more time loading read-write
firmware from SPI flash.

Since vblock has firmware body size information, signing script should
retrieve it and use it to sign just firmware body.

This may reduce boot time for ~560ms, depending on firmware image size,
section size and SPI flash/bus throughput.

Signed-off-by: Che-Liang Chiou <clchiou@chromium.org>

BRANCH=snow,link
BUG=chrome-os-partner:13094
TEST=For Snow (or boards that use cros_bundle_firmware), check that
       after resigning, VBLOCK_{A,B} and FW_MAIN_{A,B} are unchanged
     For Alex and ZGB, check that old and new resign_firmwarefd.sh
       generates identical output

(Test for Snow; repeat for A and B)

dump_fmap -x image.bin VBLOCK_A FW_MAIN_A
mv VBLOCK_A VBLOCK_A.orig
mv FW_MAIN_A FW_MAIN_A.orig

resign_firmwarefd.sh image.bin image-resigned.bin \
  firmware_data_key.vbprivk \
  firmware.keyblock \
  dev_firmware_data_key.vbprivk \
  dev_firmware.keyblock \
  kernel_subkey.vbpubk

dump_fmap -x image-resigned.bin VBLOCK_A FW_MAIN_A
cmp VBLOCK_A.orig VBLOCK_A
cmp FW_MAIN_A.orig FW_MAIN_A

(Test for Alex and ZGB; repeat for old and new resign_firmwarefd.sh)

resign_firmwarefd.sh image.bin image-resigned-{old or new}.bin \
  firmware_data_key.vbprivk \
  firmware.keyblock \
  dev_firmware_data_key.vbprivk \
  dev_firmware.keyblock \
  kernel_subkey.vbpubk

cmp image-resigned-old.bin image-resigned-new.bin

Change-Id: Ie70b6c91614343ad9f991ae369a0f8e74ec213fe
Reviewed-on: https://gerrit.chromium.org/gerrit/31572
Commit-Ready: Che-Liang Chiou <clchiou@chromium.org>
Tested-by: Che-Liang Chiou <clchiou@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
2012-09-04 17:11:23 -07:00
Mike Frysinger
16de2c7bae signer scripts: break kernel parameters on spaces rather than word boundaries
The current kernel parameter parsing logic uses word boundaries (\b) to
keep from replacing parameters inside of other parameters (like "level=1"
mangling "loglevel=1" into "log"), but this fails when the last character
isn't a "word" character.  e.g. "\bconsole=\b" doesn't match "console=".

Change the \b to a space.  Since we're already using spaces as our split
marker, this shouldn't be a problem.

BRANCH=None
BUG=chrome-os-partner:12780
BUG=chromium-os:33868
TEST=ran `ensure_secure_kernelparams.sh` on an image with 'console=' and saw it work

Change-Id: Id69250179ea76aabfed9cd21c1c59483d78a215d
Reviewed-on: https://gerrit.chromium.org/gerrit/31356
Reviewed-by: David McMahon <djmm@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
2012-08-24 13:26:03 -07:00
Mike Frysinger
513be212d9 signer scripts: include debug output when we fail
When checking kernel params fail, it's useful to know all the variables
as to what it's doing.  So dump some state when an error occurs.

BRANCH=None
BUG=None
TEST=ran `ensure_secure_kernelparams.sh` on a bad image and saw useful output
TEST=ran `ensure_secure_kernelparams.sh` on a good image and saw no output

Change-Id: I0e499f87a6d8feed80da72aba75e1e6c1b4076c9
Reviewed-on: https://gerrit.chromium.org/gerrit/31355
Reviewed-by: David McMahon <djmm@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
2012-08-24 12:50:56 -07:00
Hung-Te Lin
ea1b7dd9d9 newbitmaps: Add "native 1366x768 USB" profile.
BRANCH=none # we always build images in ToT.
BUG=chrome-os-partner:13048
TEST=make # got n1366usb bmpblk.bin

Change-Id: I5af3c4f599c6789c208013095db86f0836241ced
Reviewed-on: https://gerrit.chromium.org/gerrit/31324
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-24 11:40:11 -07:00
Hung-Te Lin
2ac65ecccf newbitmaps: Reduce spacing between for_help and URL text.
Both for_help_* and Url bitmaps have margin, so it looks too large as a
"margin*2 + 5(x_pad)" gap on screen.

BRANCH=none
BUG=chrome-os-partner:12893
TEST=make # All bitmaps generated.

Change-Id: Ic8d3e9180e52b7476b07367a027793cea0ed3109
Reviewed-on: https://gerrit.chromium.org/gerrit/30988
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-22 18:34:44 -07:00
Hung-Te Lin
1d9c217085 newbitmaps: Improve insert_sd_usb2 message.
"insert_sd_usb2" message didn't include the "ChromeOS is missing or damaged"
text, also is too long for certain locales.

We should revise message and check if the locale fits screen width.

BRANCH=none
BUG=none
TEST=cd strings; make  # all pass

Change-Id: Ie9cb5e4ecd6d143772ffa8e7de29c202e9bde130
Reviewed-on: https://gerrit.chromium.org/gerrit/30824
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-20 10:13:01 -07:00
Hung-Te Lin
1550b14604 newbitmaps: Support more profiles.
Added "n1366usb2" profile and remove SD icon in *usb profile.

BRANCH=none
BUG=chrome-os-partner:11078
TEST=make # all profiles generated.

Change-Id: If280cebb847cdc7a599f510f279df03e1cc9b4d5
Reviewed-on: https://gerrit.chromium.org/gerrit/30810
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-by: Dave Parker <dparker@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-20 10:13:00 -07:00
Hung-Te Lin
7ce91cd2f9 newbitmaps: Change build targets from x86/arm to "profiles".
The difference of firmware bitmaps won't rely on platform (x86/arm) in future;
instead, things will differ by rescaling & message contents.

To support that, we need to change build target from "platform" to "profiles".

To build all platforms, run "make" in top leve (or "make all" in images).
To debug (en locale without rescaling), run "make" in images folder.
To debug a specific profile, run "make $PROFILE" in images folder.

BRANCH=none
BUG=chrome-os-partner:11078, chrome-os-partner:12790
TEST=make # all profiles generated in images/out_*/*.bin

Change-Id: Iaabf160b1b2bc844d230188eb593daa8a597d378
Reviewed-on: https://gerrit.chromium.org/gerrit/30683
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-17 20:02:15 -07:00
Hung-Te Lin
5f5f086e38 newbitmaps: Replace image source BMP files by PNG format.
PNG files are better for editing and checking than BMP files.
Also smaller file size.

BRANCH=none
BUG=none
TEST=make # x86 & arm bitmap blocks generated.

Change-Id: I828779aafa4938cb21356a8c42dee27b1b3ad8ae
Reviewed-on: https://gerrit.chromium.org/gerrit/30682
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-17 20:02:14 -07:00
Hung-Te Lin
4d31d0b045 newbitmaps: Revise fonts, color, layout & messages.
Inspired by https://gerrit.chromium.org/gerrit/#/c/30631/

 - Increase gray colored text contrast
 - Enlarge font size to 17pt
 - Change standard font to Verdata (which is wider than usually fonts,
   to provide better quality when stretched in horizontal)
 - Decomposed tonorm_confirmation & devmode so we can have better control
   to verif_* prompt, and look more similar to original mock.

BUG=chrome-os-partner:11078
TEST=make # All platforms generated
BRANCH=none

Change-Id: If019b5767f13556df0e4da77f6457e092fa06016
Reviewed-on: https://gerrit.chromium.org/gerrit/30679
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-17 20:02:14 -07:00
Hung-Te Lin
194d7d8867 newbitmaps: Add "insert SD / USB2" text resource.
We need the text for "SD or USB2" (i.e., not USB3).

BRANCH=none
BUG=chrome-os-partner:12790
TEST=none, only adding text translation resource.

Change-Id: Id70a2565bb1fb0b6a4ed92d3fceddbc72e60d77a
Reviewed-on: https://gerrit.chromium.org/gerrit/30663
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-17 20:02:14 -07:00
Dave Parker
0868f8f3b7 Fix vertical placement of bmp images on firmware screens.
BUG=chromium-os:33608
TEST=Run 'make' in newbitmaps directory to generate new bmpblock.
Run on DUT. Observe spacing in the footer section is closer
together.

Change-Id: I96987e827fd395f13244dbc58db600de5dc30958
Reviewed-on: https://gerrit.chromium.org/gerrit/30610
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
2012-08-16 18:45:21 -07:00
Dave Parker
12ef75d84d Fix alignment of HWID on firmware screens and bitmap viewer.
BUG=chrome-os-partner:12701
TEST=Disable the 'clean' step in the Makefile and
run 'make' in newbitmaps directory. Use the bitmap_viewer to
verify the HWID is correctly aligned when compared with the "Model"
text.

Change-Id: Icd3977f50461492a0999059ccd4982d16a373dce
Reviewed-on: https://gerrit.chromium.org/gerrit/30453
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
2012-08-15 22:49:09 -07:00
Dave Parker
06e8e90018 Prevent color dithering of firmware bitmaps
BUG=None
TEST=Run 'make' in newbitmaps dir with "clean" removed from the default
step in the Makefile. Use bitmap_viewer to check that the images do not
show grainy color dithering.

Change-Id: I6dff41338a7e54d090bb2f6dedb982fdaa31e657
Reviewed-on: https://gerrit.chromium.org/gerrit/30308
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
2012-08-15 19:28:15 -07:00
Hung-Te Lin
6cda3966ec newbitmaps: Refine text layout & font settings.
BRANCH=none
BUG=chrome-os-partner:11078
TEST=make  # x86 and arm bitmaps both works.

Change-Id: I21382c4f4a829703d9249929579f5007a7db1a9e
Reviewed-on: https://gerrit.chromium.org/gerrit/30369
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-15 18:36:35 -07:00
Dave Parker
9a6e6e7785 Scale bmp files correctly for x86 when generating bmpblocks.
BUG=None
TEST=Run 'make' in newbitmaps directory but remove the "clean"
step in the Makefile. Use the bmp_viewer utility to verify
all graphic elements are scaled.

Change-Id: Ifd62c2ba3a6c354c4de7d9fd052d76de36842fb6
Reviewed-on: https://gerrit.chromium.org/gerrit/30126
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
2012-08-13 20:37:27 -07:00
Hung-Te Lin
b57b8c3dea newbitmaps: Add ToNorm confirm screen resource.
According to new flow, we need "confirm" screens for TONORM.
Also simplified default_source folder, with better hints and using PNG image
source.  image/assets/* are files from issue page.

BUG=chrome-os-partner:11078
TEST=make  # x86 and arm bitmaps both works.

Change-Id: I3701d6ed5a944305e12a01c1841a197d3e18a8cd
Reviewed-on: https://gerrit.chromium.org/gerrit/29983
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-13 17:25:13 -07:00
Hung-Te Lin
c951eb8257 newbitmaps: Refine font and text generation.
The bmpblk build scripts used to rely on lots of pre-generated resources, and
the HWID font data was fixed to x86 special size & scaling parameters.

Since the screens now rely on more platform dependent parameters, this CL
refined whole flow so fonts are now generated and processed (ex, re-scale) in
the same way as other text messages.

BUG=chrome-os-partner:11078
TEST=make # x86 and arm bitmaps both works.

Change-Id: I59a4fb31718ef052c6b54cd4642f4fc487893f2b
Reviewed-on: https://gerrit.chromium.org/gerrit/29873
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-10 11:18:52 -07:00
Hung-Te Lin
6974266829 newbitmaps: Always generate bitmaps in 8bpp mode.
ImageMagick may produce 1bpp mode for background if the image is modified (ex,
x86 output). We need to ensure the output to be 8bpp mode for firmware to
render images correctly.

BUG=chrome-os-partner:11078
TEST=make x86 # all images are in 8bpp mode.

Change-Id: Ia6e4fbc5e7580ebbb51e1067bcf554ee06f1fbc5
Reviewed-on: https://gerrit.chromium.org/gerrit/29868
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-10 11:18:52 -07:00
Dave Parker
1eb883dce6 Translated text for "v2" firmware recovery screens.
BUG=chrome-os-partner:11078
TEST=run make in newbitmaps directory to build a new bmpblock.

Change-Id: I97683c95c7c0881ce17617ccab4eb674a06704de
Reviewed-on: https://gerrit.chromium.org/gerrit/29866
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
2012-08-09 23:59:29 -07:00
Hung-Te Lin
1dc00165e5 newbitmaps: Add TODEV, TONORM, and UPDATE(WAIT) screens.
An initial draft of missing screens, with only English messages (*.txt in
localized folders are now all English - will update them once translation is
ready).

BUG=chrome-os-partner:11078
TEST=make; bitmap_viewer DEFAULT.yaml # see basic screen.

Change-Id: I3209e18bf604030cf8e92d264781add33aab84fe
Reviewed-on: https://gerrit.chromium.org/gerrit/29765
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-09 19:44:49 -07:00
Hung-Te Lin
b7adca3f4c newbitmaps: Remove Alex files and refer to specific branch.
Alex bitmaps cannot be generated by latest tools anymore, so let's remove the
resource files and refer to the correct place that contains everything you need
to generate a new Alex bitmap.

(Also see https://gerrit-int.chromium.org/#/c/23243/ for more information)

BUG=none
TEST=none, simply delete files.

Change-Id: I170071892df04ad1cf8304da506f2639a8f39b8b
Reviewed-on: https://gerrit.chromium.org/gerrit/29743
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-08-09 19:18:20 -07:00
Hung-Te Lin
4e4ed8bc96 Generates x86 and arm firmware bitmap blocks.
X86 (coreboot) uses 800x600 resolution while ARM systems (uboot) initialze LCD
as its maximum size, so we must refine the bmpblk build scripts to generate
output with different scaling parameters.

BUG=chrome-os-partner:11078
TEST=make # got ARM bmpblock and verified to work on daisy.

Change-Id: Ib9e9a0dc3b6695cef451772391f207a5b57977df
Reviewed-on: https://gerrit.chromium.org/gerrit/29606
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>
2012-08-09 01:56:45 -07:00
Hung-Te Lin
7f06cfd68d Generate localized messages in PNG format.
To support rendering messages in multiple resolution profiles, we need to keep
the images in its original format.

BUG=chrome-os-partner:11078
TEST=./text_to_png # images were converted correctly.

Change-Id: I6e13331eddfa4c40b17b67b5cf56b5a0284e3b34
Reviewed-on: https://gerrit.chromium.org/gerrit/29605
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>
2012-08-09 01:56:45 -07:00
Hung-Te Lin
c11d83513f Add firmware update message for WAIT screen.
Simply copied from assets (boot-messages).

BUG=chrome-os-partner:11078
TEST=none, simply adding text resource files.

Change-Id: Idd81a1471b440e2ef2b7be652e4eb6896e93a2fc
Reviewed-on: https://gerrit.chromium.org/gerrit/29604
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-09 01:56:44 -07:00
Dave Parker
5da1061b46 Update bmpblock with new-style minimalist screens.
NOTE: Only the "launch countries" have a full set of updated
text strings...and those strings were translated via
translate.google.com and need fixing-up prior to use in a
real product.

BUG=chrome-os-partner:11078
TEST=install bmpblock_x86.bin into a firmware image with
gbb_utility -s -b bmpblock_x86.bin image.bin
Verify the four firmware screens are displayed correctly.

Original-Change-Id: Ib8ff142e9a938a6a3bf949153594cc013c8bb311
Reviewed-on: https://gerrit.chromium.org/gerrit/28574
Reviewed-by: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
(cherry picked from commit 7c41920b754cb0d18da9a125f76d3f1ef90e04f4)

Change-Id: I534beaea5be95b549a6305d4b2911abeb983e034
Reviewed-on: https://gerrit.chromium.org/gerrit/29603
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>
2012-08-09 01:56:44 -07:00
Dave Parker
3985f94fae 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-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)

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>
2012-08-09 01:56:44 -07:00
Jim Hebert
61ed188e95 Extend "non-release" check to session manager use-flags.
Since we've moved away from flag-files in session manager to
enable certain dev/test-mode features, our strategy of checking
for those flag files on the signer fell behind. This test adopts
a scheme that any use flag starting with "test_" or "dangerous_"
is blacklisted from release signing.

BUG=chromium-os:32430
TEST=ran the script against both a 'base' and 'test' image
from the builder/ToT. Passes/fails as expected.

Change-Id: I54d6ef17d52371c7543d5705e0939e000db85e51
Reviewed-on: https://gerrit.chromium.org/gerrit/29034
Reviewed-by: Chris Masone <cmasone@chromium.org>
Tested-by: Jim Hebert <jimhebert@chromium.org>
Commit-Ready: Jim Hebert <jimhebert@chromium.org>
2012-08-07 14:28:01 -07:00
Bill Richardson
b48cd672a7 Add WAIT screen to default bitmap
Some systems take a long time to program the EC firmware (because it's
behind a really slow I2C bus or something). This could happen at any boot as
part of software sync. If it's necessary to reprogram the EC on a slow
system, we need to display a BIOS screen to the user so he/she doesn't think
it's bricked.

This CL is just to add a new default bitmap so we'll have something to
display when we need it. Nothing actually uses it yet.

BUG=chrome-os-partner:12254
TEST=none

There should be no user-visible changes. We don't invoke this screen yet.

Change-Id: Icb922f933e2e921472dbdff7a26a3ca4d58fbba3
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/29241
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
2012-08-05 22:08:33 -07:00
Randall Spangler
8dde1491e5 Fix make_dev_ssd.sh --remove_rootfs_verification
It was checking for /dev/dm-0, which isn't the case anymore.  It now
always attempts to remove rootfs verification from the command line;
this is harmless (no-op) if it's already removed.

BUG=chromium-os:31558
TEST=manual

/usr/share/vboot/bin/make_dev_ssd.sh --remove_rootfs_verification
reboot
touch /opt/google/chrome/chrome

Change-Id: I62dc138e8d1d09bdcb16be3faab74d32c5f7675a
Signed-off-by: Randall Spangler <rspangler@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/28506
Reviewed-by: David James <davidjames@chromium.org>
2012-08-03 12:22:32 -07:00
Hung-Te Lin
af44dce1e8 vboot_reference: Improve make_dev_firmware script.
Developers testing firmware preamble flags (usually for turn on/off RO-NORMAL
bits) need a easy way to change existing firmware, without hacking FDT source /
looking for complex script.

Also included some minor improvements:
 * Always enable FORCE_DEV_BOOT_USB and DISABLE_FW_ROLLBACK_CHECK. These are
   flags most developers need when leaving official signed normal firmware.
 * --bmpfv is deprecated because our latest firmware now always include
   official bitmaps in updater, no more DEV bitmaps.

BUG=none
TEST=./make_dev_firmware.sh -f bios.bin -t new_bios.bin --preamble_flags 0
     ./make_dev_firmware.sh -f bios.bin -t new_bios.bin --preamble_flags 1

Change-Id: I7ee72d32b4b7fa28f2be635fd8c7bb678852e132
Reviewed-on: https://gerrit.chromium.org/gerrit/28792
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
2012-08-01 09:07:06 -07:00
Nirnimesh
c6051ff378 [vboot_reference] Prepare for the removal of /root/.forget_usernames from test images
/root/.forget_usernames is going away from test images. It was a hack.

BUG=chromium-os:31807
TEST=suite:bvt

Change-Id: I27b606fa0232514f3ec45a4ed765b89efcf8f07e
Reviewed-on: https://gerrit.chromium.org/gerrit/27588
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Tested-by: Nirnimesh <nirnimesh@chromium.org>
Commit-Ready: Nirnimesh <nirnimesh@chromium.org>
2012-07-17 16:03:44 -07:00
Hung-Te Lin
61603e2d61 vboot_reference: add "set_gbb_flags" script.
A simple script to help setting GBB flags on-the-fly, with help information for
flag value meanings.

BUG=chrome-os-partner:10389
TEST=./set_gbb_flags.sh 0x20
     ./set_gbb_flags.sh 0x0

Change-Id: Ic624f76c0897a1cbda876f3073b36f7c6425b5d4
Reviewed-on: https://gerrit.chromium.org/gerrit/26224
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
2012-06-27 18:44:28 -07:00
Gaurav Shah
79461cbc03 security test: Add test that verifies that update verification is enabled
BUG=chromium-os:31893
TEST=verified on images with/without payload verification enabled.

Change-Id: Ic1883aafcc2c48d9e7c5323d6dc7e21fb8f47585
Reviewed-on: https://gerrit.chromium.org/gerrit/25407
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Gaurav Shah <gauravsh@chromium.org>
Tested-by: Gaurav Shah <gauravsh@chromium.org>
2012-06-18 15:21:42 -07:00
Bill Richardson
1d75e69f3d Check in sources for the default, unofficial BIOS screens
The original sources have been lost. These were obtained by unpacking the
binary.

BUG=none
TEST=none

Change-Id: I8042a3abf586551bc2a855d3fd9d7d6ae1aae2d9
Reviewed-on: https://gerrit.chromium.org/gerrit/24710
Tested-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Randall Spangler <rspangler@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
2012-06-07 14:00:14 -07:00