|
发表于 2020-8-20 18:14:11
7426 浏览 0 回复
MT8788/MT6771 如何长按开机键关机而不是重启?
在preloader內判断前次关机是否为长按关机,若是则必须等到pwrkey release 才会继续boot flow;
In vendor\mediatek\proprietary\bootable\bootloader\preloader\platform\mt6771\src\drivers\keypad.c
- bool mtk_detect_key(unsigned short key) /* key: HW keycode */
- {
- ...
- U32 just_rst;
- int itimeout = 200; /* set timeout for 20 sec */
- ...
- if (key == MTK_PMIC_PWR_KEY) {
- just_rst = is_pmic_long_press_reset();
- if (just_rst) {
- while (itimeout--) {
- mdelay(100);
- pmic_config_interface(PMIC_RG_STRUP_PWRKEY_COUNT_RESET_ADDR, 0x1, 0x1, 0);
- platform_wdt_kick();
- printf("[%s] timeout %d", __func__, itimeout);
- if (!(pmic_detect_powerkey())) {
- return false;
- }
- }
- }
- ...
- }
复制代码
|
|
手机微信同号:13682654092
|
|
|
|
|
登录或注册
|