unsigned gate_src[3]; /* Current gate sources */
};
-typedef struct {
+struct dio200_subdev_intr {
unsigned long iobase;
spinlock_t spinlock;
int active;
unsigned int enabled_isns;
unsigned int stopcount;
int continuous;
-} dio200_subdev_intr;
+};
/*
* The struct comedi_driver structure tells the Comedi core module
dio200_subdev_intr_insn_bits(struct comedi_device * dev, struct comedi_subdevice * s,
struct comedi_insn * insn, unsigned int * data)
{
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
if (subpriv->has_int_sce) {
/* Just read the interrupt status register. */
*/
static void dio200_stop_intr(struct comedi_device * dev, struct comedi_subdevice * s)
{
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
subpriv->active = 0;
subpriv->enabled_isns = 0;
{
unsigned int n;
unsigned isn_bits;
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
struct comedi_cmd *cmd = &s->async->cmd;
int retval = 0;
dio200_inttrig_start_intr(struct comedi_device * dev, struct comedi_subdevice * s,
unsigned int trignum)
{
- dio200_subdev_intr *subpriv;
+ struct dio200_subdev_intr *subpriv;
unsigned long flags;
int event = 0;
*/
static int dio200_handle_read_intr(struct comedi_device * dev, struct comedi_subdevice * s)
{
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
unsigned triggered;
unsigned intstat;
unsigned cur_enabled;
*/
static int dio200_subdev_intr_cancel(struct comedi_device * dev, struct comedi_subdevice * s)
{
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
unsigned long flags;
comedi_spin_lock_irqsave(&subpriv->spinlock, flags);
static int dio200_subdev_intr_cmd(struct comedi_device * dev, struct comedi_subdevice * s)
{
struct comedi_cmd *cmd = &s->async->cmd;
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
unsigned long flags;
int event = 0;
dio200_subdev_intr_init(struct comedi_device * dev, struct comedi_subdevice * s,
unsigned long iobase, unsigned valid_isns, int has_int_sce)
{
- dio200_subdev_intr *subpriv;
+ struct dio200_subdev_intr *subpriv;
subpriv = kzalloc(sizeof(*subpriv), GFP_KERNEL);
if (!subpriv) {
static void
dio200_subdev_intr_cleanup(struct comedi_device * dev, struct comedi_subdevice * s)
{
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
if (subpriv) {
kfree(subpriv);
static void
dio200_subdev_8254_cleanup(struct comedi_device * dev, struct comedi_subdevice * s)
{
- dio200_subdev_intr *subpriv = s->private;
+ struct dio200_subdev_intr *subpriv = s->private;
if (subpriv) {
kfree(subpriv);