Last few weeks, as part of my work at Igalia, I have been involved in the submission of three drivers on the Linux kernel's Staging area. These drivers manage boards that use the IndustryPack® bus following the architecture "carrier-mezzanine". This kind of boards is design for applications like process control, medical systems, telecommunication and traffic control.
The carrier board is a TEWS TPCI200 board, it's just a bridge between PCIe and IndustryPack® with 4 available slots. In each slot, it is possible to plug a mezzanine board, being in this case the old GE IP-OCTAL board (an 8-channel serial port device for RS-232, RS-422 or RS-485).
The third driver is an abstraction of the IndustryPack® bus that allows the mezzanine to perform all the operations through the carrier board.
A previous version of these drivers has been working at CERN in production for more than a year to perform the control of power supplies of the accelerators. They have been cleaned-up to be accepted upstream but there is still work to be done, so stay tuned!
They will be available in the 3.5 release of Linux kernel. If you want to test them, please compile them from Linus Torvalds's tree.
Staging: IndustryPack bus for the Linux Kernel
Staging: ipack: added support for the TEWS TPCI-200 carrier board
Staging: ipack: add support for IP-OCTAL mezzanine board