I was _barely_ able to reach the full 1 MHz capability
of this board, using a hard real-time interrupt
-(set the TRIG_RT flag in your comedi_cmd and use
+(set the TRIG_RT flag in your struct comedi_cmd and use
rtlinux or RTAI). The board can't do dma, so the bottleneck is
pulling the data across the ISA bus. I timed the interrupt
handler, and it took my computer ~470 microseconds to pull 512
#define DAS16M1_82C55 0x400
#define DAS16M1_8254_THIRD 0x404
-static const comedi_lrange range_das16m1 = { 9,
+static const struct comedi_lrange range_das16m1 = { 9,
{
BIP_RANGE(5),
BIP_RANGE(2.5),
};
static int das16m1_do_wbits(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_insn * insn, unsigned int * data);
+ struct comedi_insn * insn, unsigned int * data);
static int das16m1_di_rbits(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_insn * insn, unsigned int * data);
+ struct comedi_insn * insn, unsigned int * data);
static int das16m1_ai_rinsn(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_insn * insn, unsigned int * data);
+ struct comedi_insn * insn, unsigned int * data);
static int das16m1_cmd_test(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_cmd * cmd);
+ struct comedi_cmd * cmd);
static int das16m1_cmd_exec(struct comedi_device * dev, struct comedi_subdevice * s);
static int das16m1_cancel(struct comedi_device * dev, struct comedi_subdevice * s);
}
static int das16m1_cmd_test(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_cmd * cmd)
+ struct comedi_cmd * cmd)
{
unsigned int err = 0, tmp, i;
static int das16m1_cmd_exec(struct comedi_device * dev, struct comedi_subdevice * s)
{
struct comedi_async *async = s->async;
- comedi_cmd *cmd = &async->cmd;
+ struct comedi_cmd *cmd = &async->cmd;
unsigned int byte, i;
if (dev->irq == 0) {
}
static int das16m1_ai_rinsn(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_insn * insn, unsigned int * data)
+ struct comedi_insn * insn, unsigned int * data)
{
int i, n;
int byte;
}
static int das16m1_di_rbits(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_insn * insn, unsigned int * data)
+ struct comedi_insn * insn, unsigned int * data)
{
unsigned int bits;
}
static int das16m1_do_wbits(struct comedi_device * dev, struct comedi_subdevice * s,
- comedi_insn * insn, unsigned int * data)
+ struct comedi_insn * insn, unsigned int * data)
{
unsigned int wbits;
{
struct comedi_subdevice *s;
struct comedi_async *async;
- comedi_cmd *cmd;
+ struct comedi_cmd *cmd;
u16 num_samples;
u16 hw_counter;