summaryrefslogtreecommitdiff
path: root/doc/README.chromium
diff options
context:
space:
mode:
Diffstat (limited to 'doc/README.chromium')
-rw-r--r--doc/README.chromium41
1 files changed, 38 insertions, 3 deletions
diff --git a/doc/README.chromium b/doc/README.chromium
index 8f67da6c72..75f2f24042 100644
--- a/doc/README.chromium
+++ b/doc/README.chromium
@@ -23,6 +23,13 @@ available:
from U-Boot in 2013) and coreboot. See below for more information on
this.
+ - Running U-Boot from coreboot. This allows U-Boot to run on more devices
+ since many of them only support coreboot as the bootloader and have
+ no bare-metal support in U-Boot. For this, use the 'coreboot' target.
+
+ - Running U-Boot and booting into a Chrome OS image, but without verified
+ boot. This can be useful for testing.
+
U-Boot with Chromium OS verified boot
-------------------------------------
@@ -168,14 +175,42 @@ existed in U-Boot were not brought over to coreboot or depthcharge.
The U-Boot tests ('make check') do operate, but at present there are no
Chromium OS tests available. These will hopefully come together over time. Of
course the above sandbox feature provides a sort of functional test and can
-detecte problems that affect the flow or particular vboot features.
+detect problems that affect the flow or particular vboot features.
+
+
+U-Boot without Chromium OS verified boot
+----------------------------------------
+
+The following script can be used to boot a Chrome OS image on coral:
+
+ # Read the image header and obtain the address of the kernel
+ # The offset 4f0 is defined by verified boot and may change for other
+ # Chromebooks
+ read mmc 2:2 100000 0 80; setexpr loader *001004f0;
+
+ # Get the kernel size and calculate the number of blocks (0x200 bytes each)
+ setexpr size *00100518; setexpr blocks $size / 200;
+
+ # Read the full kernel and calculate the address of the setup block
+ read mmc 2:2 100000 80 $blocks; setexpr setup $loader - 1000;
+
+ # Locate the command line
+ setexpr cmdline $loader - 2000;
+
+ # Start the zboot process with the loaded kernel, setup block and cmdline
+ zboot start 100000 0 0 0 $setup $cmdline;
+
+ # Load the kernel, fix up the 'setup' block, dump information
+ zboot load; zboot setup; zboot dump
+
+ # Boot into Chrome OS
+ zboot go
TO DO
-----
-- Support for booting from coreboot (patches expected March 2019)
-- Support for booting from an ARM board, e.g. bob
+Get the full ACPI tables working with Coral
Simon Glass