Skip to content

Commit a9d3a9c

Browse files
ian-abbottgregkh
authored andcommitted
staging: comedi: adv_pci1710: fix AI channels 16-31 for PCI-1713
The Advantech PCI-1713 has 32 analog input channels, but an incorrect bit-mask in the definition of the `PCI171X_MUX_CHANH(x)` and PCI171X_MUX_CHANL(x)` macros is causing channels 16 to 31 to be aliases of channels 0 to 15. Change the bit-mask value from 0xf to 0xff to fix it. Note that the channel numbers will have been range checked already, so the bit-mask isn't really needed. Fixes: 92c65e5 ("staging: comedi: adv_pci1710: define the mux control register bits") Reported-by: Dmytro Fil <[email protected]> Cc: <[email protected]> # v4.5+ Signed-off-by: Ian Abbott <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent c0bcf9f commit a9d3a9c

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/staging/comedi/drivers/adv_pci1710.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@
4646
#define PCI171X_RANGE_UNI BIT(4)
4747
#define PCI171X_RANGE_GAIN(x) (((x) & 0x7) << 0)
4848
#define PCI171X_MUX_REG 0x04 /* W: A/D multiplexor control */
49-
#define PCI171X_MUX_CHANH(x) (((x) & 0xf) << 8)
50-
#define PCI171X_MUX_CHANL(x) (((x) & 0xf) << 0)
49+
#define PCI171X_MUX_CHANH(x) (((x) & 0xff) << 8)
50+
#define PCI171X_MUX_CHANL(x) (((x) & 0xff) << 0)
5151
#define PCI171X_MUX_CHAN(x) (PCI171X_MUX_CHANH(x) | PCI171X_MUX_CHANL(x))
5252
#define PCI171X_STATUS_REG 0x06 /* R: status register */
5353
#define PCI171X_STATUS_IRQ BIT(11) /* 1=IRQ occurred */

0 commit comments

Comments
 (0)