summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Kiev: bmpblock: Restore "Push space for recovery." on devmode screen.firmware-kiev-2.112.BDave Parker2012-09-2443-43/+79
| | | | | | | | | | | | | | | The message "Push space to re-enable" is confusing as this does not disable developer mode on Kiev. The older text is more accurate. BUG=chrome-os-partner:14429 TEST=Remove the 'clean' step in the newbitmaps Makefile. Run make then run "bitmap_viewer images/out_x86/DEFAULT.yaml". Verify the text on the devmode screen mentions pushing space for recovery. Change-Id: I2901dcd0a7fa910637da3e8eb4b1f4d5db092bcb Reviewed-on: https://gerrit.chromium.org/gerrit/33934 Reviewed-by: Bernie Thompson <bhthompson@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Kiev: newbitmaps: Finalize text layout & font settings.Dave Parker2012-09-1916-32/+75
| | | | | | | | | | | | | | | | | | | This change contains select parts of the following changes that are relevant for Kiev: https://gerrit.chromium.org/gerrit/30369 https://gerrit.chromium.org/gerrit/30679 This pulls in font and layout changes from ToT without bringing in the Makefile refactoring or profile changes. BRANCH=kiev BUG=chrome-os-partner:8510 TEST=make # verify bitmap block works. Change-Id: Ieb04d48b20ba23bf1b889ea49a010044ed885d56 Reviewed-on: https://gerrit.chromium.org/gerrit/33654 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* cherry-pick: newbitmaps: Reduce spacing between for_help and URL text.Hung-Te Lin2012-09-191-0/+5
| | | | | | | | | | | | | | | | | | | 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: If9dd14918c27c4802c27209db214a0f5f0d2137c Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/33653 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: Fix vertical placement of bmp images on firmware screens.Dave Parker2012-08-171-11/+5
| | | | | | | | | | | | | | | | 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: Ibbffcdcb356ab0a77ba33c62a377bc5db0682f59 Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30724 Reviewed-by: Dave Parker <dparker@chromium.org>
* Kiev: Resize firmware bitmaps to 1280x1024.Dave Parker2012-08-171-9/+11
| | | | | | | | | | | | | BUG=chrome-os-partner:8510 TEST=Run 'make' in newbitmaps directory. Verify bitmaps are displayed correctly. Note: coreboot firmware must specify CONFIG_FRAMEBUFFER_VESA_MODE=0x11a in the config.<BOARD> file. Change-Id: I3356521e2ab936d2f483326f68a5dcf157b6ae48 Reviewed-on: https://gerrit.chromium.org/gerrit/30634 Reviewed-by: Dave Parker <dparker@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Kiev: Update text font, color, and size to improve readability.Dave Parker2012-08-173-6/+6
| | | | | | | | | | | BUG=chrome-os-partner:8510 TEST=Run 'make' in newbitmaps directory. Very fonts are more readable on DUT. Change-Id: I7096d77b0c94d75046c81991ebfbfa9f3cec48a2 Reviewed-on: https://gerrit.chromium.org/gerrit/30631 Reviewed-by: Dave Parker <dparker@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Kiev: Improve spacing of text on firmware screensDave Parker2012-08-1716-9/+31
| | | | | | | | | | | | | Updated for launch countries only. BUG=chrome-os-partner:8510 TEST=Run 'make' in newbitmaps directory. Verify text doesn't get "too wide" on firmware screens running on a DUT. Change-Id: I9e61126448aa0a0e230ca51bbba9c3b551f3dbfd Reviewed-on: https://gerrit.chromium.org/gerrit/30630 Reviewed-by: Dave Parker <dparker@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: Fix alignment of HWID on firmware screens and bitmap viewer.Dave Parker2012-08-167-5/+12
| | | | | | | | | | | | | | | | | 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: Ifc74e1551f16d5251929258748a4ed4e1418e3dd Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30632 Reviewed-by: Dave Parker <dparker@chromium.org>
* Kiev: Set languages for firmware screens to probable localesDave Parker2012-08-161-2/+2
| | | | | | | | | | | | BUG=chrome-os-partner:8510 TEST=Run 'make' in newbitmaps directory. Install bmpblock_x86.bin on a machine and verify languages for the four firmware screens are displayed correctly. Change-Id: I74ab5a8f0b8491b60ee2966b0a60781319302a70 Reviewed-on: https://gerrit.chromium.org/gerrit/30629 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: Prevent color dithering of firmware bitmapsDave Parker2012-08-161-1/+2
| | | | | | | | | | | | | | | 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: I26682a9b2b9d19c0d33b793adec31fa0df91e220 Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30628
* Cherry-Pick: newbitmaps: Refine font and text generation.Hung-Te Lin2012-08-1618-1177/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. Original-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> Conflicts: scripts/newbitmaps/Makefile scripts/newbitmaps/fonts/make_ascii_bmps.py scripts/newbitmaps/images/hwid_fonts.bin scripts/newbitmaps/images/make_default_yaml Change-Id: I1567b43e5c3770fd63cb9c98a9be4ec6f3aeea12 Reviewed-on: https://gerrit.chromium.org/gerrit/30627 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: newbitmaps: Always generate bitmaps in 8bpp mode.Hung-Te Lin2012-08-161-7/+29
| | | | | | | | | | | | | | | | | | | 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: I8e91c684e7029337c85b1e2b94dffaf8cbb6eff5 Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30626 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: Scale bmp files correctly for x86 when generating bmpblocks.Dave Parker2012-08-161-1/+1
| | | | | | | | | | | | | | | 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: Iee79ce15e32e7e7771569a1b9ca81851df5303aa Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30625
* Cherry-Pick: Translated text for "v2" firmware screens.Dave Parker2012-08-16463-360/+526
| | | | | | | | | | | | | | | | BUG=chrome-os-partner:11078 TEST=run make in newbitmaps directory to build a new bmpblock. Original-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> Change-Id: I4f4f57981c1398dcef8535797d01f59cfa0c4416 Reviewed-on: https://gerrit.chromium.org/gerrit/30624 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: Generates x86 and arm firmware bitmap blocks.Hung-Te Lin2012-08-166-106/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. Original-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> Conflicts: scripts/newbitmaps/fonts/make_ascii_bmps.py scripts/newbitmaps/images/Makefile Change-Id: I01a857a628efa37f37c076bb89798353853b8677 Reviewed-on: https://gerrit.chromium.org/gerrit/30623 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: Generate localized messages in PNG format.Hung-Te Lin2012-08-163-56/+32
| | | | | | | | | | | | | | | | | | | 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: I1fa34e55f60f065dd0af161b5b4f53bb54f9c8c1 Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30622 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Kiev: Update bmpblk version from 1.2 to 2.0 for new-style screens.Dave Parker2012-08-164-17/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | 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: 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> Conflicts: scripts/newbitmaps/default_source/bmpblock.bin scripts/newbitmaps/default_source/config.yaml Change-Id: I14aa6895d0e80576c6a13968ae88edb9e2a6d44c Reviewed-on: https://gerrit.chromium.org/gerrit/30621 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Cherry-Pick: newbitmaps: Remove Alex files and refer to specific branch.Hung-Te Lin2012-08-16226-3003/+5
| | | | | | | | | | | | | | | | | | | | | 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: I230159f5ee18cb7f76f52e9dd847b4a904a2111b Original-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> Reviewed-on: https://gerrit.chromium.org/gerrit/30620 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Improve rendering of HWID to match other text.Dave Parker2012-08-065-14/+22
| | | | | | | | | | | | BUG=chrome-os-partner:8510 TEST=run 'make' in newbitmaps. install bmpblock_x86.bin on kiev machine and verify HWID is displayed in a similar style to other text. Change-Id: I1054a404bbce4d0639bf7c31da723d072bf58e0e Reviewed-on: https://gerrit.chromium.org/gerrit/29243 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Update Remove graphic to only show a USB stick.Dave Parker2012-08-043-3/+4
| | | | | | | | | | | | | SD Cards are not supported recovery media for Kiev. BUG=None TEST=run 'make' from newbitmaps directory. Run firmware with new bmpblock and verify remove screen uses new graphic. Change-Id: Ida6235ee2999a8469623fea756861173b924a3c8 Reviewed-on: https://gerrit.chromium.org/gerrit/29228 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Kiev: Update bmpblock with new-style minimalist screens.Dave Parker2012-08-02142-1373/+1192
| | | | | | | | | | | | | | | | | 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:8510 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. 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>
* Increase max number of bitmaps to composite to 16 per screen.Dave Parker2012-08-011-1/+1
| | | | | | | | | | | | | This is needed to render new-style screens that use 13 bitmaps. BUG=chrome-os-partner:8510 TEST=emerge-<board> vboot-reference. Run firmware with new bmpblock. 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-Pick: remove.txt no longer mentions USB and SD cards explicitlyBill Richardson2012-08-0145-43/+43
| | | | | | | | | | | | | BUG=chrome-os-partner:6953 TEST=none Just changing the source, so nothing to test here. Change-Id: I48d9519809c277834529f9c082f8e8a2fb975fe9 Original-Change-Id: Ic09c45d49ea9e5acd4b57e281de73a4ca0a3af81 Reviewed-on: https://gerrit.chromium.org/gerrit/28573 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: Dave Parker <dparker@chromium.org>
* Add new line after printing non-zero GBB flags.firmware-uboot_v2-1299.BStefan Reinauer2012-02-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | Callers of vboot might print some additional information in VbExDisplayDebugInfo(). Add a new line to the end of the buffer so that output is aligned with the normal <tab> information. BUG=none TEST=set gbb flags to 1, see cursor go to next line at dev screen. Reviewed-on: https://gerrit.chromium.org/gerrit/17001 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Bill Richardson <wfrichar@chromium.org> Commit-Ready: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 5ee257d94cb8aab2f3717c5cd4ceb37fbba3ec41) Change-Id: I49aa04900ac34d76213a49d00b97f13ad22f5d58 Reviewed-on: https://gerrit.chromium.org/gerrit/17008 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
* Revert "Add Ctrl-Enter as an additional key to trigger dev USB boot."Duncan Laurie2012-02-162-4/+1
| | | | | | | | | | | This reverts commit eda04e8c0df44ebb1ed84b1f767f518af97bcdf8. BUG=chrome-os-partner:8075 Change-Id: I8c6bb237cfa6d087ab4774b41873fd8c87ad0f61 Reviewed-on: https://gerrit.chromium.org/gerrit/16081 Tested-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Ronald G. Minnich <rminnich@chromium.org>
* Add Ctrl-Enter as an additional key to trigger dev USB boot.Tom Wai-Hong Tam2012-02-152-1/+4
| | | | | | | | | | | | | | | | | | | | | | | Due to the limitation of servo that is unable to send U keys, dev USB boot (triggered by Ctrl-U) is unable to be tested on FAFT. To solve it, firmware should add an addition key combination to workaround it. Ctrl-Enter is the one we picked. BUG=chrome-os-partner:6759 TEST=compile the firmware and update it to Lumpy; during the dev screen, press Ctrl-Enter to trigger USB boot. Reviewed-on: https://gerrit.chromium.org/gerrit/15749 Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Ready: Tom Wai-Hong Tam <waihong@chromium.org> Tested-by: Tom Wai-Hong Tam <waihong@chromium.org> (cherry picked from commit 2ddd5f64515b4be9847a16de793c59b161221e1b) Change-Id: Ib10e29864c95c8a6fb417d5530bcea599699357f Reviewed-on: https://gerrit.chromium.org/gerrit/15917 Tested-by: Stefan Reinauer <reinauer@google.com> Reviewed-by: Randall Spangler <rspangler@chromium.org>
* Bah. Fix the test, too.Bill Richardson2012-01-271-1/+1
| | | | | | | | | | | | | | | | BUG=chrome-os-partner:7775 TEST=none Reviewed-on: https://gerrit.chromium.org/gerrit/14968 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: Bill Richardson <wfrichar@chromium.org> (cherry picked from commit ee2e590ff0db1f0a0c5f6a8122d7c090ea833924) Change-Id: Ic5eeac0f215cc6ec72f61dcf1802a068aea8ef82 Reviewed-on: https://gerrit.chromium.org/gerrit/14969 Reviewed-by: Stefan Reinauer <reinauer@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Oops. Must still distinguish "no disks" from "no valid disks".Bill Richardson2012-01-271-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | The fix for chrome-os-partner:7715 introduced a new bug. This fixes that. BUG=chrome-os-partner:7775 TEST=manual Boot into recovery mode. Insert invalid USB. You should see the YUCK screen. Reviewed-on: https://gerrit.chromium.org/gerrit/14963 Commit-Ready: Bill Richardson <wfrichar@chromium.org> Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Stefan Reinauer <reinauer@chromium.org> (cherry picked from commit cbfc6dbd231828b0327583447f5192334ebd4101) Change-Id: I0432229673cd11a7eb247892c213c1acb0fe6e64 Reviewed-on: https://gerrit.chromium.org/gerrit/14965 Reviewed-by: Stefan Reinauer <reinauer@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Make VbTryLoadKernel() go to recovery when no valid disks are foundBill Richardson2012-01-253-3/+329
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, it was going to recovery only when no disks existed. That didn't catch the case where disks exist but none of them are usable. BUG=chrome-os-partner:7715 TEST=manual I've added a test specifically for this, so just make make runtests should verify it. To test on actual hardware, find a disk or USB drive that has something other than 512 bytes per LBA, and try it. It won't be bootable, but using it shouldn't hang the system or cause weird behavior. Once in recovery, press TAB, and you should see the reason code VBNV_RECOVERY_RW_NO_DISK Reviewed-on: https://gerrit.chromium.org/gerrit/14816 Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Stefan Reinauer <reinauer@chromium.org> Commit-Ready: Bill Richardson <wfrichar@chromium.org> (cherry picked from commit bf020a0d4db68897058503767067567565450dde) Change-Id: Ib61c7057bf31174cf3f54825bfcf324fb2ed0020 Reviewed-on: https://gerrit.chromium.org/gerrit/14826 Reviewed-by: Stefan Reinauer <reinauer@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Be aggressive in saving locale to nvram.Bill Richardson2012-01-242-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On x86 platforms, the power button and lid switch events have to be handled by coreboot SMM code, because it needs to interact with the southbridge and/or EC, and U-Boot doesn't have a way to do that. Once the kernel takes over, it sends an SMI to that code which tells it to start delivering ACPI events instead of whatever pre-ACPI handling it has been doing. U-Boot doesn't have any code to handle either case, and adding it would either be a major undertaking (adding ACPI support to U-Boot!), or would require creating yet another special-purpose interface just for our U-Boot (yuck). It's much simpler to just make vboot_reference be more aggressive about writing to the nvram for this one case where it matters. OTOH, ARM will need U-Boot to handle the lid switch and power button via GPIOs since it uses only U-Boot and has no SMI handler. This change isn't necessary for ARM, but shouldn't hurt either. BUG=chrome-os-partner:7689 TEST=manual 1. Boot to dev-mode screen or recovery screen. 2. Press arrow keys to change locale. 3. Power off (press power button or yank A/C & battery) 4. Power on again. The BIOS screen locale should still be set to your last choice before powering off. Reviewed-on: https://gerrit.chromium.org/gerrit/14721 Tested-by: Bill Richardson <wfrichar@chromium.org> Commit-Ready: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 5fd35971de5e9fe2a7988519dc8d13ea3af0c0c5) Change-Id: I5d4ba8e8026479305706b4f41cb97458e66d58c0 Reviewed-on: https://gerrit.chromium.org/gerrit/14742 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Stefan Reinauer <reinauer@chromium.org>
* Remove debug messages from VbAudioLooping() - too noisy.Bill Richardson2012-01-221-9/+0
| | | | | | | | | | | | | | | | | | | | The VBDEBUG() is logged even for production builds (visible as /sys/firmware/log once the system boots). Too many messages clutter it up. BUG=chrome-os-partner:7669 TEST=manual Boot in dev-mode, log in and look at /sys/firmware/log. You shouldn't see more than dozen lines or so of VbAudio debug messages. Change-Id: I00465c0092d49feaa8d94aa8a13acbfa1e07743d Reviewed-on: https://gerrit.chromium.org/gerrit/14603 Commit-Ready: Bill Richardson <wfrichar@chromium.org> Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> (cherry picked from commit 506649c5cd6f7943b2e0565325b2db8346b55f47) Reviewed-on: https://gerrit.chromium.org/gerrit/14607 Tested-by: Vincent Palatin <vpalatin@chromium.org>
* Fix audio loop for long-delay keyboard reads.Bill Richardson2012-01-194-85/+133
| | | | | | | | | | | | | | | | | | | | | | | | | BUG=chrome-os-partner:7428 TEST=manual Switch to dev-mode, turn it on, see how long it takes. With gbb.flags == 1 (factory mode), it should take 2 seconds. (You'll see a warning on the screen if gbb.flags is nonzero) With gbb.flags == 0 (after factory install), it should take 30 seconds. You should hear two beeps at 20 seconds. Reviewed-on: https://gerrit.chromium.org/gerrit/14534 Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Stefan Reinauer <reinauer@chromium.org> Commit-Ready: Bill Richardson <wfrichar@chromium.org> (cherry picked from commit 037dba21243559e93aa98c428c0655ceb418b23f) Change-Id: I6fb6adf4e9c8a037b8aac8eeeb9dbf1943fdc730 Reviewed-on: https://gerrit.chromium.org/gerrit/14537 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Bill Richardson <wfrichar@chromium.org>
* Acknowledge Ctrl+U fasterVincent Palatin2012-01-181-12/+18
| | | | | | | | | | | | | | | | | | | When the user hits Ctrl+U on the dev screen, we used to change the screen only after we enumerate the USB devices, load the kernel from USB mass storage and boot it (about 4 seconds on the current firmware). Let's blank the screen earlier to show we got the key press. BUG=chrome-os-partner:7563 TEST=on a Stumpy in developer, hit Ctrl+U on the dev screen with an invalid key, then a valid key. Check which screen are displayed and how long it takes to get a new display after the key strokes. Change-Id: Ifc73b56055bcd50360d71c1cb6dee052d0fdf9aa Reviewed-on: https://gerrit.chromium.org/gerrit/14395 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Commit-Ready: Vincent Palatin <vpalatin@chromium.org> Tested-by: Vincent Palatin <vpalatin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/14400
* Clean up return codes for better interaction with U-Boot.Stefan Reinauer2012-01-172-5/+7
| | | | | | | | | | | | | | | | | BUG=none TEST=none Reviewed-on: https://gerrit.chromium.org/gerrit/14181 Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Ready: Bill Richardson <wfrichar@chromium.org> (cherry picked from commit 82e69b9f7494c5f939e2b546c06eeb13d68bdd03) Change-Id: I1c9dc689a287b7df3118dd0ba930edb0f1744e7c Reviewed-on: https://gerrit.chromium.org/gerrit/14298 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Bill Richardson <wfrichar@chromium.org>
* signing script: Check for errors on extracted dm params in kernel command line.Gaurav Shah2012-01-052-34/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correctly handle the lack of valid dm config parameters in the kernel command line (dm="..."). In particular, skip trying to perform a rootfs hash update for that kernel partition. This change has the side effect of properly signing new recovery images with the in-flight changes recovery install changes being done as part of crosbug.com/22530. Also fix verification of recovery images to consider both kernel partitions for determing the hash to compare the calculated value against. Finally, remove dd's verbose output while signing the firmware. BUG=chromium-os:22530 TEST=manually re-signed new (Alex) and old (Lumpy) recovery image. Verified that recovery install works. Reviewed-on: https://gerrit.chromium.org/gerrit/12588 Tested-by: Gaurav Shah <gauravsh@chromium.org> Reviewed-by: Will Drewry <wad@chromium.org> Commit-Ready: Gaurav Shah <gauravsh@chromium.org> (cherry picked from commit ce6649250583a8f3a7aeac78ee3a00679cf6223d) Change-Id: I7c689fb32c93ae0c9f2d38ab7afddb5d86767e15 Reviewed-on: https://gerrit.chromium.org/gerrit/13729 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* vboot_reference: sanity check firmware A/B content when resigningHung-Te Lin2012-01-051-14/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the FW_A and FW_B contents are the same, we should not resign with DEV/NORM keyblocks. BUG=chrome-os-partner:6942 TEST=(to sign) ./resign_firmwarefd.sh bios.bin new.bin \ ../../tests/devkeys/firmware_data_key.vbprivk ../../tests/devkeys/firmware.keyblock \ ../../tests/devkeys/dev_firmware_data_key.vbprivk \ ../../tests/devkeys/dev_firmware.keyblock \ ../../tests/devkeys/kernel_subkey.vbpubk (to verify) dump_fmap -x new.bin vbutil_keyblock --unpack VBLOCK_A | grep Flags vbutil_keyblock --unpack VBLOCK_B | grep Flags When the input (bios.bin) have DEV FW (ex, zgb/alex), then output is A=6, B=7; when the input is old or new firmware without DEV (ex, mario/s*y/l*y), output is A=7, B=7, and you'lll see "Found firmware with same A/B content - ignore DEV keyblock." meessage during resign process. Reviewed-on: https://gerrit.chromium.org/gerrit/12371 Commit-Ready: Hung-Te Lin <hungte@chromium.org> Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Hung-Te Lin <hungte@chromium.org> (cherry picked from commit 505a047c853b87caf808a180ec2eaf1381b68279) Change-Id: I86eff2e68f6f31b0928325ab7b03fb8f57f6882f Reviewed-on: https://gerrit.chromium.org/gerrit/13728 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Make dev firmware keyblock/data key generation and use optionalGaurav Shah2012-01-052-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | For key generation, only generate dev firmware keyblocks, if the --devkeyblock option is passed. For signing, re-use normal firmware keyblock and data key if no dev keyblocks or data key are found in the keyset directory. BUG=chrome-os-partner:6942 TEST=manual - tested key generation with/without the new flag - tested signing with or without the presence of dev keyblock Reviewed-on: https://gerrit.chromium.org/gerrit/12038 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Gaurav Shah <gauravsh@chromium.org> Commit-Ready: Gaurav Shah <gauravsh@chromium.org> (cherry picked from commit a24e30cdc2f81e619f2441cdf372a7b6064e1844) Change-Id: I5cd2b150d8006523d56e0858c17b8001b22d8cb7 Reviewed-on: https://gerrit.chromium.org/gerrit/13727 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* signer: run kernel security test of kernel partition 4 instead of partition 2Gaurav Shah2012-01-051-1/+5
| | | | | | | | | | | | | | | | | | | | | | The test is run on a recovery image by the signer. We care more about the parameters on the kernel partition 4 (the SSD install kernel) than 2. It'd be nice to have security test on the recovery kernel too and I have marked that as a TODO for now. BUG=chromium-os:24077 TEST=tested on a R17 and R18 mario, alex and zgb image. Reviewed-on: https://gerrit.chromium.org/gerrit/12970 Reviewed-by: Jim Hebert <jimhebert@chromium.org> Tested-by: Gaurav Shah <gauravsh@chromium.org> (cherry picked from commit e5d31dce377ad34e2a165e6e5d98f819b20c212d) Change-Id: I937dd3c38aef307ca1d80c9d85fb647fe40512ab Reviewed-on: https://gerrit.chromium.org/gerrit/13726 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Revert "Revert "Add x86_64 architecture support""Simon Glass2012-01-052-0/+50
| | | | | | | | | | | | | | | | | This reverts commit 354630570900cd5c2180610acfa47422ff484fe6 Reviewed-on: https://gerrit.chromium.org/gerrit/12044 Commit-Ready: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> (cherry picked from commit 8e85e987739281161ece1dbc9ff2b73f3e8e1e35) Change-Id: Ifcfa1774598ed545b4276a3ed8e24d378f95bbbd Reviewed-on: https://gerrit.chromium.org/gerrit/13725 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Allow caller to specify build output directorySimon Glass2012-01-051-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | This changes the Makefile to set the BUILD directory only if the caller does not specify it. This allows U-Boot to build vboot reference and put the resulting binaries into its own output directory. BUG=chromium-os:16808 TEST=emerge vboot_reference-firmware for tegra2-seaboard, x86-mario Reviewed-on: https://gerrit.chromium.org/gerrit/11638 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Commit-Ready: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> (cherry picked from commit 6d696e532c6a0c93ad9b915c59dad4144e6f1b33) Change-Id: Id994d6d9f7d42ebbaa6ddd55ec0715b154f52fd5 Reviewed-on: https://gerrit.chromium.org/gerrit/13724 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Revert "Revert "Revert "Revert "Break out common compile flags""""Simon Glass2012-01-051-22/+28
| | | | | | | | | | | | | | | | | This reverts commit 9d7d7c653bfac91180ec6e4a8047be8dc2e73448 Reviewed-on: https://gerrit.chromium.org/gerrit/11809 Tested-by: Simon Glass <sjg@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Ready: Simon Glass <sjg@chromium.org> (cherry picked from commit b265c34321c01bd279f3a1df0a2fea3601f732ee) Change-Id: I44a17a18c079ba4f358bb112d59297ac49c4578f Reviewed-on: https://gerrit.chromium.org/gerrit/13723 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Fix crossystem on amd64 boardsSonny Rao2012-01-051-57/+1
| | | | | | | | | | | | | | | | | | | | | | | Since x86 and amd64 boards use the same firmware and are otherwise identical use the same implementation for crossystem on both BUG=chromium-os:21386 TEST=emerge-x86-generic ; test crossystem works on Samsung Series 5 TEST=emerge-amd64-generic ; test crossystem works on Samsung Series 5 TEST=run unit tests on build machine with: RUNTESTS=1 make Reviewed-on: https://gerrit.chromium.org/gerrit/12059 Tested-by: Sonny Rao <sonnyrao@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Ready: Sonny Rao <sonnyrao@chromium.org> (cherry picked from commit 5fffeee4124ec2a27baace5e5b8e473a18f32f16) Change-Id: I94091731f766a7ddbc25d4aa088b18ef54a932b7 Reviewed-on: https://gerrit.chromium.org/gerrit/13722 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Add a few comments and warnings when building incorrectlySimon Glass2012-01-052-0/+7
| | | | | | | | | | | | | | | | | | | | The Makefile requires a few defines and isn't very friendly if they are missing. This adds some warnings which should alert as to what is wrong. BUG=chromium-os:16808 TEST=emerge vboot_reference-firmware for tegra2-seaboard, x86-mario Reviewed-on: https://gerrit.chromium.org/gerrit/11548 Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> (cherry picked from commit c25904536f2d8e3fe37860dff0ecc437323b760e) Change-Id: I887badec4fca9780a3eff8c2b46690f5f66251c5 Reviewed-on: https://gerrit.chromium.org/gerrit/13721 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Dev-mode allows booting self-signed kernels by default.Bill Richardson2012-01-059-28/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When you enter dev-mode, Pressing Ctrl-U to boot from USB is DISABLED. Booting any self-signed kernel from the SSD is ENABLED. This replaces the "crossystem dev_boot_custom" argument with "crossystem dev_boot_signed_only", which has the opposite polarity. So if you want to dev-mode to only boot official kernels, you have to explictly set it that way. If you leave dev-mode and then come back, it will go back to the conditions shown above. BUG=chrome-os-partner:5954 TEST=manual Just run the factory flow. It was broken; this should fix it (except for any workarounds that were added while it was broken; those may need to be reverted). Reviewed-on: https://gerrit.chromium.org/gerrit/11853 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Tested-by: Hung-Te Lin <hungte@chromium.org> Reviewed-by: Stefan Reinauer <reinauer@chromium.org> (cherry picked from commit 7272a6951107251a5c9b26330c506319a92a54b3) Change-Id: Iee619265dbe6ff012277b9f8107a406e50f883a5 Reviewed-on: https://gerrit.chromium.org/gerrit/13719 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Revert "Display debug info on all screens for testing."Stefan Reinauer2012-01-031-10/+3
| | | | | | | | | | | | No longer needed because the required USB fixes went in. This reverts commit 01efb52cf1842849d51d6ff177698e75b56ba8f6 Change-Id: If5899dde975f6a6dbe08faac0af7bbbddaf17efc Reviewed-on: https://gerrit.chromium.org/gerrit/13587 Commit-Ready: Stefan Reinauer <reinauer@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
* Display debug info on all screens for testing.Stefan Reinauer2011-12-201-3/+10
| | | | | | | | | | | | | | | THIS IS A TEMPORARY WORKAROUND TO MAKE THE RECOVERY REASON AVAILABLE ON SYSTEMS WITH NON-WORKING USB KEYBOARDS. TO BE REMOVED AS SOON AS ALL USB FIXES WENT IN. BUG=none TEST=none Change-Id: I3d8611de5ba8e9ff5765303a02caed4fd2035ff3 Reviewed-on: https://gerrit.chromium.org/gerrit/13269 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org>
* Add VB_INIT_OUT_ENABLE_ALTERNATE_OS flagStefan Reinauer2011-12-204-9/+22
| | | | | | | | | | | | | | | | | | | | | | | | | This adds a flag to the list of values returned by VbInit(). When this flag is set, the BIOS may be asked to boot something other than ChromeOS. If this requires some sort of special preparation, the BIOS should do it. BUG=chromium-os:22454 TEST=none There is no test for this. It requires a change to the BIOS in order to do anything differently, and we haven't yet decided whether the BIOS should pay attention to it. Reviewed-on: https://gerrit.chromium.org/gerrit/11714 Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 0d11efb0dc1d8d2b5eafdd5b65bce82e73fdeecc) Change-Id: I9507fad6486a3304a45067d8b51a99708e15bbff Reviewed-on: https://gerrit.chromium.org/gerrit/13258 Reviewed-by: Randall Spangler <rspangler@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Dev-mode only boots official kernels by defaultStefan Reinauer2011-12-209-8/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although we're now using a single unified BIOS, it is pretty nice to be able to get a shell in developer mode while still using verified boot for the kernel and filesystem. Alex & ZGB implemented this by requiring the dev-mode user to install a special dev-mode BIOS. We don't do that, but we DO require setting a special flag with "crossystem" to accomplish the same thing. In order to allow booting a self-signed kernel, you must boot in developer mode, open a shell, and run this: crossystem dev_boot_custom=1 Special note to internal developers: If you're in the habit (as I am) of booting directly from a USB stick in dev-mode, you'll have to run this: crossystem dev_boot_custom=1 dev_boot_usb=1 Just using dev_boot_usb=1 is no longer enough, because the USB kernel is signed using the recovery key and by pressing Ctrl-U, we validate it with the kernel data key. That worked before this change because any self-signed kernel was fine, and that's how the USB key was treated. Now it actually requires a verified signature until you enable dev_boot_custom=1 also. BUG=chrome-os-partner:5954 TEST=manual Boot once in normal mode, which clears the special flags. Then switch to developer mode. You should be able to boot and get a root shell. Run crossystem dev_boot_usb=1 Obtain a USB recovery image that's keyed differently. For example, if you're testing with dev-keys, use a PVT-signed image or vice-versa. Reboot into dev-mode with the USB recovery stick inserted. At the dev-mode screen, press Ctrl-U. You should hear a single beep, but it should not boot. Press Ctrl-D to boot from the hard drive, log in to a shell and run crossystem dev_boot_custom=1 Repeat the previous test. This time when you press Ctrl-U, it should boot the recovery image. Turn the system off before it does anything. That's it. Reviewed-on: https://gerrit.chromium.org/gerrit/11442 Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit fa9d7782e837848a1aeb0e95295fa48ac23f7a26) Change-Id: Ief751c0181426bf304db883abc0b2aaf030f85ef Reviewed-on: https://gerrit.chromium.org/gerrit/13257 Reviewed-by: Randall Spangler <rspangler@chromium.org> Tested-by: Stefan Reinauer <reinauer@chromium.org>
* Fix typo, add one VBDEBUG.Stefan Reinauer2011-12-192-1/+2
| | | | | | | | | | | | | | | | BUG=none TEST=none Reviewed-on: https://gerrit.chromium.org/gerrit/11670 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Tested-by: Bill Richardson <wfrichar@chromium.org> (cherry picked from commit 791d6e6d75f1d1a0fb41c3a7be27dac7df78def3) Change-Id: Ie06db4fa0135a871fc1fd9db65aca9e303b03251 Reviewed-on: https://gerrit.chromium.org/gerrit/13188 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org>
* Address security concerns for vboot_audio.cStefan Reinauer2011-12-191-2/+25
| | | | | | | | | | | | | | | | | | | Based on the compile-time constants, I don't think we were in any danger, but I've added the checks anyway. It never hurts to be certain! BUG=chromium-os:22786 TEST=none Reviewed-on: https://gerrit.chromium.org/gerrit/11516 Tested-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Gaurav Shah <gauravsh@chromium.org> (cherry picked from commit 931728a003a417bcb29cc1c203ce36d23feee9e8) Change-Id: I1b6f3bec9e7126d546d1a0102bacab2122a6d538 Reviewed-on: https://gerrit.chromium.org/gerrit/13187 Tested-by: Stefan Reinauer <reinauer@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org>