疫情期间在家办公,工作量相对少一点,整理了UEFI的相关知识,今天分享下高通平台UEFI中马达震动调试。
UEFI中高通默认的马达震动代码:
boot_images/QcomPkg/XBLLoader/boot_extern_pmic_interface.c
需要开机震动时,设置为PM_ON,当不需要开机震动时,设置为PM_OFF;或者找到调用boot_pm_vib_on的地方注释掉。
dts中的配置:
有时候平台默认的马达震动并不满足我们的要求,比如震动力度小,震动的时机太早/晚等;这个时候我们就需要自己调用马达的接口函数,设置这些参数,并在适当的位置enable;
例如:
boot_images/QcomPkg/Library/PlatformBdsLib/PlatformBdsLib.c的PlatformBdsInitEx函数中实现设置电压,震动时间。PlatformBdsInitEx这个函数加载的比较早,一开机就立马震动:
为防止编译报错,需在对应的inf文件PlatformBdsLib.inf加入: