lk中通过操作pmic的寄存器来实现手机重启3次进入关机状态

说明:在下面的条件发生时,代表手机异常了,需要读取0x88e寄存器的值,默认是0.如果其值小于3,则进行加一(注意不能自加),然后写入到0x88e寄存器,然后进行重启,重启原因使用上次一致的。重启之后如果检测到还是异常又进入这个条件,则再对0x88e进行加一写入。一致循环到其值为3,然后把0写入,然后关机。如果这个过程中有一次不满足异常条件都会把这个寄存器写0.具体代码如下(重启寄存器的值不会丢)

 if(id_value != 0x08)

   {

 

      val = pm8x41_reg_read(0x88e);

      dprintf(CRITICAL, "zll----0--pls doreboot device here= %d, val=%d\n", id_value,val);

      if(val < 3){

                    val += 1;

                   pm8x41_reg_write(0x88e,val);

                    val =pm8x41_reg_read(0x88e);

                    dprintf(CRITICAL,"zll----1--pls do reboot device here= %d, val=%d\n", id_value,val);

                    if(hard_reboot_mode != 0)

                   r

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值