mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-29 23:53:32 +00:00
staging: comedi: ni_pcidio: implement INSN_CONFIG_GET_CMD_TIMING_CONSTRAINTS
Adds implementation of the new INSN_CONFIG_GET_CMD_TIMING_CONSTRAINTS instruction. This patch also adds data for this implementation, based on spec sheets from NI. Signed-off-by: Spencer E. Olson <olsonse@umich.edu> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
51fd367383
commit
3ad53c4090
1 changed files with 13 additions and 0 deletions
|
@ -260,18 +260,22 @@ enum nidio_boardid {
|
|||
struct nidio_board {
|
||||
const char *name;
|
||||
unsigned int uses_firmware:1;
|
||||
unsigned int dio_speed;
|
||||
};
|
||||
|
||||
static const struct nidio_board nidio_boards[] = {
|
||||
[BOARD_PCIDIO_32HS] = {
|
||||
.name = "pci-dio-32hs",
|
||||
.dio_speed = 50,
|
||||
},
|
||||
[BOARD_PXI6533] = {
|
||||
.name = "pxi-6533",
|
||||
.dio_speed = 50,
|
||||
},
|
||||
[BOARD_PCI6534] = {
|
||||
.name = "pci-6534",
|
||||
.uses_firmware = 1,
|
||||
.dio_speed = 50,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -467,6 +471,15 @@ static int ni_pcidio_insn_config(struct comedi_device *dev,
|
|||
{
|
||||
int ret;
|
||||
|
||||
if (data[0] == INSN_CONFIG_GET_CMD_TIMING_CONSTRAINTS) {
|
||||
const struct nidio_board *board = dev->board_ptr;
|
||||
|
||||
/* we don't care about actual channels */
|
||||
data[1] = board->dio_speed;
|
||||
data[2] = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
ret = comedi_dio_insn_config(dev, s, insn, data, 0);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
Loading…
Reference in a new issue