大家好、我在 Linux 论坛上有一个有关此问题的支持主题、但 TI 代表已指示我访问此论坛来处理我遇到的问题的一个方面。
首先、我将提供一些背景。 我们在 Variscite SD410 SOM 上运行 Linaro 4.4.9、并使用 preempt RT 补丁。 我们已将 bq27421-G1连接到 SOM、并使用 i2cdetect 和 i2cget 命令验证了功能。 我们安装了 bq27xxx_battery 驱动程序、最初无法正常工作。 应用以下两个修补程序后: marc.info/ 和 patchwork.kernel.org/.../,它可以在/sys/class/power_supply 下创建和更新文件系统的方面工作,但它会出现使 SOM 无法使用的问题。
问题出在这里。 驱动程序所做的某些操作会导致系统日志不断溢出。 此行为在我们加载驱动程序时开始、并且在卸载驱动程序时停止。 系统日志中唯一可用的 dmesg 条目重复包含以下内容:
[144.049378] systemd-journale[1489]:/dev/kmsg 缓冲区溢出,一些消息丢失。
在 Linux 表单上处理此问题的 TI 代表说: 我只是摘录最相关的内容。
看起来像、 bq27xxx_battery_IRQ_handler_thread ()-中断持续发生 、这会调用 bq27xxx_battery_update ()-> power_supply_changed ()调用此 uevent
是的、它经常更新电池值。 可能是电量监测计、电池需要某种校准(我不确定)。
我想猜。 但是、代码中有一个流[缺陷]来判断电池是否已校准。
以下是指向整个支持线程的链接: e2e.ti.com/.../2168095
TI 能否提供有关消除此问题的指导?
谢谢、
Brian