3.2. amss 部分編譯
主要由以下部分構成:
adsp, boot, debug, modem, rpm, trustzone, wcnss,分別根據高通的說明編譯這些模組,不過其中有些模組我們不會改,直接用release的binary檔案就行,比如:debug,rpm,trustzone,wcnss。
3.3. 打包成可刷寫檔案
高通沒有提供乙個完整的製作可刷寫包的工具,我自己寫了乙個。
核心思想是執行:common/build/update_common_info.py生成non-hlos.bin和把system.img,userdata.img等大包分成小包,以及生成分割槽表。
pack.sh封裝了update_common_info.py,能夠生成乙個完整的可刷寫包。
3.4.2. 刷機過程
刷機完成後,自動重啟。
如果手機不能進入刷機模式,需要和硬體一起檢查是usb的問題,還是別的電路問題。
3.4.3. fastboot 刷機
如果手機裡面已經有分割槽表,可以通過fastboot來分別刷入不同的模組:boot.img system.img userdata.img
fastboot flash boot boot.img
3.5. 開機測試
這是最為關鍵的一部,需要根據log來定位問題。
一般可以通過串列埠和jtag工具來除錯,對於基於linux的智慧型手機來說,一般用串列埠工具來除錯已經足夠了。
串列埠log能夠打出從sbl1, lk到kernel的log,看看到底問題出在什麼地方?
下面是需要注意的:
➢ 修改硬體board_id
boot_images/core/boot/secboot3/hw/msm8974/boot_cdt_array.c
uint8 config_data_table[config_data_table_max_size] =
;➢ ddr引數
手機能進如kernel,但是做kernel裡會死,從log上看,bitflip或者相關的問題。在這種情況下,需要修改ddr引數。
從晶元廠商獲取資料手冊,根據高通的說明來改動,改動後的資料放在
boot_images/core/boot/secboot3/hw/msm8974/boot_cdt_array.c
uint8 config_data_table[config_data_table_max_size] =
➢ 只編譯對應的dts
高通的**編譯時,把一大堆的dts都生成了,放在一起,這樣對我們的系統開發會造成不利影響。系統啟動時呼叫的dts不是我們所希望的,所以需要改動build系統,只編譯相關dts。
kernel/androidkernel.mk
-dts_files = $(wildcard $(top)/kernel/arch/arm/boot/dts/$(dts_name)*.dts)
+dts_files = $(wildcard $(top)/kernel/arch/arm/boot/dts/$(dts_name)*$(oem_project_name).dts)
kernel/arch/arm/mach-msm/makefile.boot
+ dtb-$(config_arch_msm8974) += msm8974pro-ac-pm8941-$(oem_project_name).dtb
➢ adb log
如果前面的問題都解決了,手機能進入kernel,就可以用adb log了。
$ adb shell cat /proc/kmsg |tee log.txt
3.6. 除錯好lcd和tp驅動
具體的除錯見4.1和4.2。
lcd,tp功能正常,手機能進入idle介面,能正常使用,usb連線正常。這樣bring-up工作就基本完成了。
高通平台手機開發之Bring up
come from 3.2.amss 部分編譯 主要由以下部分構成 adsp,boot,debug,modem,rpm,trustzone,wcnss,分別根據高通的說明編譯這些模組,不過其中有些模組我們不會改,直接用release的binary檔案就行,比如 debug,rpm,trustzone...
高通平台mipi panel kernel讀包方法
熟悉高通平台mipi panel kernel讀包方法,我想我們可以是的同一客戶要是使用2塊mipi panel的話我想我們可以通過讀取id來下不同序列而不用更換boot.img,還有能否讀id可以說明mipi通訊是否正常。還有我們只需在lk下面讀一次id再對全域性變數賦值通過lk傳遞到kernel...
高通平台 USB OTG功能
1 什麼是otg?usb otg 是usbon the go 的縮寫,即 otg技術就是實現在沒有 host 的情況下,實現裝置間的資料傳送。2 硬體介面 5根線 usb hs id usb hs d p usb hs d m usb vbus in gnd3 otg線 otg通訊的乙個關鍵是如何判...