UP | HOME

PCIVME 在 Linux 下的驱动安装

目录

根据 ARW Elektronik, Germany 的 Klaus Histchler 所提供的 pcivme 驱动程序 (2004.08.13) 所配置。配置过程参照 ARW Elektronik, Germany 所提供的文档。

pcivme-3.1.tar.gz 驱动程序包中包含有这样几个文件:

兼容性

已经测试过的平台:

  • kernel 2.4.18 (SuSE 8.0)
  • kernel 2.2.19 (SuSE 7.3)
  • RedHat Linux 7.2
  • kernel 2.6.5 (SuSE 9.1)

源代码与特定的 x86 硬件特征无关,应该能够在其它平台上编译。但还没有经过测试。在驱动程序目录下可以指定内核路径进行基本的交叉编译,比如:

make KERNEL_LOCATION=<你内核的位置>

功能

驱动程序和共享库提供访问 PCIVME 接口的函数,利用接口函数的这些特性可以捕获 VME 的中断。一些高速访问功能,比如 autoread 需要硬件上支持,……

驱动程序的安装

利用 root 用户来安装驱动程序。在安装目录下有一个 bash 脚本 pcivme_load, 调用此脚本来安装 VMEMM 模块。比如你的模块设置为 #1 (见跳线 J301…J304),则可以这样执行

# ./pcivme_load 1

此命令安装驱动模块并创建设备节点 /dev/vmemm_1. 此处的 1 应该是出厂设置的模块号。如果你想卸载此模块,则可执行命令

rmmod pcivme

安装共享库

共享库 libpcivme.so 提供访问 VME 总线的底层函数接口。你可以在文件 libpcivme.h 中发现这些函数的原型。将文件 libpcivme.so.x.x.x 拷贝到你的 /usr/lib 目录下,然后到 /usr/lib 下做两个符号链接:

ln -sf libpcivme.so.x.x.x libpcivme.so.1
ln -sf libpcivme.so.1 libpcivme.so

你可以到 lib 目录下执行 make install 来完成上述操作。但你必须要有 root 权限。

检查安装结果

test 目录下执行命令 simpleTest. 可以用参数 -? 来查看调用的方法。可以用 Ctrl-C 来终止程序。

检查安装结果 2

执行命令 cat /proc/pcivme 的结果:

PCIVME information. Version 3.0 of Mar 14 2005 from Klaus Hitschler.
---------------------
Interfaces found : 1
Major Number : 254
--- 1 ---------------
LCR phys/virt/size : 0xdfafcf00/0xe01fef00/128
Control phys/virt/size : 0xdfafe000/0xe0428000/4096
VME phys/virt/size : 0xdfaff000/0xe0432000/4096
Irq : 5
VMEMM is or was : (software) connected.
Module-Number : 1
FPGA-Version : 1
Systemcontroller : yes
Word Mode : no
IrqCount : 0
Pending IrqStatus : none

版权所有 ©2015: 心蛛 | Date: [2005-04-17 日 03:22] | Generated by Emacs 24.4.1 (Org mode 8.3.2), Validate, 88x31.png

comments powered by Disqus