高通平臺UEFI中馬達震動調試(Vibrator)

疫情期間在家辦公,工作量相對少一點,整理了UEFI的相關知識,今天分享下高通平臺UEFI中馬達震動調試。

UEFI中高通默認的馬達震動代碼:

boot_images/QcomPkg/XBLLoader/boot_extern_pmic_interface.c

高通平臺UEFI中馬達震動調試(Vibrator)

需要開機震動時,設置為PM_ON,當不需要開機震動時,設置為PM_OFF;或者找到調用boot_pm_vib_on的地方註釋掉。

dts中的配置:

高通平臺UEFI中馬達震動調試(Vibrator)

有時候平臺默認的馬達震動並不滿足我們的要求,比如震動力度小,震動的時機太早/晚等;這個時候我們就需要自己調用馬達的接口函數,設置這些參數,並在適當的位置enable;

例如:boot_images/QcomPkg/Library/PlatformBdsLib/PlatformBdsLib.c的PlatformBdsInitEx函數中實現設置電壓,震動時間。PlatformBdsInitEx這個函數加載的比較早,一開機就立馬震動:

高通平臺UEFI中馬達震動調試(Vibrator)

為防止編譯報錯,需在對應的inf文件PlatformBdsLib.inf加入:

高通平臺UEFI中馬達震動調試(Vibrator)

以上都是我在工作中的實際案例,絕對的乾貨!


分享到:


相關文章: