湖南麒麟下加载RapidIO驱动
1、背景介绍目前模块上采用了两片Tsi721 RapidIO芯片,需要在模块间实现RapidIO数据传输,为此,需要在湖南麒麟系统下适配RapidIO驱动。2、驱动加载首先确保在系统下已经能够找到Tsi721设备,在终端中输入lspci可以看到两片Tsi721已经能够找到了。然后从IDT github官网上面https://github.com/RapidIO下载驱动和测试工具,如下图所示,下载这
1、背景介绍
目前模块上采用了两片Tsi721 RapidIO芯片,需要在模块间实现RapidIO数据传输,为此,需要在湖南麒麟系统下适配RapidIO驱动。
2、驱动加载
首先确保在系统下已经能够找到Tsi721设备,在终端中输入lspci
可以看到两片Tsi721已经能够找到了。
然后从IDT github官网上面 https://github.com/RapidIO 下载驱动和测试工具,如下图所示,下载这两个即可。
其中第一个是驱动,第二个是测试工具
因为我们使用的是湖南麒麟,驱动原来是适配redhat7.4的,所以需要把rionet.c中使用redhat7.4的地方改掉
修改第513行
然后make即可
Make执行之后进入对应内核名称的文件夹,执行insmod操作
insmod rapidio.ko hdid=1,2
insmod tsi721_mport.ko
insmod rio_mport_cdev.ko
执行lsmod | grep rapidio就能看到驱动已经正确加载。
3、测试工具编译
为了编译测试工具,需要将驱动中的头文件拷贝到内核头文件目录下。
将include下.h文件拷贝到/usr/include/linux目录下
然后进入RRMAP文件夹下,执行make操作
编译结束后能看到可执行程序
运行一个查询程序,可以查到当前节点的设备ID
80ab0038就是从寄存器中读出来的值了,证明驱动已经可以正常工作。
更多推荐
所有评论(0)