Carbide LED-qpnp相关问题

首先,根据测试所汇报的情况,了解了目前的情况是在充电的条件下,先亮绿灯,再亮红灯。

通过最初的分析,在往节点写值的时候,亮灯的情况是正常的,也就是说三色灯的节点是可控的,由此,理论上是可以排除驱动上面的问题,但是仍然无法解决和分析到问题。

在查看相关设备树文件msm-pmi8994后发现,相应的linux-default-trigger是有一些问题的,这些问题的造成主要是由于linux-default-trigger设置的是底层驱动在特定的情况下出现的作出的反应。同时,在上层,也同时在对LED灯进行控制,则造成了逻辑上的错误。

但是由于客户的要求是充电的时候亮起红灯,因此并没有完全分析出问题,并且怀疑是上层写值的时候出现了写值失败的问题,但是为了能够排除在驱动中其他地方对于灯的操作的影响,则需要对将底层驱动给上层提供的接口的写权限去除。


设置在qpnp中的LED闪烁的问题

在驱动中,已经出现了对应创建blink节点的相关代码,但是并没有出现blink节点。

一般的LED灯节点,基本在创建节点的时候,是在led-class.c这个文件中进行创建的,这个文件创建的是brightnesstrigger等节点,之后,根据在设备树说明文件中查询到的相关例子,看到在PWM模式下需要进行闪烁,要将PWM模式切换到LPG模式,同时在正常亮起的条件下再转换为PWM模式。因此,需要往原节点中添加以下代码:

pwms:
qcom,pwm-us:
qcom,duty-pcts -->此项为占空比
qcom,start-idx -->始终为1(预测)
qcom,ramp-step-ms -->每个亮起循环的周期

根据分析得出,当设备树进行解析的时候,出现了qcom,use-blink这个字段的时候,在驱动中定义的添加的节点会出现。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值