2014年12月16日 星期二

如何產生update.zip for recovery (二)

之前曾講過 update.zip 的產生,
請參考: http://esmondjhchang.blogspot.tw/2014/07/qc-updatezip-for-recovery.html
不過有試過的人應該會發現, 它.. 只能update HLOS(Android與kernel)部份,
對於Qualcomm 的non-Hlos (chipcode, 即 boot_image, rpm_proc, modem_proc, tz... 等等)是無效的
因為最後所產生的 update.zip 居然並沒有把 non-Hlos的部份包進去 (檔案 size明顯小很多)

因此, 本篇只是對於 non-Hlos的部份做補完

步驟: 
1. 先依前篇方式compile HLOS+nonHLOS 的部份
2. 將nonHLOS 的檔 copy 到 [HLOS]/device/qcom/msm8974/radio 中
檔案位置:

NON-HLOS.bin  [NON-HLOS]/common/build/bin/asic/NON-HLOS.bin (內含 modem/tz/adsp/wcnss..)
sbl1.mbn              [NON-HLOS]/boot_images/build/ms/bin/8974/sbl1.mbn
tz.mbn                  [NON-HLOS]/trustzone_images/build/ms/bin/AAAAANAA/tz.mbn
rpm.mbn              [NON-HLOS]/rpm_proc/build/ms/bin/AAAAANAAR/rpm.mbn
emmc_appsboot.mbn  [HLOS]/out/target/product/vgs8974/emmc_appsboot.mbn
sdi.mbn                [HLOS]/debug_image/build/ms/bin/AAAAANAZ/sdi.mbn

3. 修改 [HLOS]/device/qcom/msm8974/radio/filesmap 檔 (描述資料夾內的檔所對映的partition)
如:
NON-HLOS.bin       /dev/block/platform/msm_sdcc.1/by-name/modem
sbl1.mbn                  /dev/block/platform/msm_sdcc.1/by-name/sbl1
tz.mbn                      /dev/block/platform/msm_sdcc.1/by-name/tz
rpm.mbn                  /dev/block/platform/msm_sdcc.1/by-name/rpm
emmc_appsboot.mbn  /dev/block/platform/msm_sdcc.1/bt-name/aboot
sdi.mbn                   /dev/block/platform/msm_sdcc.1/by-name/dbi

4. make otapackage
    update.zip 會在 [HLOS]/out/target/product/msm8974/


沒有留言:

張貼留言