summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHung-Te Lin <hungte@chromium.org>2019-11-28 17:18:23 +0800
committerCommit Bot <commit-bot@chromium.org>2019-11-29 05:24:18 +0000
commitdc721411f290def227af1c8fa6373a2ac6a157e7 (patch)
tree4429279f82d01f3c149dc8d353982a6055aa20ab
parentadb418310d2e51e2f2a0f22607989fd3f66c4433 (diff)
downloadvboot-dc721411f290def227af1c8fa6373a2ac6a157e7.tar.gz
futility: updater: Remove quirk 'daisy_snow_dual_model'
Daisy snow has set its AUE version to R75 and R76 went stable for a long time, so we can now remove the quirk for it. BUG=None TEST=make clean && make runtests Change-Id: I8a955f1e02221c6562958f584dabdb27ab5d870d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/1940401 Tested-by: Hung-Te Lin <hungte@chromium.org> Auto-Submit: Hung-Te Lin <hungte@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> Reviewed-by: Joel Kitching <kitching@chromium.org> Commit-Queue: Joel Kitching <kitching@chromium.org>
-rw-r--r--futility/updater.c3
-rw-r--r--futility/updater.h1
-rw-r--r--futility/updater_quirks.c87
3 files changed, 0 insertions, 91 deletions
diff --git a/futility/updater.c b/futility/updater.c
index 0ed52234..6a7d8ffa 100644
--- a/futility/updater.c
+++ b/futility/updater.c
@@ -1158,9 +1158,6 @@ enum updater_error_codes update_firmware(struct updater_config *cfg)
if (!image_to->data)
return UPDATE_ERR_NO_IMAGE;
- if (try_apply_quirk(QUIRK_DAISY_SNOW_DUAL_MODEL, cfg))
- return UPDATE_ERR_PLATFORM;
-
STATUS("Target image: %s (RO:%s, RW/A:%s, RW/B:%s).\n",
image_to->file_name, image_to->ro_version,
image_to->rw_version_a, image_to->rw_version_b);
diff --git a/futility/updater.h b/futility/updater.h
index c8f0f844..c83ebfc2 100644
--- a/futility/updater.h
+++ b/futility/updater.h
@@ -40,7 +40,6 @@ enum quirk_types {
QUIRK_MIN_PLATFORM_VERSION,
QUIRK_UNLOCK_ME_FOR_UPDATE,
QUIRK_UNLOCK_WILCO_ME_FOR_UPDATE,
- QUIRK_DAISY_SNOW_DUAL_MODEL,
QUIRK_EVE_SMM_STORE,
QUIRK_ALLOW_EMPTY_WLTAG,
QUIRK_EC_PARTIAL_RECOVERY,
diff --git a/futility/updater_quirks.c b/futility/updater_quirks.c
index ea96a67a..1dfbedda 100644
--- a/futility/updater_quirks.c
+++ b/futility/updater_quirks.c
@@ -45,8 +45,6 @@ static const struct quirks_record quirks_records[] = {
{ .match = "Google_Poppy.", .quirks = "min_platform_version=6" },
{ .match = "Google_Scarlet.", .quirks = "min_platform_version=1" },
- { .match = "Google_Snow.", .quirks = "daisy_snow_dual_model" },
-
/* Legacy white label units. */
{ .match = "Google_Enguarde.", .quirks = "allow_empty_wltag" },
{ .match = "Google_Expresso.", .quirks = "allow_empty_wltag" },
@@ -274,86 +272,6 @@ static int quirk_min_platform_version(struct updater_config *cfg)
}
/*
- * Adjust firmware image according to running platform version.
- * Returns 0 if success, non-zero if error.
- */
-static int quirk_daisy_snow_dual_model(struct updater_config *cfg)
-{
- /*
- * The daisy-snow firmware should be packed as RO, RW_A=x16, RW_B=x8.
- * RO update for x8 and RO EC update for all are no longer supported.
- */
- struct firmware_section a, b;
- int i, is_x8 = 0, is_x16 = 0;
- const char * const x8_versions[] = {
- "DVT",
- "PVT",
- "PVT2",
- "MP",
- };
- const char * const x16_versions[] = {
- "MPx16", /* Rev 4 */
- "MP2", /* Rev 5 */
- };
- char *platform_version = host_shell("mosys platform version");
-
- for (i = 0; i < ARRAY_SIZE(x8_versions) && !is_x8; i++) {
- if (strcmp(x8_versions[i], platform_version) == 0)
- is_x8 = 1;
- }
- for (i = 0; i < ARRAY_SIZE(x16_versions) && !is_x8 && !is_x16; i++) {
- if (strcmp(x16_versions[i], platform_version) == 0)
- is_x16 = 1;
- }
- INFO("Platform version: %s (original value: %s)\n",
- is_x8 ? "x8" : is_x16 ? "x16": "unknown", platform_version);
- free(platform_version);
-
- find_firmware_section(&a, &cfg->image, FMAP_RW_SECTION_A);
- find_firmware_section(&b, &cfg->image, FMAP_RW_SECTION_B);
-
- if (cfg->ec_image.data) {
- ERROR("EC RO update is not supported with this quirk.\n");
- return -1;
- }
- if (!a.data || !b.data || a.size != b.size) {
- ERROR("Invalid firmware image: %s\n", cfg->image.file_name);
- return -1;
- }
- if (memcmp(a.data, b.data, a.size) == 0) {
- ERROR("Input image must have both x8 and x16 firmware.\n");
- return -1;
- }
-
- if (is_x16) {
- memmove(b.data, a.data, a.size);
- free(cfg->image.rw_version_b);
- cfg->image.rw_version_b = strdup(cfg->image.rw_version_a);
- /* chromium:917581 Some x16 come with weird RO. */
- cfg->check_platform = 0;
- } else if (is_x8) {
- memmove(a.data, b.data, b.size);
- free(cfg->image.rw_version_a);
- cfg->image.rw_version_a = strdup(cfg->image.rw_version_b);
- /* Need to use RO from current system. */
- if (!cfg->image_current.data &&
- load_system_firmware(&cfg->image_current, &cfg->tempfiles,
- cfg->verbosity) != 0) {
- ERROR("Cannot get system RO contents\n");
- return -1;
- }
- preserve_firmware_section(&cfg->image_current, &cfg->image,
- FMAP_RO_SECTION);
- free(cfg->image.ro_version);
- cfg->image.ro_version = strdup(cfg->image_current.ro_version);
- } else {
- ERROR("Unknown platform, cannot update.\n");
- return -1;
- }
- return 0;
-}
-
-/*
* Quirk to help preserving SMM store on devices without a dedicated "SMMSTORE"
* FMAP section. These devices will store "smm_store" file in same CBFS where
* the legacy boot loader lives (i.e, FMAP RW_LEGACY).
@@ -488,11 +406,6 @@ void updater_register_quirks(struct updater_config *cfg)
"board-postinst.";
quirks->apply = quirk_unlock_me_for_update;
- quirks = &cfg->quirks[QUIRK_DAISY_SNOW_DUAL_MODEL];
- quirks->name = "daisy_snow_dual_model";
- quirks->help = "b/35525858; needs an image RW A=[model x16], B=x8.";
- quirks->apply = quirk_daisy_snow_dual_model;
-
quirks = &cfg->quirks[QUIRK_EVE_SMM_STORE];
quirks->name = "eve_smm_store";
quirks->help = "b/70682365; preserve UEFI SMM store without "