Linux内核不报告重复

Linux内核不报告重复,linux,input,report,duplicates,sample,Linux,Input,Report,Duplicates,Sample,我已经为接近传感器创建了一个驱动程序,它将ADC计数返回到用户空间。然后,用户空间将ADC转换为距离。问题是,有时ADC值不稳定-光照条件改变,或其他情况。当我想对用户空间库中的数据进行重采样时,可能会出现下一个数据是相同的,并且Linux内核不报告它,这使得我无法报告准确的距离 在这种情况下我该怎么办?有没有一种方法可以让Linux内核报告这些重复项,这样我的采样代码就可以工作了?我应该修改输入报告代码吗 我无法将ADC转换移到内核端,因为转换本身需要一些数学和浮点运算 删除重复项的代码位于d

我已经为接近传感器创建了一个驱动程序,它将ADC计数返回到用户空间。然后,用户空间将ADC转换为距离。问题是,有时ADC值不稳定-光照条件改变,或其他情况。当我想对用户空间库中的数据进行重采样时,可能会出现下一个数据是相同的,并且Linux内核不报告它,这使得我无法报告准确的距离

在这种情况下我该怎么办?有没有一种方法可以让Linux内核报告这些重复项,这样我的采样代码就可以工作了?我应该修改输入报告代码吗

我无法将ADC转换移到内核端,因为转换本身需要一些数学和浮点运算

删除重复项的代码位于drivers/input/input.c input\u handle\u abs\u事件函数中


更确切地说,该设备运行的是Android,接近传感器是APS-12D。

您如何知道该样本是重复的?因为它的ADC值与上一个相同?如果是这样,我将丢弃驱动程序中的重复项,或者有一个最短的采样周期来返回重复值,这仍然可能是一个唯一的转换,恰好与前一个采样相同。@PeterL。我的驱动程序代码并没有删除重复项,而是由Linux输入子系统完成的。我希望能够始终发送它。不确定子系统将如何删除样本并将其丢失。也许如果你发布一些代码,我们可以看看。