Handle "hardware" bootconfig parameter as "androidboot.hardware"

The parameter "androidboot.hardware" has been removed from bootconfig
and replaced by "hardware" parameter.

Test: launch_cvd with 4.19 and 5.10 kernels
Test: atest CtsFsMgrTestCases
Bug: 173815685
Change-Id: I627426ae1bd0a165b70b8f2584ec184abfb4236f
This commit is contained in:
Devin Moore 2021-03-05 15:53:13 -08:00
parent 9865e47e1e
commit 0a799bdfd6
3 changed files with 12 additions and 2 deletions

View File

@ -91,6 +91,12 @@ bool fs_mgr_get_boot_config_from_bootconfig(const std::string& bootconfig,
if (key == bootconfig_key) {
*out_val = value;
return true;
} else if (android_key == "hardware" && android_key == key) {
// bootconfig doesn't allow subkeys and values to coexist, so
// "androidboot.hardware" cannot be used. It is replaced in
// bootconfig with "hardware"
*out_val = value;
return true;
}
}

View File

@ -127,7 +127,7 @@ const std::string bootconfig =
"androidboot.serialno = \"BLAHBLAHBLAH\"\n"
"androidboot.slot_suffix = \"_a\"\n"
"androidboot.hardware.platform = \"sdw813\"\n"
"androidboot.hardware = \"foo\"\n"
"hardware = \"foo\"\n"
"androidboot.revision = \"EVT1.0\"\n"
"androidboot.bootloader = \"burp-0.1-7521\"\n"
"androidboot.hardware.sku = \"mary\"\n"
@ -159,7 +159,7 @@ const std::vector<std::pair<std::string, std::string>> bootconfig_result_space =
{"androidboot.serialno", "BLAHBLAHBLAH"},
{"androidboot.slot_suffix", "_a"},
{"androidboot.hardware.platform", "sdw813"},
{"androidboot.hardware", "foo"},
{"hardware", "foo"},
{"androidboot.revision", "EVT1.0"},
{"androidboot.bootloader", "burp-0.1-7521"},
{"androidboot.hardware.sku", "mary"},

View File

@ -1184,6 +1184,10 @@ static void ProcessBootconfig() {
ImportBootconfig([&](const std::string& key, const std::string& value) {
if (StartsWith(key, "androidboot.")) {
InitPropertySet("ro.boot." + key.substr(12), value);
} else if (key == "hardware") {
// "hardware" in bootconfig replaces "androidboot.hardware" kernel
// cmdline parameter
InitPropertySet("ro.boot." + key, value);
}
});
}