mirror of
https://github.com/topjohnwu/Magisk.git
synced 2024-12-22 16:07:39 +00:00
parent
d4d837a562
commit
0499588107
@ -155,6 +155,8 @@ void load_kernel_info(cmdline *cmd) {
|
|||||||
strcpy(cmd->hardware, value);
|
strcpy(cmd->hardware, value);
|
||||||
} else if (key == "androidboot.hardware.platform") {
|
} else if (key == "androidboot.hardware.platform") {
|
||||||
strcpy(cmd->hardware_plat, value);
|
strcpy(cmd->hardware_plat, value);
|
||||||
|
} else if (key == "androidboot.fstab_suffix") {
|
||||||
|
strcpy(cmd->fstab_suffix, value);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -12,6 +12,7 @@ struct cmdline {
|
|||||||
bool force_normal_boot;
|
bool force_normal_boot;
|
||||||
char slot[3];
|
char slot[3];
|
||||||
char dt_dir[64];
|
char dt_dir[64];
|
||||||
|
char fstab_suffix[32];
|
||||||
char hardware[32];
|
char hardware[32];
|
||||||
char hardware_plat[32];
|
char hardware_plat[32];
|
||||||
};
|
};
|
||||||
|
@ -44,7 +44,7 @@ void FirstStageInit::prepare() {
|
|||||||
fstab_file[0] = '\0';
|
fstab_file[0] = '\0';
|
||||||
|
|
||||||
// Find existing fstab file
|
// Find existing fstab file
|
||||||
for (const char *hw : { cmd->hardware, cmd->hardware_plat }) {
|
for (const char *hw : { cmd->fstab_suffix, cmd->hardware, cmd->hardware_plat }) {
|
||||||
if (hw[0] == '\0')
|
if (hw[0] == '\0')
|
||||||
continue;
|
continue;
|
||||||
sprintf(fstab_file, "fstab.%s", hw);
|
sprintf(fstab_file, "fstab.%s", hw);
|
||||||
@ -98,14 +98,17 @@ void FirstStageInit::prepare() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Dump dt fstab to fstab file in rootfs
|
||||||
if (fstab_file[0] == '\0') {
|
if (fstab_file[0] == '\0') {
|
||||||
const char *hw = cmd->hardware[0] ? cmd->hardware :
|
const char *suffix =
|
||||||
(cmd->hardware_plat[0] ? cmd->hardware_plat : nullptr);
|
cmd->fstab_suffix[0] ? cmd->fstab_suffix :
|
||||||
if (hw == nullptr) {
|
(cmd->hardware[0] ? cmd->hardware :
|
||||||
LOGE("Cannot determine hardware name!\n");
|
(cmd->hardware_plat[0] ? cmd->hardware_plat : nullptr));
|
||||||
|
if (suffix == nullptr) {
|
||||||
|
LOGE("Cannot determine fstab suffix!\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sprintf(fstab_file, "fstab.%s", hw);
|
sprintf(fstab_file, "fstab.%s", suffix);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Patch init to force IsDtFstabCompatible() return false
|
// Patch init to force IsDtFstabCompatible() return false
|
||||||
|
Loading…
x
Reference in New Issue
Block a user