From: dave p. <dpe...@gm...> - 2020-04-07 15:27:55
|
Hi Mitchell, The kernel module for ni_pcmcia and ni_pcmcia_accel is the tnt4882.ko module which seems to exist from your dmesg. We forgot to put a GPIB_CONFIG_PCMCIA config option into the Makefile when autoconf was dropped for the kernel modules build. Please edit the "all" target in the top level Makefile in the linux-gpib-kernel-4.3.0 directory to look like so: all: -$(MAKE) -C $(LINUX_SRCDIR) V=$(VERBOSE) modules \ M="$(GPIB_SRCDIR)/drivers/gpib" \ GPIB_TOP_DIR=$(GPIB_SRCDIR) \ CONFIG_GPIB_ISA="$(ENABLE_ISA)" \ HAVE_DEV_OF_NODE=$(HAVE_DEV_OF_NODE) \ GPIB_CONFIG_KERNEL_DEBUG=$(GPIB_DEBUG) \ GPIB_CONFIG_PCMCIA=1 Rebuild and install the kernel modules with the above modification and reboot to test. BTW: The gpib_config command should be: gpib_config --minor 0. Cheers, -Dave On Tue, 7 Apr 2020 at 02:02, Mitchell Clement <mo....@gm...> wrote: > Hi, I'm new to the Linux-GPIB community and am hoping to get some guidance > on getting my National Instruments PCMCIA-GPIB card working with > linux-gpib-4.3.0. > > TL;DR: Are there better instructions for getting PCMCIA cards to work with > linux-gpib than is what is contained in "linux-gpib-user-4.3.0/INSTALL"? > > Full details: > I am running CentOS 7.7.1908, with a custom kernel > (3.10.0-1062.18.1.rt56.1044.el7.x86_64). I have successfully built the > kernel driver and installed the user space package. The instructions > contained in the linux-gpib-user-4.3.0/INSTALL file appear to be very > outdated for PCMCIA, as it makes reference to the cardmgr daemon (as far as > I know cardmgr was replaced by pccardctl and lspcmcia). I edited the > "board_type" field in "/etc/gpib.conf" to "ni_pcmcia". As instructed, I > copied the etc/pcmcia subdirectory to /etc/pcmcia. I am assuming the script > "/etc/pcmcia/linux-gpib-pcmcia" is supposed to be run somehow, when a > pcmcia card is inserted, but I am unable to get it to run from the > terminal. I am able to insert the kernel module drivers: gpib_common, > nec7210, tnt4882, but when try issuing the command: > $ sudo gpib_config 0 > , I get: > failed to configure boardtype: ni_pcmcia > failed to configure board > main: Invalid argument > I checked the output of dmesg after inserting the drivers and see that the > following interfaces get registered: > [ 1495.671213] gpib: registered ni_isa interface > [ 1495.671220] gpib: registered ni_isa_accel interface > [ 1495.671223] gpib: registered ni_nat4882_isa interface > [ 1495.671225] gpib: registered ni_nat4882_isa_accel interface > [ 1495.671227] gpib: registered ni_nec_isa interface > [ 1495.671229] gpib: registered ni_nec_isa_accel interface > [ 1495.671231] gpib: registered ni_pci interface > [ 1495.671233] gpib: registered ni_pci_accel interface > ni_pcmcia is nowhere to be found. Looking in the tnt4882 driver source, I > see that all the above listed interfaces have definitions in > "tnt4882_init.c" which I assume contains all the initialization routines > when the drive module is inserted in the kernel. The pcmcia init routines > are found in "tnt4882_cs.c". It seems that PCMCIA is a dying bus interface > and am wondering if maybe the ni_pcmcia routines should have been added to > "tnt4882_init.c" some time ago or am I doing something wrong? Thanks for > the help and reading my lengthy email. > > Mitchell > _______________________________________________ > Linux-gpib-general mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linux-gpib-general > |