VXI and VME

cancel
Showing results for 
Search instead for 
Did you mean: 

Can't get PCI VXI card to initialize on CentOS 5 (Fedora Core 5)

I am trying to configure a pci-vxi card on our new machine. We have an Intel MB (DG965WH) and the Q6600 Core2 Quad processor. The OS is CentOS 5 (Fedora Core 5) with kernel 2.6.18-53.1.4.el5.
I have read all the other posts concerning Fedora Core 5 and have modified the source code to fix the compile errors in the driver. The following lists the output I am getting:


******************************************************************************************************
when running make:
make -C /lib/modules/2.6.18-53.1.4.el5/build SUBDIRS=/usr/local/nivxi/src KBUILD_VERBOSE=0 modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-53.1.4.el5-i686'
  CC [M]  /usr/local/nivxi/src/vxi.o
  CC [M]  /usr/local/nivxi/src/vxi_kernel.o
  CC [M]  /usr/local/nivxi/src/pci_io.o
  CC [M]  /usr/local/nivxi/src/mutex.o
  CC [M]  /usr/local/nivxi/src/vxiTimer.o
  LD [M]  /usr/local/nivxi/src/vximod.o
  Building modules, stage 2.
  MODPOST
WARNING: could not find /usr/local/nivxi/src/.nivxi.o.cmd for /usr/local/nivxi/src/nivxi.o
  CC      /usr/local/nivxi/src/vximod.mod.o
  LD [M]  /usr/local/nivxi/src/vximod.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.18-53.1.4.el5-i686'
Kernel module built successfully and placed in ../sys/
Use /usr/local/nivxi/src/../sys/load_vxi to load it.

******************************************************************************************

When running
load_vxi:
NI-VXI device driver located in "/usr/local/nivxi/sys"

******************************************************************************************

When running vxiinit:
Unable to initialize hardware

******************************************************************************************

dmesg output:
VXI: initialized
[drm] Initialized drm 1.0.1 20051102
ACPI: PCI Interrupt 0000:00:02.0[A] -> GSI 16 (level, low) -> IRQ 177
[drm] Initialized i915 1.8.0 20060929 on minor 0
VXI: unloaded
VXI: initialized

******************************************************************************************

From /var/log/messages:
Dec 21 09:55:02 lion kernel: VXI: unloaded
Dec 21 09:55:07 lion kernel: VXI: initialized

******************************************************************************************

No matter what I do I cannot get vxiinit to initialize the device. The device itself is listed
in the /dev directory as vxi0 where "0" is the number zero. On another machine we have
running CentOS 4.5 the device is listed as vxiO. where "O" is the capital letter O. The
device works fine on this machine.

I am not sure what I should try next. Any suggestions would be greatly appreciated.

Thanks,
Greg


0 Kudos
Message 1 of 5
(7,930 Views)

I just realized that the vxiO that I was seeing the the /dev directory was the NI GPIB card in a different pci slot than the VXI card so ignore that paragraph in my original post.

 

G

0 Kudos
Message 2 of 5
(7,922 Views)

Howdy Greg,

I've been researching your issue extensively over the past day and unfortunately found your Fedora distribution has not been officially tested and verified for functionality (assuming you're using a MXI 2, check out the VIX for Linux page).  That being said, I was able to find some other Discussion Forum posts dealing with hacking VXI to work on Fedora.  I know you said you read up on this, but I wanted to post them anyways just in case. 

VXI Drivers on Fedora Core 5
- This is quite a long post dealing with similar errors to what you are seeing
NI-VXI for Linux Hangs on SMP/Hyperthreaded Machines with APIC Enabled
- A KnowledgeBase article linked in the previous thread
Fedora Core 5 - kernel 2.6.20 -NIKAL 1.5 How To
- This one is kind of a long shot since it's for our MultifunctionDAQ drivers and not VXI, but check it out anyways to see if it gives you any ideas.

Let me know how these worked for you and if you have any follow up questions.  Good luck.

Sincerely,

Chris G in AE

Sincerely,

Chris G in AE
0 Kudos
Message 3 of 5
(7,906 Views)

Thanks for the research Chris. When I go back to work next Wednesday (the 2nd) I'll check this stuff out.

Greg



Message Edited by gmandude on 12-27-2007 09:51 PM
0 Kudos
Message 4 of 5
(7,899 Views)
I believe I have found an important clue as to why the driver will not initialize on my system. In the other discussion forum it listed changes that needed to be made to the code files for the driver. I was able to apply all the changes except the following:
I could not change <asm\semaphore.h> to <linux\semaphore.h> because the file doesn't exist on my machine in the linux directory.
This caused a compile error. Because of this I was unable to change the "struct semaphore" to "struct compat_semaphore".
I believe this is a large part of the problem since I am running on a Core 2 Quad processor machine.

Does anyone know where I can get the correct libraries that contain the declarations and definitions of "compat_semaphore"?

Thanks.
Greg
0 Kudos
Message 5 of 5
(7,874 Views)