[Linux-parport] problem with PCIe parport cards

Jon Elson elson at pico-systems.com
Tue Aug 2 14:16:37 PDT 2022


I have been selling motion control boards for many years 
that interface through the EPP parallel port.

There have been issues from time to time with buggy 
IEEE-1284 support on various chips.  But, I just tried 
running the latest production version of LinuxCNC, which 
uses the 4.19.0-17-rt-amd64 SMP PREEMPT RT kernel, and ran 
into a BUNCH of problems with a variety of PCIe cards.  I 
have tried MosChip MCS9900 and MCS9901 cards, and the Oxford 
OXPCIe952-FBAG chip.  Originally, I saw that the file :  
/usr/share/misc/pci.ids did not have an entry for the 
9710:9900 vendor:product ID, and the system enumerated it 
with some generic a000:2000 substitute.  When I ran : sudo 
update-pciids  it put in an entry for that ID, and the 9900 
board started trying to work.  But, I have a diagnostic 
program that hammers the target board and records data and 
handshaking errors, and that would cause the parallel port 
to lock up in a few seconds.  Then, if I ran lspci -vv, I 
would see "disabled" next to the I/O port addresses.  The 
only way to clear this was a reboot. This was on a Dell 
Optiplex 7010 box with an i5 CPU.

I swapped the hard drive into a Dell Optiplex 980 with an i5 
CPU, but an on-motherboard parallel port, and both my 
diagnostic and the LinuxCNC program ran fine with it.

It appears SOMETHING in the 4.19.0-17 kernel/drivers is 
interfering with the PCIe parallel port operation, but NOT 
with other parport interfaces.  This looks like a real 
problem looming in the future, as I have some 500 of these 
devices in the field, in various machine tools that will 
have a fairly long service life.

Any insight as to what is causing this would be greatly 
appreciated.

Thanks,

Jon




More information about the Linux-parport mailing list