Android MSM8953靜態開機LOGO修改無效問題

文檔說明

本文檔以SC820-CN-01(msm8953平臺,Android 7)為例,描述如何分析靜態開機LOGO修改無效問題。

問題現象

製作開機LOGO

這裡屏幕的分辨率為1080*1920,首先製作一張同分辨率的png圖片,logo.png。

cd device/qcom/common/display/logo

python logo_gen.py logo.png

fastboot燒錄

adb reboot bootloader

fastboot flash splash Y:\sc820\sc820-modem\LA.UM.5.6\LINUX\android\device\qcom\common\display\logo\splash.img

燒錄後,開機LOGO仍然沒有變化,仍為默認的小企鵝圖片。

問題分析

log中有以下報錯:

[820] ERROR: Splash image header invalid

logo鏡像校驗失敗,查看splash.img頭部信息正常(SPLASH!!):

Android MSM8953靜態開機LOGO修改無效問題

但使用QFIL獲取機器splash分區內容後,其頭部信息為SOH

Android MSM8953靜態開機LOGO修改無效問題

由此可判定splash分區信息被修改。

打印錯誤的地方對應如下路徑:

bootable/bootloader/lk/app/aboot/aboot.c

splash_screen_mmc() -> splash_screen_check_header()

解決辦法

修改bootable/bootloader/lk/dev/gcdb/display/gcdb_display.c,註釋掉 mdss_dsi_dfps_store_pll_codes() 的調用,該函數修改了 splash.img的頭信息。

Android MSM8953靜態開機LOGO修改無效問題

patch見附件

https://uploader.shimo.im/f/OnTOfp8NHwAMg3Gs.patch?attname=gcdb_display.patch&download

make aboot -j8

重新燒錄lk鏡像文件和splash.img,驗證通過。


分享到:


相關文章: