linux-kernel – Linux内核驱动程序:NVRAM访问的模型是什么?

我刚刚在我的主板上为恩智浦RTC芯片编写了一个RTC驱动程序,效果很好.这个芯片还有一些电池支持的RAM,我想提供给用户空间应用程序. RTC框架不支持功能.它只有512个字节,但我在寻找可寻找的CHAR驱动程序或完整的BLOCK驱动程序之间徘徊.我之前从未做过块驱动程序,但它似乎需要比简单的CHAR更多的信息.

我也可以与IOCTLS接口,但感觉不尽如人意.什么感觉是让这些字节可供用户使用的最佳方法

[编辑]我忘了提到RTC芯片悬挂在I2C端口上,它没有映射到内存中,因此不能成为mmaping的理想选择. [/编辑]

解决方法

块驱动程序仅适用于看起来像磁盘驱动器的设备.你打算在512字节上放一个文件系统吗?没有?使它成为一个角色设备.

你可以像其他司机那样做.查看drivers / char / nvram.c.这会创建一个char设备,你可以打开(),read(),write(),lseek()和close().

相关文章

Linux中的ARP防火墙主要用于防御ARP欺骗攻击,其效果取决于多...
insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...