Skip to content

Commit

Permalink
osprey: Extract firmwares on post installation
Browse files Browse the repository at this point in the history
Change-Id: Iaee1f560e14f1ad5b8c80ddaf9fe9d90417f882e
  • Loading branch information
Alberto97 committed Sep 8, 2016
1 parent 2c34afa commit 171345c
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 27 deletions.
27 changes: 0 additions & 27 deletions Android.mk
Original file line number Diff line number Diff line change
Expand Up @@ -17,33 +17,6 @@ ifneq ($(filter osprey,$(TARGET_DEVICE)),)

LOCAL_PATH := $(call my-dir)

FIRMWARE_MBA_IMAGES := \
mba.mbn.gz

FIRMWARE_MBA_SYMLINKS := $(addprefix $(TARGET_OUT_ETC)/firmware/,$(notdir $(FIRMWARE_MBA_IMAGES)))
$(FIRMWARE_MBA_SYMLINKS): $(LOCAL_INSTALLED_MODULE)
@echo "MBA Firmware link: $@"
@mkdir -p $(dir $@)
@rm -rf $@
$(hide) ln -sf /firmware/image/$(notdir $@) $@

ALL_DEFAULT_INSTALLED_MODULES += $(FIRMWARE_MBA_SYMLINKS)

FIRMWARE_MODEM_IMAGES := \
modem.b00.gz modem.b01.gz modem.b02.gz modem.b03.gz modem.b04.gz modem.b05.gz \
modem.b06.gz modem.b07.gz modem.b08.gz modem.b10.gz modem.b11.gz modem.b14.gz \
modem.b15.gz modem.b16.gz modem.b17.gz modem.b18.gz modem.b19.gz modem.b20.gz \
modem.b23.gz modem.b24.gz modem.b25.gz modem.b27.gz modem.b28.gz modem.mdt.gz

FIRMWARE_MODEM_SYMLINKS := $(addprefix $(TARGET_OUT_ETC)/firmware/,$(notdir $(FIRMWARE_MODEM_IMAGES)))
$(FIRMWARE_MODEM_SYMLINKS): $(LOCAL_INSTALLED_MODULE)
@echo "Modem Firmware link: $@"
@mkdir -p $(dir $@)
@rm -rf $@
$(hide) ln -sf /firmware/image/$(notdir $@) $@

ALL_DEFAULT_INSTALLED_MODULES += $(FIRMWARE_MODEM_SYMLINKS)

include $(call all-makefiles-under,$(LOCAL_PATH))

endif
7 changes: 7 additions & 0 deletions configs/extract_firmware.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/sbin/sh

for file in /firmware/image/*.gz; do
OUT_FILE=$(basename $file .gz)
gzip -dc $file > /system/etc/firmware/$OUT_FILE
chmod 644 /system/etc/firmware/$OUT_FILE
done
4 changes: 4 additions & 0 deletions device.mk
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/apns-conf-vmob.xml:system/etc/apns-conf-vmob.xml \
$(LOCAL_PATH)/configs/apns-conf-usc.xml:system/etc/apns-conf-usc.xml

# Firmware Extraction
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/extract_firmware.sh:install/bin/extract_firmware.sh

# Media
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/media_codecs.xml:system/etc/media_codecs.xml \
Expand Down
10 changes: 10 additions & 0 deletions releasetools.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,16 @@ def IncrementalOTA_InstallEnd(info):

def FullOTA_InstallEnd(info):
ReplaceApnList(info)
ExtractFirmwares(info)

def ExtractFirmwares(info):
info.script.Mount("/system")
info.script.AppendExtra('mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/modem", "/firmware", "");')
info.script.AppendExtra('ui_print("Extracting modem firmware");')
info.script.AppendExtra('run_program("/sbin/sh", "/tmp/install/bin/extract_firmware.sh");')
info.script.AppendExtra('ui_print("Firmware extracted");')
info.script.AppendExtra('unmount("/firmware");')
info.script.Unmount("/system")

def ReplaceApnList(info):
info.script.AppendExtra('if getprop("ro.boot.hardware.sku") == "XT1548" then')
Expand Down

0 comments on commit 171345c

Please sign in to comment.