Commit Graph

16 Commits

Author SHA1 Message Date
Allen Martin
5b2f49deeb Support booting from non zero MMC device numbers
On ARM platform read kernel from device passed in from u-boot
instead of hardcoding it to 0

BUG=none
TEST=emerged on seaboard, booted from SD card and emmc

Change-Id: Ia4506ed9f85d94eb37a9ac57430e1490d106c403

Review URL: http://codereview.chromium.org/5612008
Patch from Allen Martin <amartin@nvidia.com>.
2010-12-09 16:35:39 -08:00
Nick Sanders
ada8a1fdcc Notes:
This just matches H2C and H2O

Changes are:
-earlyprintk: serial isn't supported, so remove
-console=ttyS0: allow /dev/console to function, after serial console support is removed.

+quiet: sets loglevel=2, quiets early boot
+console=tty2: this will output console onto vt2.
+loglevel=1: this reduces output to vt2 past what quiet specifies.

BUG=chromium-os:8084
TEST="boot factory install shim, regular image. Note /dev/console works and outputs to tty2"

Change-Id: I2d77bf1de5870c7e610859f063d5a587acd56051

Review URL: http://codereview.chromium.org/4167001
2010-10-26 02:56:51 -07:00
Luigi Semenzato
195aebeaea Add tpm_tis module configuration options in preparation for linking with kernel
We need to set these options in order to link the TPM driver in the kernel before we fix the PNP table in the firmware.  This is the least disruptive change that makes the TPM available earlier in the boot sequence.

Change-Id: I729cd7c153507200e177895bae01951e97b70968

BUG=none
TEST=rebuilt kernel, reinstalled, booted, verified that tcsd still runs

Review URL: http://codereview.chromium.org/3969001
2010-10-20 17:35:00 -07:00
Will Drewry
d6435d4746 kernel cmdline: add dm_verity.dev_wait=1
dm_verity will wait for a device to be ready. This is needed in the factory installer so that
dmsetup doesn't fail early before the usb device is visible.

TEST=built images and booted them (x86-generic & factory installer)
            Prior to commit, need to ensure dev_wait doesn't break unverified boot behavior
BUG=chromium-os:7451

Change-Id: I5b838b94e6a17dd0778331121311cdfe180991ce

Review URL: http://codereview.chromium.org/3936001
2010-10-20 15:37:46 -05:00
Kenneth Waters
9bc78b3acb make_image: Fake vmlinuz_hd.vblock on ARM.
- This unbreaks the devserver's update server for ARM.
- This also unforks some of build_image.

BUG=None
TEST=Installed to tegra2_seaboard from USB without --skip_vblock,
     updated tegra2_seaboard.

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

Change-Id: I6e66344de51609393407934f78aa20f49974efef
2010-09-22 13:54:44 -07:00
Kenneth Waters
ed54d93e2c build_image: Add verity support for ARM.
- Build a "kernel image" which contains a uboot script and a uboot kernel
  image.
- Fix some sd* assumptions.
- Remove cruft that has never done anything usefull from update_bootloaders

BUG=none
TEST=Built, booted, and updated on tegra2_dev-board

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

Change-Id: I00ecf57faa5fe64c8e33dd4c042f1dbed806c10a
2010-09-21 10:29:54 -07:00
Tan Gao
843b70acf4 Issue 5183: Create a developer shim for release builds
Change-Id: I14cd9dc365093c0450210d7853ad5f67ffa0ddd0

BUG=chromium-os:5183
TEST=1) manually built a dev install shim and verified it's only bootable when dev switch is ON

Review URL: http://codereview.chromium.org/3153001
2010-08-17 09:41:48 -07:00
Bill Richardson
8bfa4685df Add "kern_guid=%U" to the secure boot kernel command-line template.
With the newest Chrome OS BIOS and bootstub, this will be expanded to the
booted kernel partition's UniqueGuid, so that the kernel device can be
determined with certainty, since the BIOS and kernel may enumerate drives
differently.

You can identify the booted kernel partition at runtime with something like
this:

  sudo cgpt find -1 -u \
    $(cat /proc/cmdline | sed 's/.*kern_guid=\([0-9a-f-]\+\).*/\1/')

Review URL: http://codereview.chromium.org/3035020
2010-07-23 17:24:15 -07:00
Will Drewry
78992a33f4 build_image, build_kernel_image, update_bootloaders: fix up rootfs_verification
This change adds
- --rootfs_hash_pad to specify the MBs reserved for the pad
- the implementation of the above flag
- check if total fs size + pad size exceeds the partition size
- hash appending in make_image_bootable()

Fixes:
- a style for ROOT_FS_HASH usage
- bad mount|grep
- bad bash subst for root devices in all boot paths
- fixed a typo in the update_bootloaders table creation
- disables verified usb for now

Adding the padding argument ensures that the generated hash tree for the root filesystem is appended to the image.  Assuming the rootfs is _never_ mounted read-write
again, that hash tree will be valid and vboot will be able to proceed.

BUG=chromium-os:2693
TEST=manual build_image

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

Change-Id: I67d9b0f91cacdefa309c0cc2dd7fed1d2eddd7a7
2010-07-21 14:02:20 -05:00
Will Drewry
1670d481a1 build_image, build_kernel_image, legacy_bootloaders: Rename vboot flags
The use_vboot and vboot_ flags were confusing from a functionality perspective
since verified boot as a feature encompasses firmware and kernel functionality.
The firmware bits are always enabled, but use_vboot enabled the image-integrity
portion of vboot.  It is not called
  --enable_rootfs_verification
and all options for the kernel functionality is under --verity_* given that
verity/dm-verity is the current working name for the module and userspace tool.

TEST=ran x86-generic build_image & tegra2-dev-board build_image and checked the resulting boot.config files (with and without --enable_rootfs_verification).
BUG=chromium-os:2693

Review URL: http://codereview.chromium.org/2917008
2010-07-09 13:08:38 -07:00
Louis Yung-Chieh Lo
3602040b74 Use the new developer keys to sign things. (submit for Bill)
The original CL is http://codereview.chromium.org/2868044/show

Review URL: http://codereview.chromium.org/2818045
2010-07-05 13:23:34 +08:00
Will Drewry
821d07cb42 build_image: fix hash perms & arm image path
This should fix the bad parsing and the failed archiving.
EMphasis on should. I'll keep monitoring.

TEST=in progress
BUG=none

Review URL: http://codereview.chromium.org/2812044
2010-07-03 17:14:58 -07:00
Will Drewry
bcbf1c4484 [PATCH 2/5] build_kernel_image: add verified boot support
Adds rootfs image hashing to the build.  If it is hashed
even if the default boot device is not dm-0, the baseline
rootfs integrity information will be included (though
device setup will fail in the logs during boot).

TEST=manually ran without enabling vboot support.
BUG=chromium-os:327

Review URL: http://codereview.chromium.org/2808043
2010-07-03 10:23:30 -05:00
Bill Richardson
2ace49e0a4 Generate and use .vbprivk files for signing now.
Review URL: http://codereview.chromium.org/2817047
2010-07-01 10:23:27 -07:00
Randall Spangler
d51f39f681 TBR: wfrichar
Change flags for key block to 15 so it works in all modes, since I'm
about to fix the vboot bug which prevented flag checking from working.

BUG=none
TEST=none
2010-06-29 18:03:30 -07:00
Will Drewry
69563b7349 build_image: pull out kernel partition creation
Makes kernel partition creation standalone.  This is motivated
both by the ability to build test kernel partitions easily as well
the need to create all kernel command line configuration after the
rootfs has been completely created.

Instead of a massive overhaul, I'll do this refactor in pieces.

TEST=manually rebuilt the image
BUG=chromium-os:327

Review URL: http://codereview.chromium.org/2825021
2010-06-24 16:12:58 -05:00