android实现shipmode模式需求

软件平台:Android11

硬件平台:QCS6125

  需求:部分库存设备由于放置时间过长,到用户手中之后会出现亏电而无法开机,售后要求是能否在设备入库时增加默认电池电量,但是从专业角度,并不建议智能硬件设备电量在入库时充电过满,考虑到安全和电池使用寿命等多种因素,需要在维持当前库存电量不变的情况下,增加入库设备的关机待机时长。

  什么是shipmode?

    shipping mode可译为运输模式,又或者船运模式,其技术的实现主要依靠于电子产品中的充电管理芯片。锂离子电池的过放或者空电后长时间放置,会导致正负极性物质可逆性受到破坏,从而导致电池不能再充电,即使充电也只能部分恢复,容量也会有衰减。为减小这种破坏性,运输模式应运而生。

    运输模式通常是设备的最低静态电流模式。便携式设备在出厂时开启运输模式,在长时间的运输存储过程中,减小电池电流的流失,最大限度延长储藏寿命。

    设备电路中,电池通过BATFET的打开传递给SYS,进而再传递给后级的电源IC和负载。在待机状 态下,电流虽小,但长时间持续也会消耗不少电池电量。相对于手机而言,开机待机状态下,最小的场景莫过于飞行待机。飞行待机的电流功耗往往在5mA左右。而关机状态下的电流通常在200uA以内。

    启动运输模式的本质即是断开BAT与SYS之间的BATFET。如果BAT没有接额外负载,这种场景下的耗电电流仅为charge的静态功耗,可大大减少电池电量的流失。

一、底层驱动层面的实现逻辑

进入ship mode

底层将提供进入ship mode调试节点

/sys/module/qpnp_power_on/parameters/ship_mode_en

0:关机不进入ship mode

1:关机进入ship mode

上层在用户版本首次刷机后将该节点置为1后进行系统调用关机进入ship mode。

退出ship mode

可通过以下任何一种方法退出SHIP模式并恢复正常运行:

  1. - 移除所有电源,导致DVDD_RAW_RB。
  2. - USB_IN从低于约1V转变为高于约1V。这是在USB_IN上进行插入操作。
  3. - DC_IN从低于约1V转变为高于约1V。这是在DC_IN上进行插入操作。
  4. - 按下KYPDPWR_N至少2秒

步骤2-4 触发运输模式后,13 秒内这

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值