sdm710-common: Flash dummy super image if needed
* Needed because stock does not use dynamic partitions so there's no existing metadata that could be used Change-Id: Icbc828389465f3d4681ca8e4c3adec782540752e
This commit is contained in:
parent
05959f652a
commit
59eb184cd4
4 changed files with 54 additions and 5 deletions
19
AndroidBoard.mk
Normal file
19
AndroidBoard.mk
Normal file
|
@ -0,0 +1,19 @@
|
|||
#
|
||||
# Copyright (C) 2021 The LineageOS Project
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
LPFLASH := $(HOST_OUT_EXECUTABLES)/lpflash$(HOST_EXECUTABLE_SUFFIX)
|
||||
INSTALLED_SUPERIMAGE_DUMMY_TARGET := $(PRODUCT_OUT)/super_dummy.img
|
||||
|
||||
$(INSTALLED_SUPERIMAGE_DUMMY_TARGET): $(PRODUCT_OUT)/super_empty.img $(LPFLASH)
|
||||
$(call pretty,"Target dummy super image: $@")
|
||||
$(hide) touch $@
|
||||
$(hide) echo $(CURDIR)
|
||||
$(hide) $(LPFLASH) $(CURDIR)/$@ $(CURDIR)/$(PRODUCT_OUT)/super_empty.img
|
||||
|
||||
.PHONY: super_dummyimage
|
||||
super_dummyimage: $(INSTALLED_SUPERIMAGE_DUMMY_TARGET)
|
||||
|
||||
INSTALLED_RADIOIMAGE_TARGET += $(INSTALLED_SUPERIMAGE_DUMMY_TARGET)
|
20
configs/flash_super_dummy.sh
Normal file
20
configs/flash_super_dummy.sh
Normal file
|
@ -0,0 +1,20 @@
|
|||
#!/system/bin/sh
|
||||
#
|
||||
# Copyright (C) 2021 The LineageOS Project
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
SUPER="/dev/block/by-name/system"
|
||||
|
||||
mkdir /tmp/super-mnt
|
||||
|
||||
mount $SUPER /tmp/super-mnt 2>/dev/null
|
||||
|
||||
if [ "$?" = "0" ]; then
|
||||
echo "Detected stock /system in super partition, flashing super_dummy.img!"
|
||||
umount /tmp/super-mnt
|
||||
dd if=/tmp/super_dummy.img of=$SUPER
|
||||
fi
|
||||
|
||||
rmdir /tmp/super-mnt
|
|
@ -57,14 +57,21 @@ def OTA_UpdateFirmware(info):
|
|||
info.script.AppendExtra('package_extract_file("install/firmware-update/xbl.elf", "/dev/block/bootdevice/by-name/xblbak");')
|
||||
info.script.AppendExtra('package_extract_file("install/firmware-update/NON-HLOS.bin", "/dev/block/bootdevice/by-name/modem");')
|
||||
|
||||
def AddImage(info, basename, dest):
|
||||
def AddImage(info, dir, basename, dest):
|
||||
name = basename
|
||||
data = info.input_zip.read("IMAGES/" + basename)
|
||||
data = info.input_zip.read(dir + "/" + basename)
|
||||
common.ZipWriteStr(info.output_zip, name, data)
|
||||
info.script.Print("Patching {} image unconditionally...".format(dest.split('/')[-1]))
|
||||
info.script.AppendExtra('package_extract_file("%s", "%s");' % (name, dest))
|
||||
|
||||
def OTA_InstallEnd(info):
|
||||
AddImage(info, "vbmeta.img", "/dev/block/bootdevice/by-name/vbmeta")
|
||||
AddImage(info, "dtbo.img", "/dev/block/bootdevice/by-name/dtbo")
|
||||
def FullOTA_InstallBegin(info):
|
||||
AddImage(info, "RADIO", "super_dummy.img", "/tmp/super_dummy.img");
|
||||
info.script.AppendExtra('package_extract_file("install/bin/flash_super_dummy.sh", "/tmp/flash_super_dummy.sh");')
|
||||
info.script.AppendExtra('set_metadata("/tmp/flash_super_dummy.sh", "uid", 0, "gid", 0, "mode", 0755);')
|
||||
info.script.AppendExtra('run_program("/tmp/flash_super_dummy.sh");')
|
||||
return
|
||||
|
||||
def OTA_InstallEnd(info):
|
||||
AddImage(info, "IMAGES", "vbmeta.img", "/dev/block/bootdevice/by-name/vbmeta")
|
||||
AddImage(info, "IMAGES", "dtbo.img", "/dev/block/bootdevice/by-name/dtbo")
|
||||
return
|
||||
|
|
|
@ -232,6 +232,9 @@ PRODUCT_BUILD_SUPER_PARTITION := false
|
|||
PRODUCT_USE_DYNAMIC_PARTITIONS := true
|
||||
PRODUCT_RETROFIT_DYNAMIC_PARTITIONS := true
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
$(LOCAL_PATH)/configs/flash_super_dummy.sh:install/bin/flash_super_dummy.sh
|
||||
|
||||
# FM
|
||||
PRODUCT_PACKAGES += \
|
||||
FM2 \
|
||||
|
|
Loading…
Reference in a new issue