Commit Graph

1662 Commits

Author SHA1 Message Date
Bill Richardson
0ca3830a7b Add missing pragma for MSVC.
Change-Id: I37c811c52b8eb01d8e9b3888d55b2b58071711c5

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

Review URL: http://codereview.chromium.org/6462032
2011-02-09 12:52:53 -08:00
Bill Richardson
fc05bb854f Test BMP files more thoroughly to be sure they're valid.
This is work-in-progress. More tests to come...

Change-Id: Id2e59fd7d0229be3ad90b29b2d0dc035ceeca666

BUG=chromium-os:11766
TEST=manual

Adding an example to the test framework. Use

  make
  make runbmptests

to ensure it works.

Review URL: http://codereview.chromium.org/6286157
2011-02-08 15:03:36 -08:00
Luigi Semenzato
8e14bc05e8 Improve error messages from tests.
Change-Id: I111e0fb38188e70659d735f0949a7bdb548a258b

BUG=433
TEST=compiled and ran the tests.  No QA testing required.

Review URL: http://codereview.chromium.org/6349091
2011-02-08 14:50:41 -08:00
Bill Richardson
856e072e81 Add test framework for bmpblk_utility.
BUG=chromium-os:11742
TEST=manual

Check out sources, run:

  cd src/platform/vboot_reference
  make
  make runbmptests

It should pass.

Change-Id: I50ebdef26662e7446828315a3f5e2786624508b9

Review URL: http://codereview.chromium.org/6246150
2011-02-07 15:39:45 -08:00
Randall Spangler
bce044dee3 Remove version.c
Change-Id: I4a1f90a3a85a063a12e634c1f59bb39395b09036

BUG=11754
TEST=make && make runtests

Review URL: http://codereview.chromium.org/6334148
2011-02-07 12:36:51 -08:00
Randall Spangler
542186618a Initial version of crossystem.
Works for getting switch positions, hwid, fwid.

BUG=chrome-os-partner:1940
TEST=ran manually on Mario and Alex

Review URL: http://codereview.chromium.org/6413002

Change-Id: I874df3b5adf872fec2d36e574cb4b8b4a72d331c
2011-02-07 11:20:20 -08:00
Gaurav Shah
5ab5a377be Add utility to pad a given hash for PKCS1.5 signatures
BUG=n0ne
TEST=manual

Review URL: http://codereview.chromium.org/6334133

Change-Id: I2dced174f41e5dea2e165f18ecbd22a7f40acab3
2011-02-07 11:12:39 -08:00
Gaurav Shah
8ae7b0e41a Allow signing scripts to (optionally) set the firmware and kernel versions
Versions are (optionally) read from a file with the format
firmware_version=<firmware version>
kernel_version=<kernel version>

The new scripts and arguments are compatible with older versions of the script.

Change-Id: I502df69d6c02caee75cdf010e61812be408a64e0

BUG=chromium-os:8016
TEST=manually tested all invocations of sign_official_build {verify|usb|ssd|install|recovery} with and without versions.

Review URL: http://codereview.chromium.org/6368064
2011-02-06 15:44:39 -08:00
Bill Richardson
d55085da49 Slight modification to a previously-LGTM'd CL, to work with ebuild changes.
This replaces http://codereview.chromium.org/6307007. The only difference is
the Makefile. The vboot_reference ebuild has been changed so that we only
attempt to build bmpblk_utility on the host.

Change-Id: I4902703baba155e0d2d7646d19b233aa695c282f

BUG=chromium-os:11017,chromium-os:10599
TEST=none

No test needed. If buildbot is green, it's verified.

Review URL: http://codereview.chromium.org/6334111
2011-02-04 15:01:37 -08:00
Jim Hebert
6b2b81c130 Add sanity test for /etc/lsb-release file in CrOS images
Change-Id: Ib8061ba35afd9681dc70fe1a1459ff9a00f74c3f

BUG=chrome-os-partner:2181
TEST=./ensure_sane_lsb-release.sh chromiumos_base_image.bin  (passes)
Also tested each of the "test fail" possibilities:
* Tested by changing various values in the .config file to force each mismatch/failure
* Tested lsb_syntaxcheck by isolating it and having it check a mock bad lsb-release file
containing each of the possible syntax violations.

Review URL: http://codereview.chromium.org/6246037
2011-02-02 17:34:05 -08:00
Jim Hebert
387b91f908 Script to check for blacklisted files as described in chrome-os-partner:1991
Change-Id: Iad5578031e4d62435a27c92651b1c91075987078

BUG=chrome-os-partner:1991
TEST=Ran manually against current mario images, 'base' img passes, 'test' fails, as expected

Review URL: http://codereview.chromium.org/6264023
2011-01-27 17:46:24 -08:00
Tom Wai-Hong Tam
ab96acf97e On ARM, we need output geometry same as screen size instead of 800x600 and use 8bpp RLE format to encoding BMP.
Also make the script able to run at other directory.

BUG=chromium-os:11384
TEST=as follow:
$ cd /tmp
$ ~/$CHROMEOS/src/platform/vboot_reference/scripts/bitmaps/make_bmp_images.sh 'x86 HWID 1234' '1366x768' true
processing BlankBmp ...
processing DeveloperBmp ...
processing RecoveryBmp ...
processing RecoveryMissingOSBmp ...
processing RecoveryNoOSBmp ...
$ file out_x86_HWID_1234/DeveloperBmp/DeveloperBmp.bmp
out_x86_HWID_1234/DeveloperBmp/DeveloperBmp.bmp: PC bitmap, Windows 3.x format, 800 x 600 x 24
$ ~/$CHROMEOS/src/platform/vboot_reference/scripts/bitmaps/make_bmp_images.sh 'arm HWID 1234' '1366x768' false
processing BlankBmp ...
processing DeveloperBmp ...
processing RecoveryBmp ...
processing RecoveryMissingOSBmp ...
processing RecoveryNoOSBmp ...
$ file out_arm_HWID_1234/DeveloperBmp/DeveloperBmp.bmp out_arm_HWID_1234/DeveloperBmp/DeveloperBmp.bmp: PC bitmap, Windows 3.x format, 1366 x 768 x 8

Change-Id: Ia96a4e64f34350f8bd5fec51657d3cec85c4ab1c

Review URL: http://codereview.chromium.org/6273012
2011-01-28 09:39:31 +08:00
Jim Hebert
d7c9e8250d Add script to validate kernel params before we sign images
Change-Id: I8ffedf8afa00862d135f80db9350927cc0332979

BUG=chrome-os-partner:1991
TEST=Have run it manually with various config data producing test-pass and the different sources of test-fails

Review URL: http://codereview.chromium.org/6253014
2011-01-27 15:44:51 -08:00
Satoru Takabayashi
25364052f2 Revert for fixing the chromium os build.
Revert "This change define the data structure of bmp block and implements the create more of bmpblk_utility. It reads a YAML config file, parse the informations, and creates bmpblock file as output."

This reverts commit 95b0ae01ea.

BUG=none
TEST=emerge-x86 vboot_reference
TBR=waihong@chromium.org

Change-Id: If1692ca12ddb61b7814ca7dddccee5a395c8bed1
2011-01-27 20:05:04 +09:00
Tom Wai-Hong Tam
95b0ae01ea This change define the data structure of bmp block and implements the create more of bmpblk_utility. It reads a YAML config file, parse the informations, and creates bmpblock file as output.
The list mode and extract mode will be implemented later.

Change-Id: I2b34b323814b1d6b0a369b0e4b2bfa7cf960ff4a

BUG=chromium-os:11017
TEST=build and run, use bvi to check its output.

Review URL: http://codereview.chromium.org/6307007
2011-01-27 17:48:47 +08:00
Che-Liang Chiou
34be8273e0 Import firmware compiler flags
If passed into Makefile, firmware compiler flags (CC and CFLAGS) will
override old values to make sure that the compiled vboot_reference
library has calling convention and alike compatible with the firmware.

CL:6257018 had caused buildbot failure due to combination of two
reasons:

First, the Makefile rule for tlcl_generator that uses HOSTCC, which is
not the cross-compiler passed to Makefile, but wrongly passes CFLAGS,
rather than stuff like HOSTCFLAGS, into HOSTCC.

Second, CL:6257018 changed the behavior of Makefile, and so it did not
override CFLAGS value passed by emerge-${BOARD}, which is incompatible
with HOSTCC.

Thus, this CL preserves the previous the behavior of Makefile that
always overrides CFLAGS value received from outside world.

See also CL:6355014

BUG=None
TEST=See below

1. Run emerge-tegra2_seaboard vboot_reference-firmware successfully, and
check if vboot.a is compiled with CFLAGS from u-boot-cflags.mk

2. Run emerge and emerge-${BOARD} vboot_reference successfully

Review URL: http://codereview.chromium.org/6297017

Change-Id: I4b85079c520efdb7043c012b994817b47ebe831c
2011-01-27 16:44:36 +08:00
Chris Sosa
9f1973e271 Revert "Import firmware compiler flags"
This reverts commit 440ad516c4.

BUG=
TEST=

Review URL: http://codereview.chromium.org/6396002

Change-Id: I6b241e418cbba62c9dc82549f2a5c7a9485db1df
2011-01-26 18:54:57 -08:00
Che-Liang Chiou
440ad516c4 Import firmware compiler flags
If passed into Makefile, compiler flags for firmware (so far CC and CFLAGS) will
override old values to make sure that the compiled vboot_reference library has
calling convention and etc. compatible with the firmware.

See also CL:6355014

BUG=None
TEST=See the CL for related ebuilds

Review URL: http://codereview.chromium.org/6257018

Change-Id: I46f77c576d2355f5cde506a0240dd2e2d4a74f0e
2011-01-27 10:23:51 +08:00
Gaurav Shah
30e7f6439b Fix typo in ensure no password script
The current version always fails - and generates false positives. (This is not
the version that is on the live signer, so we are good.)

Change-Id: I7cb14cdcaf4d96bc2911e596224ead9a3738aa18

BUG=chromium-os:1459
TEST=manually tested

Review URL: http://codereview.chromium.org/6322006
2011-01-20 15:57:23 -08:00
Gaurav Shah
605500b88c Split common.sh into bash-only and dash-only sections
Change-Id: I044331dc3558a4f7428b75fe43ef739498d65803

BUG=chromium-os:10836
TEST=scripts that use common.sh seem to work, would appreciate help in testing Chrome OS client scripts!

Review URL: http://codereview.chromium.org/6294002
2011-01-18 12:00:50 -08:00
Che-Liang Chiou
f7bdfbbb98 Expose vboot_struct.h to u-boot
BUG=chromium-os:1302
TEST=cat <<EOF | sh
	sudo emerge vboot_reference &&
	emerge-tegra2_seaboard vboot_reference-firmware &&
	[ -f /build/tegra2_seaboard/usr/include/vboot/vboot_struct.h ] &&
	echo 'Succeed!'
EOF

Review URL: http://codereview.chromium.org/6187005

Change-Id: I363daa7ed49c49fee3b3ed0fae06857142fe5cb4
2011-01-12 17:19:07 +08:00
Hung-Te Lin
a59a0293bd vboot_reference: add creation of GBB blob to gbb_utility
Non-x86 platforms (ex, ARM) may need to create GBB from scratch.
The new "create" (-c) creates a GBB blob by given property maximum sizes.
The list must follow same order as specified in GBB header.

BUG=chromium-os:1302
TEST=gbb_utility -c 0x100,0x1000,0x03DE80,0x1000 gbb.blob
     gbb_utility -s --hwid='test' gbb_blob
     gbb_utility -s --rootkey='some_rootkey' gbb_blob
     gbb_utility -g --hwid --rootkey='rk.bin' gbb_blob # output hwid=test

Change-Id: Ic854609effa32020f9536bc2d3f8457dff1c3719

Review URL: http://codereview.chromium.org/6173001
2011-01-10 13:37:17 +08:00
Che-Liang Chiou
b0310a7972 Add firmware image packing tool
BUG=chromium-os:1302
TEST=manual

(cros) $ cd vboot_reference/utility/
(cros) $ cat > test_config <<EOF
KEYDIR = '/usr/share/vboot/devkeys/'
OUTPUT = 'image.bin'
SIZE = 1 << 20 # 1 MB
ENTRIES = [
  EntryFmap(name='FMAP',
        offset=0x00000000, length=0x00001000,
        ver_major=1, ver_minor=0, base=0x00000000, size=SIZE),
  EntryKeyBlock(name='Firmware A Key',
        offset=0x00010000, length=0x00010000,
        flags=FMAP_AREA_STATIC,
        keyblock=KEYDIR + 'firmware.keyblock',
        signprivate=KEYDIR + 'firmware_data_key.vbprivk',
        version=1,
        fv=INPUT_FILE,
        kernelkey=KEYDIR + 'kernel_subkey.vbpubk'),
  EntryBlob(name='Test Data',
        offset=0x00020000, length=0x000e0000,
        flags=FMAP_AREA_STATIC | FMAP_AREA_COMPRESSED,
        path=INPUT_FILE),
]
EOF
(cros) $ ./pack_firmware_image test_config INPUT_FILE=./pack_firmware_image; echo $?
0
(cros) $ dump_fmap image.bin
opened image.bin
hit at 0x00000000
fmap_signature   __FMAP__
fmap_version:    1.0
fmap_base:       0x0
fmap_size:       0x00100000 (1048576)
fmap_name:       FMAP
fmap_nareas:     2
area:            1
area_offset:     0x00010000
area_size:       0x00010000 (65536)
area_name:       Firmware A Key
area:            2
area_offset:     0x00020000
area_size:       0x000e0000 (917504)
area_name:       Test Data

Review URL: http://codereview.chromium.org/5985009

Change-Id: I24aafc5788309adb1987035d87efac6262140c9c
2011-01-06 11:05:05 +08:00
Hung-Te Lin
38d3ef7631 vboot_reference/make_dev_firmware: check write protection status before making changes
Complete the missing part of "checking (and disabling) write protection status.
This also helps to prevent erasing RW regions on system with WP enabled and
then causing boot failure.

BUG=chrome-os-partner:1276
TEST=(1) On CR-48 with WP enabled, run make_dev_firmware.sh without turning off WP.
         Result: Error message "Write protection is still enabled. Please verify
         that hardware write protection is disabled." (as expected)
     (2) Disable WP and run again.
         Result: firmware has been changed successfully.

Change-Id: Iaf2243cb2cd3c7f83ce4f36543ea3da1e3ca55a1

Review URL: http://codereview.chromium.org/5987010
2011-01-06 09:59:35 +08:00
Gaurav Shah
e13e480b7f Fix missing file list variable defintions.
http://codereview.chromium.org/5878005 modified common.sh but the final checked in CL clobbered some of the variable defintions (most likely due to a manual merge) making the scripts that use it to fail. This CL puts them back.

BUG=chrome-os-partner:1903
TEST=manual; sign_official_build gets hung before, works fine now.

Change-Id: I8d19a086d66b0a0d1e9f7231a14fcf37d42a2f01

Review URL: http://codereview.chromium.org/6104002
2011-01-05 14:47:45 -08:00
Randall Spangler
e37ff5d596 Check in tofactory script.
Also refactor the other scripts to move more common functions (debug output, etc.) to common.sh.

BUG=chrome-os-partner:1903
TEST=manual; ran on a Chrome notebook, verified the right things got copied.

Review URL: http://codereview.chromium.org/5878005

Change-Id: Ib7131356ecb6f88eee3d529a518f23b94756d0c0
2011-01-04 16:42:08 -08:00
Thieu Le
ddc06e4be1 Preserves file system metadata between new build and latest shipping image.
This script preserves the root file system metadata as much as possible
between the specified image and the latest shipping image. It preserves
the metadata by ensuring that the files reuse the same inodes and that they
are located at the same physical location on-disk. This leads to smaller
auto-update delta payload and less disk reshuffling, extending the life
of the SSD.

It is called before the image is signed during the stamping process.

Currently, this only supports x86-mario.

This is a continuation of a previous CL located at:
http://codereview.chromium.org/6058006/

BUG=chromium-os:10188
TEST=Build image, boot image, auto-update to new image, run suite_Smoke

Change-Id: I3270245dc15a074abb3bac250922c30e2e105f92

Review URL: http://codereview.chromium.org/6079004
2011-01-04 16:16:56 -08:00
Che-Liang Chiou
5d9509cbde vboot TPM stub functions return error codes
TlclStubInit, TlclCloseDevice, and TlclOpenDevice were void functions but
should return error codes.

BUG=chromium-os:6695
TEST=RUNTESTS=1 make && emerge successfully

Review URL: http://codereview.chromium.org/5796005

Change-Id: I8ddbf8b1f080d98ff6ed42c4a675fbda5b17eef1
2010-12-16 14:11:17 +08:00
Bill Richardson
9880ca5a03 Check for enough room in /tmp, warn about too-small USB drives.
BUG=chromium-os:10062
TEST=manual

Verify the tempdir check by specifying a working directory on a filesystem
that's too small. It should complain:

  dd if=/dev/zero bs=1M count=3 of=foo
  mkfs.ext2 foo
  mount -o loop foo /mnt
  WORKDIR=/mnt ./recovery.sh

Verify the too-small USB check by selecting one that's too small. It won't
stop you, but will warn you like this:

  I found 2 USB drives.  We need one with at least 927MB capacity.

  0 - <quit>

  1 - Use /dev/sdc 4051MB SanDisk  U3 Cruzer Micro

  2 - Use /dev/sdd 32MB M-Sys    DiskOnKey

  Tell me what to do (or just press Enter to scan again): 2

  WARNING: This drive seems too small (31MB). The recovery image is 927MB.

  Is this the device you want to put the recovery image on?

    /dev/sdd 32MB M-Sys    DiskOnKey

  You must enter 'YES' (all uppercase) to continue: ^C

Change-Id: I7cf78b5b69eba696d911ca8ee371909bcf3201c7

Review URL: http://codereview.chromium.org/5720007
2010-12-14 15:13:09 -08:00
Bill Richardson
50a75da5a1 Make curl follow redirections. wget already does.
BUG=chromium-os:10289
TEST=manual

Set up a local URL that redirects, try it out. For example:

  ./recovery.sh http://www/~scottz/recovery2.conf

should redirect to http://www.corp.google.com/~scottz/recovery2.conf

Change-Id: I0a60784f414d69b9e3371b9546666dcdc8978d25

Review URL: http://codereview.chromium.org/5818002
2010-12-13 16:21:25 -08:00
Bill Richardson
841c4115ee Print "model" instead of "HWID" when telling users about available images.
BUG=chromium-os:10207
TEST=manual

Run the recovery script. It should say something like this (note "model",
not "HWID"):

  There is 1 recovery image to choose from:

  0 - <quit>

  1 - Chrome Notebook
        channel:  beta-channel
        model:    IEC MARIO FISH 2330
        model:    IEC MARIO PONY 6101

  Please select a recovery image to download:

Change-Id: I40cc73974b9e673bae5f69739e1642a6a95d4638

Review URL: http://codereview.chromium.org/5716006
2010-12-13 16:20:13 -08:00
Bill Richardson
51b9b83622 Accept list of kernels to re-sign, instead of assuming only 2 & 4.
Change-Id: Ice7b3a9323f003654d1062f721a21f37856f44d7

BUG=chromium-os:10246
TEST=manual

This should resign kernel partitions 2 & 4, as before:

  make_dev_ssh.sh --save_config foo
  make_dev_ssh.sh --set_config foo

This should only resign kernel 2:

  make_dev_ssh.sh --save_config foo --partition '2'
  make_dev_ssh.sh --set_config foo --partition '4'

This should attempt to resign 2, 4, and 6. It's okay if not all succeed.

  make_dev_ssh.sh --save_config foo --partition '2 4 6'
  make_dev_ssh.sh --set_config foo --partition '2 4 6'

Review URL: http://codereview.chromium.org/5736006
2010-12-11 10:30:57 -08:00
Doug Anderson
bcafe0cb09 Applied Bill's patch to use the "raw" version of a disk if it's there.
Change-Id: I45c2283c9677d35490b5874ede20f8fe4623955d

BUG=chromium-os:10166
TEST=Ran against http://www.corp.google.com/~scottz/recovery.conf

Review URL: http://codereview.chromium.org/5705005
2010-12-10 15:03:35 -08:00
Gaurav Shah
04d9975aa2 Be less verbose while changing the password. Add a script for checking if password already exists.
Change-Id: Ia2b524e0bb2935d7acf220e78aebc65255cd26a2

BUG=chrome-os-partner:1564
TEST=manual

Review URL: http://codereview.chromium.org/5722004
2010-12-10 14:43:53 -08:00
Bill Richardson
1615bbff9a make_dev_ssh.sh should handle image C as well
BUG=chromium-os:10213
TEST=manual

From a shell, run

  cd /tmp
  /usr/share/vboot/bin/make_dev_ssd.sh --save_config foo

You should see messages about kernel A, kernel B, and kernel C. It doesn't
matter what those messages are (well, it does, but testing that is way too
complicated and only useful for dev-mode hacking).

Change-Id: I32aaeae18fb9dd957ab17a452d1ea6d7cd8fe788

Review URL: http://codereview.chromium.org/5698004
2010-12-10 14:24:14 -08:00
Bill Richardson
2902623c5e Mention that case is important when prompting before writing.
Change-Id: I35cb42d4120b734f6332fb671787f1e76e0c6832

BUG=chromium-os:10093
TEST=manual

Run the installer. It should now say

  "You must enter 'YES' (all uppercase) to continue: "
  "If you're sure that's correct, enter 'DoIt' now (case is important): "

Review URL: http://codereview.chromium.org/5612009
2010-12-10 07:52:39 -08:00
Bill Richardson
dd574db57a Updated documentation to describe config file format.
This it what we finally agreed upon.

Change-Id: I9dd859d5932328a2174b76331178a7c61ed01b5d

BUG=chromium-os:781
TEST=none (documenation only)

Review URL: http://codereview.chromium.org/5743001
2010-12-09 13:28:56 -08:00
Bill Richardson
a4a639e5fa Use latest format config file.
Change-Id: I21f15ea3d6c1fedd977eb254fcb767dd5fd2f4a1

BUG=chromium-os:781
TEST=manual, as before

Review URL: http://codereview.chromium.org/5535010
2010-12-09 10:30:02 -08:00
Tom Wai-Hong Tam
b7cfd6f59d Fix PRIu64 definition to llu.
Previous CL http://codereview.chromium.org/5634003 has a typo.
PRIu64 should be "llu" instead of "ll".

BUG=None
TEST=Build successfully and run with u-boot and verify that outputs with PRI

Change-Id: I960c422ed0446463d5fed5ac4a12f7728ddbb53b

Review URL: http://codereview.chromium.org/5687001
2010-12-09 14:00:01 +08:00
Bill Richardson
37589d4452 A few last-minute tweaks.
Change-Id: I26f20e9f50a1e4e9607529b112ec4b44b728f289

BUG=chromium-os:781
TEST=as before

TBR=scottz
2010-12-07 09:55:48 -08:00
Bill Richardson
e89970b158 Change-Id: I7d3a6d7d8b6976bcd6dda4fa1737c8d697e7937d
BUG=chromium-os:781
TEST=manual, as before

Should work on Macs now, too.
2010-12-06 20:36:47 -08:00
Che-Liang Chiou
8a2d9c7c9e Fix PRIu64 in biosincludes.h
Check /usr/include/inttypes.h; PRIu64 is defined as "llu" or "lu" without leading "%" character.

Removing leading "%" character for compatibility.

BUG=None
TEST=Build successfully and run with u-boot and verify that outputs with PRIu64 are correct.

Review URL: http://codereview.chromium.org/5634003

Change-Id: Id5c3c5307b1c98625eb212dd11daa7a3833a9c18
2010-12-07 10:33:02 +08:00
Bill Richardson
00a849e16e Use tr instead of sed to unDOSify the config file, so it works on Macs.
Change-Id: Ib41cdd22d542004bd776828a43ae687942bc5ccc

BUG=chromium-os:781
TEST=manual, as before.

Review URL: http://codereview.chromium.org/5516010
2010-12-06 13:56:12 -08:00
Bill Richardson
d5b3d9dacc Allow specifying an alternate config file URL on the commandline.
Change-Id: I1b73674c769027cb557b37d3533534f261521106

BUG=chromium-os:781
TEST=manual

Try running recovery.sh with no args. It should try to download the config
file from a default location (which may not actually exist). Then try
running recovery.sh with a URL as a command-line argument. It should fetch
the config file from that location instead.

Review URL: http://codereview.chromium.org/5529006
2010-12-06 12:51:18 -08:00
Bill Richardson
82d206fb89 Refactor FETCH and CHECK into functions for easier maintenance.
Change-Id: Ic5b413e18f04a208a8e313be151ffc0da8db207b

BUG=chromium-os:781
TEST=manual, same as before.
TBR=eminer@chromium.org

Ed's given me a preliminary LGTM, and people are waiting.
2010-12-06 12:27:05 -08:00
Bill Richardson
99dc586b24 Initial creation of the end-user recovery tool.
This is work in progress. I'm committing what I've got as a starting point
for futher discussion, since we're just collaborating via email at the
moment, which is painful.

Change-Id: Iff21c008b3916d9612c021e5ee5c67258357d516

BUG=chromium-os:781
TEST=manual

Download user_tools/linux/recovery.sh to a linux machine and run it.

It should walk you through the process of creating a USB recovery key.

Review URL: http://codereview.chromium.org/5562003
2010-12-03 18:14:02 -08:00
Randall Spangler
38ab919c08 Add --save_config and --set_config options to make_dev_ssd.sh
Change-Id: I691e6e62f5d5d9b6671fd05f172829b84d503b77

BUG=9934
TEST=manual

1. From a root shell, on a device signed with developer keys:
  make_dev_ssd.sh --save_config=foo

This should create a foo.2 file with a kernel command line.  It'll be
similar to the one in /proc/cmdline.  It may create a foo.4 file, if
kernel B is also valid.

2. Modify the command line in foo.2 (and foo.4, if it exists).
Suggest adding "blah2" to foo.2, and "blah4" to foo.4 if it
exists.

3. From a root shell:
  make_dev_ssd.sh --set_config=foo

4. Reboot.

5. Check the kernel command line.
  cat /proc/cmdline

If you booted from kernel A, you should see "blah2" in the command
line.  If B, you should see "blah4".

Review URL: http://codereview.chromium.org/5567003
2010-12-03 09:26:22 -08:00
Gaurav Shah
527612e356 Fix return code on verify (should be 0, not 1 on no errors)
BUG=chromium-os:9578
TEST=manually tested before and after the change (echo $? after running verify on an image)

Change-Id: I7d7e36b63482ef3a447cf07b09abdc6fb37b22c1

Review URL: http://codereview.chromium.org/5273010
2010-11-29 17:54:49 -08:00
Che-Liang Chiou
0a0e8d0bb2 Add firmware build mode to Makefiles
This CL also includes a biosincludes.h for ARM platform.

The changes to ebuilds are in a separated CL:5352002.

BUG=None
TEST=Run 'make' and 'make FIRMWARE_ARCH=arm' successfully

Review URL: http://codereview.chromium.org/5301004

Change-Id: I76738972a8215e346910a76a664a91f6f6927747
2010-11-30 09:30:45 +08:00
Bill Richardson
3430b32667 Add 'prioritize' command to cgpt tool.
This lets us reorder the priority of all the kernel partitions with a single
command, instead of a bunch of complicated and error-prone shell script
logic.

Change-Id: I21d39763ec5a748488d5319a987bcfe7c34ce4d0

BUG=chromium-os:9167
TEST=manual

In the chroot, do this:

cd ~/trunk/src/platform/vboot_reference
make
make runtests
make clean

Everything should pass.

Review URL: http://codereview.chromium.org/5352005
2010-11-29 14:24:51 -08:00