aml_cbr_341610000 (11387106,com.google.android.cellbroadcast)
Snap for 10447354 from 3c5896d68f8d264272e01af4c3c82a9ffaa64864 to mainline-cellbroadcast-release

Change-Id: I6ddb93f79b94bb51847b268a14b45f7f0f3b57e7
tree: 9eba7ed9de4a3d6dd474733722cf66d55ad5a6e7
  1. bluetooth/
  2. dummy_arm/
  3. dummy_arm64/
  4. dummy_x86/
  5. dummy_x86_64/
  6. gki419_arm64/
  7. gki_arm64/
  8. gki_x86_64/
  9. mgsi/
  10. overlays/
  11. Android.bp
  12. AndroidProducts.mk
  13. BoardConfigGkiCommon.mk
  14. gki419_arm64.mk
  15. gki_arm64.mk
  16. gki_common.mk
  17. gki_x86_64.mk
  18. gsi_arm.mk
  19. gsi_arm64.mk
  20. gsi_product.mk
  21. gsi_system_ext.mk
  22. gsi_x86.mk
  23. gsi_x86_64.mk
  24. METADATA
  25. OWNERS
  26. README.md
README.md

GSI

This document introduces special GSI settings for facilitating xTS-on-GSI with a single image.

Support system_dlkm partition

[BoardConfigGsiCommon.mk]

BOARD_USES_SYSTEM_DLKMIMAGE := true
BOARD_SYSTEM_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
TARGET_COPY_OUT_SYSTEM_DLKM := system_dlkm

[gsi_release.mk]

PRODUCT_BUILD_SYSTEM_DLKM_IMAGE := false

Starting from Android 13, all devices must include a system_dlkm partition. GSI enables system_dlkm to support the devices with system_dlkm partition, and be compatible with old devices without a system_dlkm partition.

With these configurations, /system/system_dlkm would not be created. Instead, a /system/lib/modules -> /system_dlkm/lib/modules symlink is created.

For device without system_dlkm partition, the symlink would be dangling. The dangling symlink shouldn‘t be followed anyway because the device doesn’t use system_dlkm.

For device with system_dlkm, they can load modules via that path normally like when they are using their original system image.

SystemUI overlays

Some devices access the private android framework resource by @*android: while overlaying their SystemUI setting status_bar_header_height_keyguard. However, referencing private framework resource IDs from RRO packages in the vendor partition crashes on these devices when GSI is used. This is because private framework resource don't have a stable ID, and these vendor RRO packages would be referencing to dangling resource references after GSI is used (b/245806899).

In order to prevent SystemUI crash, GSI adds a runtime resource overlay in the system_ext partition, which have higher overlay precedence than RROs on vendor partition, so the problematic vendor RROs would be overridden.

Lifetime of this package:

  • Starts at: Android 14.
  • Deprecation plan: TBD, depends on b/254581880.