]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
gpib: Add ines 72130 line_status routine
authorDave Penkler <dpenkler@gmail.com>
Sat, 11 Apr 2026 17:25:07 +0000 (19:25 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 May 2026 11:47:33 +0000 (13:47 +0200)
The 72130 chip has a different bus statue register offset
and layout.

Signed-off-by: Dave Penkler <dpenkler@gmail.com>
Link: https://patch.msgid.link/20260411172511.26546-3-dpenkler@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpib/ines/ines_gpib.c

index c000f647fbb57113355ee39f7e198c1ae807c6cc..dd98cb261a4cf0422ecef26ab303670bcc9dc51b 100644 (file)
@@ -57,6 +57,34 @@ static int ines_line_status(const struct gpib_board *board)
        return status;
 }
 
+static int ines72130_line_status(const struct gpib_board *board)
+{
+       int status = VALID_ALL;
+       int bsr_bits;
+       struct ines_priv *ines_priv = board->private_data;
+
+       bsr_bits = ines_inb(ines_priv, BUS_STATUS_REG);
+
+       if (bsr_bits & BSR_REN_BIT)
+               status |= BUS_REN;
+       if (bsr_bits & BSR_IFC_BIT)
+               status |= BUS_IFC;
+       if (bsr_bits & BSR_SRQ_BIT)
+               status |= BUS_SRQ;
+       if (bsr_bits & BSR_EOI_BIT)
+               status |= BUS_EOI;
+       if (bsr_bits & BSR_NRFD_BIT)
+               status |= BUS_NRFD;
+       if (bsr_bits & BSR_NDAC_BIT)
+               status |= BUS_NDAC;
+       if (bsr_bits & BSR_DAV_BIT)
+               status |= BUS_DAV;
+       if (bsr_bits & BSR_ATN_BIT)
+               status |= BUS_ATN;
+
+       return status;
+}
+
 static void ines_set_xfer_counter(struct ines_priv *priv, unsigned int count)
 {
        if (count > 0xffff) {