linux/drivers/comedi/drivers/aio_aio12_8.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * aio_aio12_8.c
 * Driver for Access I/O Products PC-104 AIO12-8 Analog I/O Board
 * Copyright (C) 2006 C&C Technologies, Inc.
 */

/*
 * Driver: aio_aio12_8
 * Description: Access I/O Products PC-104 AIO12-8 Analog I/O Board
 * Author: Pablo Mejia <[email protected]>
 * Devices: [Access I/O] PC-104 AIO12-8 (aio_aio12_8),
 *   [Access I/O] PC-104 AI12-8 (aio_ai12_8),
 *   [Access I/O] PC-104 AO12-4 (aio_ao12_4)
 * Status: experimental
 *
 * Configuration Options:
 *   [0] - I/O port base address
 *
 * Notes:
 * Only synchronous operations are supported.
 */

#include <linux/module.h>
#include <linux/comedi/comedidev.h>
#include <linux/comedi/comedi_8255.h>
#include <linux/comedi/comedi_8254.h>

/*
 * Register map
 */
#define AIO12_8_STATUS_REG
#define AIO12_8_STATUS_ADC_EOC
#define AIO12_8_STATUS_PORT_C_COS
#define AIO12_8_STATUS_IRQ_ENA
#define AIO12_8_INTERRUPT_REG
#define AIO12_8_INTERRUPT_ADC
#define AIO12_8_INTERRUPT_COS
#define AIO12_8_INTERRUPT_COUNTER1
#define AIO12_8_INTERRUPT_PORT_C3
#define AIO12_8_INTERRUPT_PORT_C0
#define AIO12_8_INTERRUPT_ENA
#define AIO12_8_ADC_REG
#define AIO12_8_ADC_MODE(x)
#define AIO12_8_ADC_MODE_NORMAL
#define AIO12_8_ADC_MODE_INT_CLK
#define AIO12_8_ADC_MODE_STANDBY
#define AIO12_8_ADC_MODE_POWERDOWN
#define AIO12_8_ADC_ACQ(x)
#define AIO12_8_ADC_ACQ_3USEC
#define AIO12_8_ADC_ACQ_PROGRAM
#define AIO12_8_ADC_RANGE(x)
#define AIO12_8_ADC_CHAN(x)
#define AIO12_8_DAC_REG(x)
#define AIO12_8_8254_BASE_REG
#define AIO12_8_8255_BASE_REG
#define AIO12_8_DIO_CONTROL_REG
#define AIO12_8_DIO_CONTROL_TST
#define AIO12_8_ADC_TRIGGER_REG
#define AIO12_8_ADC_TRIGGER_RANGE(x)
#define AIO12_8_ADC_TRIGGER_CHAN(x)
#define AIO12_8_TRIGGER_REG
#define AIO12_8_TRIGGER_ADTRIG
#define AIO12_8_TRIGGER_DACTRIG
#define AIO12_8_COS_REG
#define AIO12_8_DAC_ENABLE_REG
#define AIO12_8_DAC_ENABLE_REF_ENA

static const struct comedi_lrange aio_aio12_8_range =;

struct aio12_8_boardtype {};

static const struct aio12_8_boardtype board_types[] =;

static int aio_aio12_8_ai_eoc(struct comedi_device *dev,
			      struct comedi_subdevice *s,
			      struct comedi_insn *insn,
			      unsigned long context)
{}

static int aio_aio12_8_ai_read(struct comedi_device *dev,
			       struct comedi_subdevice *s,
			       struct comedi_insn *insn,
			       unsigned int *data)
{}

static int aio_aio12_8_ao_insn_write(struct comedi_device *dev,
				     struct comedi_subdevice *s,
				     struct comedi_insn *insn,
				     unsigned int *data)
{}

static int aio_aio12_8_counter_insn_config(struct comedi_device *dev,
					   struct comedi_subdevice *s,
					   struct comedi_insn *insn,
					   unsigned int *data)
{}

static int aio_aio12_8_attach(struct comedi_device *dev,
			      struct comedi_devconfig *it)
{}

static struct comedi_driver aio_aio12_8_driver =;
module_comedi_driver();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();