驱动之路#32:全志T527平台 IIO通道与ADC数量问题

描述

 【问题描述】:在全志 T527 平台使用ADC功能时,发现 IIO子系统提供的in_voltageX_raw 通道与实际配置ADC数量不一致的情况。全志T527

上图可以看到,iio子系统只提供了in_voltage0_raw~in_voltage3_raw 四路ADC电压检测通道,但是实际上 dts配置了 12 路ADC,这就导致ADC4-11 通道无法通过 in_voltageX_raw 来获取电压数据。

【问题分析】:没什么好分析的,直接看源码吧。不看不知道,一看就知道。果然有几路通道被注释掉了。

【问题解决】:驱动源码中,找到类似iio_channels[]数组,在其中添加相应所需通道。

(bsp/drivers/gpadc/sunxi_gpadc.c)

全志T527全志T527

 

为什么RK平台不会存在类似的情况?

查看 RK 的ADC驱动源码发现,RK 的驱动默认已经支持 SoC 芯片所支持的最大ADC通道数。以RK3588 为例,该 SoC 芯片最大支持8路 ADC 输入,其驱动源码ADC通道数默认为8通道,驱动源码摘录如下(drivers/iio/adc/rockchip_saradc.c)。

全志T527

(完)


本人专注  Linux 嵌入式全栈开发 ,可提供从硬件方案评估与设计、 Linux/Android  BSP 适配、驱动开发、外设调试、系统移植到产品交付的全流程技术支持。 有项目合作 / 技术支持 / 问题定位 / 交个朋友,欢迎后台私信~


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分