Randall Spangler a609478d1a 2lib: add VB2_DEBUG_RAW() to print without function name 8 年之前
..
2lib a609478d1a 2lib: add VB2_DEBUG_RAW() to print without function name 8 年之前
bdb 8df7ed1453 expand the BDB acronym in a few key places 8 年之前
include 1a03740bb0 firmware: calling menu ui when using detachables 8 年之前
lib a609478d1a 2lib: add VB2_DEBUG_RAW() to print without function name 8 年之前
lib20 6e3931d1f6 vboot: Add vb2_unpack_key_buffer 8 年之前
lib21 98263a1b17 vboot: Upgrade VerifyFirmwarePreamble() to vboot2.0 8 年之前
linktest e4136dcaa0 vboot: Pass vb2 context and use vboot2 NV routines 8 年之前
stub 3409e60633 firmware: Adding VbExDisplayText function 8 年之前
README 8df7ed1453 expand the BDB acronym in a few key places 8 年之前

README


Here's what's what in the firmware/ directory.

bdb/

Code for managing Boot Descriptor Blocks (BDB).

include/
lib/

These are the original structures and APIs used in the earliest
Chromebooks and continuing through 2014. It never had a version as such to
begin with, but we now refer to this implementation as "vboot1" or
"vboot version 1.0".

linktest/
stub/

These are stubs used to link the vboot1 libraries into host-side test
executables so we can run some tests on the build machine instead of a
Chromebook.

2lib/

In 2014 we began work on a new vboot API. The first step was just a
refactoring and renaming of the verification API. The public functions and
external headers that are exported for use by the Chrome OS firmware (or
anything else that wants to use vboot) live in here. The internal
structures and implementations go elsewhere.

lib20/

This is an early implementation of the public (2lib/) API. It is
binary-compatible with vboot1, so although the interface details are
different, any existing on-device structures or signatures created by the
vboot1 tools can be validated using this implementation.

This was deployed slightly before it was ready. That's not a problem,
thanks to the binary compatibility, but this directory will be abandoned
Real Soon Now, except for the product support branches.

lib21/

This is where the current development of the second-generation vboot API
is taking place. It uses the public (2lib/) API, but will NOT be binary
compatible with vboot1 structs. Because of the early release of the lib20
stuff, we're actually calling this lib21.