Support fastboot variable 'variant'.
Bug: 79480454
Bug: 78793464
Test: fastboot getvar variant
Change-Id: Iefef82c147d8405318c793ad0a73f00674bbb63d
Merged-In: Iefef82c147d8405318c793ad0a73f00674bbb63d
(cherry picked from commit 4785287a00
)
This commit is contained in:
parent
e4931c5bd4
commit
4af80901a6
4 changed files with 24 additions and 0 deletions
|
@ -60,3 +60,4 @@
|
|||
#define FB_VAR_IS_LOGICAL "is-logical"
|
||||
#define FB_VAR_IS_USERSPACE "is-userspace"
|
||||
#define FB_VAR_HW_REVISION "hw-revision"
|
||||
#define FB_VAR_VARIANT "variant"
|
||||
|
|
|
@ -82,6 +82,7 @@ bool GetVarHandler(FastbootDevice* device, const std::vector<std::string>& args)
|
|||
{FB_VAR_VERSION_BASEBAND, {GetBasebandVersion, nullptr}},
|
||||
{FB_VAR_PRODUCT, {GetProduct, nullptr}},
|
||||
{FB_VAR_SERIALNO, {GetSerial, nullptr}},
|
||||
{FB_VAR_VARIANT, {GetVariant, nullptr}},
|
||||
{FB_VAR_SECURE, {GetSecure, nullptr}},
|
||||
{FB_VAR_UNLOCKED, {GetUnlocked, nullptr}},
|
||||
{FB_VAR_MAX_DOWNLOAD_SIZE, {GetMaxDownloadSize, nullptr}},
|
||||
|
|
|
@ -74,6 +74,27 @@ bool GetSecure(FastbootDevice* /* device */, const std::vector<std::string>& /*
|
|||
return true;
|
||||
}
|
||||
|
||||
bool GetVariant(FastbootDevice* device, const std::vector<std::string>& /* args */,
|
||||
std::string* message) {
|
||||
auto fastboot_hal = device->fastboot_hal();
|
||||
if (!fastboot_hal) {
|
||||
*message = "Fastboot HAL not found";
|
||||
return false;
|
||||
}
|
||||
|
||||
Result ret;
|
||||
auto ret_val = fastboot_hal->getVariant([&](std::string device_variant, Result result) {
|
||||
*message = device_variant;
|
||||
ret = result;
|
||||
});
|
||||
if (!ret_val.isOk() || ret.status != Status::SUCCESS) {
|
||||
*message = "Unable to get device variant";
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GetCurrentSlot(FastbootDevice* device, const std::vector<std::string>& /* args */,
|
||||
std::string* message) {
|
||||
std::string suffix = device->GetCurrentSlot();
|
||||
|
|
|
@ -52,6 +52,7 @@ bool GetIsUserspace(FastbootDevice* device, const std::vector<std::string>& args
|
|||
std::string* message);
|
||||
bool GetHardwareRevision(FastbootDevice* device, const std::vector<std::string>& args,
|
||||
std::string* message);
|
||||
bool GetVariant(FastbootDevice* device, const std::vector<std::string>& args, std::string* message);
|
||||
|
||||
// Helpers for getvar all.
|
||||
std::vector<std::vector<std::string>> GetAllPartitionArgsWithSlot(FastbootDevice* device);
|
||||
|
|
Loading…
Reference in a new issue