拿到的源码默认长按关机,短按开机,
不要长按关机,
只要长按重启
那么看一下规格书:
看一下驱动:
没有做这个寄存器的配置?i2cset测试一下:
i2cget -f -y 0 0x20 0xf7
0x86
默认是86,长按关机,
那自己加一下试试:
i2cset -f -y 0 0x20 0xf7 0xc6
测试成功。
自己加一下寄存器初始化:
/* power down configuration 0xf7 */
#define RK817_PWR_KEY_LONG_PRESS_MASK BIT(6)
#define RK817_PWR_KEY_LONG_PRESS_H BIT(6)
#define RK817_PWR_KEY_LONG_PRESS_L (0)
static const struct rk808_reg_data rk817_pre_init_reg[] = {
{RK817_RTC_CTRL_REG, RTC_STOP, RTC_STOP},
{RK817_GPIO_INT_CFG, RK817_INT_POL_MSK, RK817_INT_POL_L},
{RK817_SYS_CFG(1), RK817_HOTDIE_TEMP_MSK | RK817_TSD_TEMP_MSK,
RK817_HOTDIE_105 | RK817_TSD_140},
{RK817_PMIC_PWRON_KEY,RK817_PWR_KEY_LONG_PRESS_MASK,RK817_PWR_KEY_LONG_PRESS_H}
};