[PATCH 0/6] gpib: Add support for ines pci_xl board

Dave Penkler
2026-04-11T17:25:25Z

INES have 2 pci boards that both have the same vendor and device ID
[16da:0011]. The older board is based on the 72010 chip that has a
number of extended registers that are missing in the 72130 based
board. This caused random error messages when the 72130 based board was
being used. The one extended register in the 72130 chip is the bus
status register which is at a different offset and has a different
layout.

The proprietary ines driver uses some undocumented heuristics
to determine which board is being used. In order to configure the
correct behaviour of the linux ines gpib driver for the 72130 based
board we introduce a new board type "ines_pci_xl" and rely on user
configuration to set the appropriate board type. The chip type is set
in the ines_pci_xl_attach() routine and the ines72130_line_status()
routine accesses the 72130 bus status register.

Patch 1: Add the chip type enum, the BSR offset and bit mask enums
Patch 2: Adds the 72130 specific line_status routine
Patch 3: Avoids accessing the extended registers when in 72130 mode
Patch 4: Adds the pci_xl gpib_interface initialisation structure
Patch 5: Add the attach routine for the 72130 based pci_xl board
Patch 6: Adds the common driver register and unregister calls

Dave Penkler (6):
gpib: Add enums for INES 72130 based cards
gpib: Add ines 72130 line_status routine
gpib: Don't use extended registers
gpib: Add ines_pci_xl_interface
gpib: Add attach routine for pci_xl board
gpib; Add register and unregister calls

drivers/gpib/ines/ines.h | 16 +++++++
drivers/gpib/ines/ines_gpib.c | 90 +++++++++++++++++++++++++++++++++++
2 files changed, 106 insertions(+)

--
2.53.0