Attention is currently required from: Paul Menzel, Paz Zcharya, Subrata Banik.
Gwendal Grignou has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/80738?usp=email )
The change is no longer submittable: All-Comments-Resolved is unsatisfied now.
Change subject: vc/google/chromeos: Implement dynamic ChromeOS boot logo selection ......................................................................
Patch Set 7:
(5 comments)
Patchset:
PS7: Have we consider to always display the regular logo in firmware, and change the splash screen to CBX (when needed) when user space starts?
File src/vendorcode/google/chromeos/tpm_factory_config.c:
https://review.coreboot.org/c/coreboot/+/80738/comment/d8b19982_593d16b0 : PS7, Line 49: * - Bits 3-0 (0x1): Must be 0x1 to signify compliance with Chromebook-Plus Not true: this field contains the "feature_level" that indicate the chromebook plus generation. Today, 0 means unknown (may be soft-branded or not chromebook plus), 1 **and above** means chromebook plus.
See go/cros-tiering-dd.
https://review.coreboot.org/c/coreboot/+/80738/comment/8197000e_8d235ff0 : PS7, Line 74: * requirement. Not true. A soft branded CBX (crota for instance) will not have any bit set in its GSC but be a CBX (soft branded) device (unless is it re-manufactured). See a crota360, soft branded:
``` crossystem hwid CROTA360-QYFB D5B-E6Q-D4D-B5M-W9Q-A5A-A9V
gsctool -ay raw value: 0000000000000000 chassis_x_branded: false hw_x_compliance_version: 00
feature_check --feature_level 1 ```
https://review.coreboot.org/c/coreboot/+/80738/comment/37031340_9e3cd516 : PS7, Line 97: if (!chromeos_device_plus_hw_compliant()) Most/All soft branded CBX device will not get the proper splash screen with this logic.
https://review.coreboot.org/c/coreboot/+/80738/comment/5a4fd79e_0a6bffa8 : PS7, Line 104: return strncmp(vpd_get_feature_device_info(), "CAI", 3) == 0; This is not acceptable for production code. "CAI" is not defined anywhere in the code base. The proper way is to decode the content of the key with `base64decode()`, convert protobuf defined at https://chromium.googlesource.com/chromiumos/platform/feature-management/+/r... and read the `feature_level` field.
Also, after the power wash, the VPD entry is wiped out, so at first boot, the user on soft branded CBX will see the regular `cb_logo.bmp' instead of the expected CBX logo.