Merge changes from topic "vendor_dlkm"

* changes:
  load sysprops from vendor_dlkm.
  fastboot: Add vendor_dlkm
  rootdir: add vendor_dlkm symlinks
This commit is contained in:
Yifan Hong 2020-07-14 19:15:12 +00:00 committed by Gerrit Code Review
commit 7ca7680ec5
4 changed files with 19 additions and 2 deletions

View file

@ -109,7 +109,7 @@ _fastboot_cmd_flash() {
cur="${COMP_WORDS[COMP_CWORD]}" cur="${COMP_WORDS[COMP_CWORD]}"
if [[ $i -eq $COMP_CWORD ]]; then if [[ $i -eq $COMP_CWORD ]]; then
partitions="boot bootloader dtbo modem odm oem product radio recovery system vbmeta vendor" partitions="boot bootloader dtbo modem odm oem product radio recovery system vbmeta vendor vendor_dlkm"
COMPREPLY=( $(compgen -W "$partitions" -- $cur) ) COMPREPLY=( $(compgen -W "$partitions" -- $cur) )
else else
_fastboot_util_complete_local_file "${cur}" '!*.img' _fastboot_util_complete_local_file "${cur}" '!*.img'

View file

@ -166,6 +166,10 @@ static Image images[] = {
"vendor_boot.img", "vendor_boot.sig", "vendor_boot.img", "vendor_boot.sig",
"vendor_boot", "vendor_boot",
true, ImageType::BootCritical }, true, ImageType::BootCritical },
{ "vendor_dlkm",
"vendor_dlkm.img", "vendor_dlkm.sig",
"vendor_dlkm",
true, ImageType::Normal },
{ nullptr, "vendor_other.img", "vendor.sig", "vendor", true, ImageType::Normal }, { nullptr, "vendor_other.img", "vendor.sig", "vendor", true, ImageType::Normal },
// clang-format on // clang-format on
}; };

View file

@ -632,9 +632,10 @@ static void LoadProperties(char* data, const char* filter, const char* filename,
char *key, *value, *eol, *sol, *tmp, *fn; char *key, *value, *eol, *sol, *tmp, *fn;
size_t flen = 0; size_t flen = 0;
static constexpr const char* const kVendorPathPrefixes[2] = { static constexpr const char* const kVendorPathPrefixes[3] = {
"/vendor", "/vendor",
"/odm", "/odm",
"/vendor_dlkm",
}; };
const char* context = kInitContext; const char* context = kInitContext;
@ -939,6 +940,7 @@ void PropertyLoadBootDefaults() {
load_properties_from_file("/vendor/default.prop", nullptr, &properties); load_properties_from_file("/vendor/default.prop", nullptr, &properties);
// } // }
load_properties_from_file("/vendor/build.prop", nullptr, &properties); load_properties_from_file("/vendor/build.prop", nullptr, &properties);
load_properties_from_file("/vendor_dlkm/etc/build.prop", nullptr, &properties);
load_properties_from_partition("odm", /* support_legacy_path_until */ 28); load_properties_from_partition("odm", /* support_legacy_path_until */ 28);
load_properties_from_partition("product", /* support_legacy_path_until */ 30); load_properties_from_partition("product", /* support_legacy_path_until */ 30);

View file

@ -120,6 +120,17 @@ LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/overlay $(TARGET_ROOT_OUT)/odm/ov
LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/priv-app $(TARGET_ROOT_OUT)/odm/priv-app LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/priv-app $(TARGET_ROOT_OUT)/odm/priv-app
LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/usr $(TARGET_ROOT_OUT)/odm/usr LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/usr $(TARGET_ROOT_OUT)/odm/usr
# For /vendor_dlkm partition.
LOCAL_POST_INSTALL_CMD += ; mkdir -p $(TARGET_ROOT_OUT)/vendor_dlkm
# For Treble Generic System Image (GSI), system-as-root GSI needs to work on
# both devices with and without /vendor_dlkm partition. Those symlinks are for
# devices without /vendor_dlkm partition. For devices with /vendor_dlkm
# partition, mount vendor_dlkm.img under /vendor_dlkm will hide those symlinks.
# Note that /vendor_dlkm/lib is omitted because vendor DLKMs should be accessed
# via /vendor/lib/modules directly.
LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/vendor_dlkm/etc $(TARGET_ROOT_OUT)/vendor_dlkm/etc
ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE
LOCAL_POST_INSTALL_CMD += ; mkdir -p $(TARGET_ROOT_OUT)/cache LOCAL_POST_INSTALL_CMD += ; mkdir -p $(TARGET_ROOT_OUT)/cache
else else