Support signing kernel in update_kernel script.

This CL is separated from http://gerrit.chromium.org/gerrit/#change,1104 which
is depends on the UUID replacement. In order to make update_kernel not break on
officail ChromeOS firmware, this CL just signs the kernel and use the original
cmdline approach, i.e. /dev/${devname}${rootpart}.

TEST=./update_kernel --remote IP
BUG=none

Change-Id: I6a194da0ebb0b3f5a442b62ffb76186909eb4321
Reviewed-on: http://gerrit.chromium.org/gerrit/1538
Reviewed-by: Che-Liang Chiou <clchiou@chromium.org>
Tested-by: Tom Wai-Hong Tam <waihong@chromium.org>
This commit is contained in:
Tom Wai-Hong Tam 2011-05-25 17:00:15 +08:00
parent 7052ae1732
commit 6b50a07f59

View File

@ -84,20 +84,23 @@ function learn_partition_and_ro() {
} }
function make_kernelimage() { function make_kernelimage() {
local bootloader_path
local kernel_image
if [[ "${FLAGS_arch}" == "arm" ]]; then if [[ "${FLAGS_arch}" == "arm" ]]; then
./build_kernel_image.sh --arch=arm \ bootloader_path="../build/images/${FLAGS_board}/latest/kernel.scr.uimg"
--root='/dev/${devname}${rootpart}' \ kernel_image="/build/${FLAGS_board}/boot/vmlinux.uimg"
--vmlinuz=/build/${FLAGS_board}/boot/vmlinux.uimg --to new_kern.bin
else else
bootloader_path="/lib64/bootstub/bootstub.efi"
kernel_image="/build/${FLAGS_board}/boot/vmlinuz"
fi
vbutil_kernel --pack new_kern.bin \ vbutil_kernel --pack new_kern.bin \
--keyblock /usr/share/vboot/devkeys/kernel.keyblock \ --keyblock /usr/share/vboot/devkeys/kernel.keyblock \
--signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \ --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \
--version 1 \ --version 1 \
--config ../build/images/${FLAGS_board}/latest/config.txt \ --config ../build/images/${FLAGS_board}/latest/config.txt \
--bootloader /lib64/bootstub/bootstub.efi \ --bootloader "${bootloader_path}" \
--vmlinuz /build/${FLAGS_board}/boot/vmlinuz --vmlinuz "${kernel_image}" \
fi --arch "${FLAGS_arch}"
} }
function copy_kernelimage() { function copy_kernelimage() {