Skip to content
  • H Hartley Sweeten's avatar
    staging: comedi: adv_pci_dio: separate out PCI-1760 support · 14b93bb6
    H Hartley Sweeten authored
    
    
    The PCI-1760 is board unique. It uses an outgoing/incoming mailbox
    programming sequence to access the hardware. The other boards supported
    by this driver use simple register mapping. Including support for the
    PCI-1760 in this driver just makes it harder to understand.
    
    Separate out the PCI-1760 support into a new driver, adv_pci1760.
    
    Clean up the new driver. The original code had a bunch of CamelCase and
    other checkpatch.pl issues.
    
    The code used to access the outgoing/incoming mailboxes was also a bit
    awkward with the passing of the arrays for the outgoing and incoming
    mailbox bytes. Replace them with two new functions that send a command
    and return the feedback data from the command based on the programming
    flow chart in the datasheet for the PCI-1760.
    
    The new adv_pci1760 driver also fixes the incomplete timer subdevice.
    This subdevice is actually the 2 PWM outputs so the subdevice type
    has been changed to COMEDI_SUBD_PWM.
    
    The counter subdevice support was not complete in the original code.
    They are also a bit strange since they are up counters connected to
    each of the digital inputs. For now that subdevice has been disabled
    (COMEDI_SUBD_UNUSED).
    
    Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
    Reviewed-by: default avatarIan Abbott <abbotti@mev.co.uk>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    14b93bb6