From 3124d260239d437cfa0bece454162149a8a8756f Mon Sep 17 00:00:00 2001 From: oxmc <67136658+oxmc@users.noreply.github.com> Date: Wed, 15 Jul 2026 17:31:04 -0700 Subject: [PATCH] Fix: reserve vendor partition size instead of always making it 2GB --- BoardConfig.mk | 16 ++++++++++++++-- configs/provisioner/vendor.cfg | 2 +- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/BoardConfig.mk b/BoardConfig.mk index 5dd737e..2dc214e 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -40,8 +40,6 @@ TARGET_NO_RECOVERY := false BOARD_USES_FULL_RECOVERY_IMAGE := true BOARD_RECOVERYIMAGE_PARTITION_SIZE := 134217728 # 128M TARGET_RECOVERY_FSTAB := device/pawlet/rpi4/recovery/recovery.rpi4.fstab -# NB: unquoted — literal quotes leak into soong.*.extra.variables and break -# its JSON ("Error parsing JSON ... Expecting ',' delimiter") TARGET_RECOVERY_PIXEL_FORMAT := RGB_565 # Phase 2 — TWRP GUI: re-point once librecovery_ui_pawlet_twrp links # (libaosprecovery / TWRP's forked install/*.cpp still unported, see @@ -81,6 +79,13 @@ BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE := 104857600 # 100MB BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4 TARGET_COPY_OUT_SYSTEM_EXT := system_ext BOARD_VENDORIMAGE_PARTITION_SIZE := 2147483648 # 2048M (2GB) +# Size vendor.img to content + margin instead of padding it to the full 2GB. +# With BOARD_USES_FULL_RECOVERY_IMAGE=true, build/core/Makefile adds the whole +# recovery.img (128MB) to the vendor size assertion (RECOVERY_FROM_BOOT_PATCH). +# A non-reserved ext4 vendor image fills the entire partition, so vendor(2GB) + +# recovery(128MB) always overflows. Reserving (as system_ext does) keeps the +# image small; recovery still flashes whole to its own partition 3. +BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 104857600 # 100MB BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 TARGET_COPY_OUT_VENDOR := vendor BOARD_USES_METADATA_PARTITION := true @@ -90,6 +95,13 @@ BOARD_USERDATAIMAGE_PARTITION_SIZE := 134217728 # 128M TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true TARGET_USERIMAGES_USE_EXT4 := true +# if BOARD_STORAGE_SUPPORTS_DISCARD := true +# is set in BoardConfig.mk (or a device variant makefile), TRIM will be +# enabled on the metadata partition. Only do this if your storage device +# actually supports discard (SD cards, SSDs) — USB flash drives typically +# don't, and requesting discard on them stalls jbd2. +BOARD_STORAGE_SUPPORTS_DISCARD := true + # Platform TARGET_BOARD_PLATFORM := bcm2711 TARGET_BOOTLOADER_BOARD_NAME := bcm2711 diff --git a/configs/provisioner/vendor.cfg b/configs/provisioner/vendor.cfg index 2820e7e..835d35b 100644 --- a/configs/provisioner/vendor.cfg +++ b/configs/provisioner/vendor.cfg @@ -5,4 +5,4 @@ enable_setupwizard=true vendor_id=pawlet_rpi4 network_timeout=30000 config_apk_package=app.pawlet.config -config_apk_url=https://oxmc.me/aosp_apis/data/default-config.apk +config_apk_url=https://oxmc.me/apis/aosp/data/default-config.apk