Lines Matching refs:db9

84 struct db9 {  struct
95 static struct db9 *db9_base[3]; argument
354 struct db9 *db9 = from_timer(db9, t, timer); in db9_timer() local
355 struct parport *port = db9->pd->port; in db9_timer()
356 struct input_dev *dev = db9->dev[0]; in db9_timer()
357 struct input_dev *dev2 = db9->dev[1]; in db9_timer()
360 switch (db9->mode) { in db9_timer()
476 db9_saturn(db9->mode, port, db9->dev); in db9_timer()
501 mod_timer(&db9->timer, jiffies + DB9_REFRESH_TIME); in db9_timer()
506 struct db9 *db9 = input_get_drvdata(dev); in db9_open() local
507 struct parport *port = db9->pd->port; in db9_open()
510 err = mutex_lock_interruptible(&db9->mutex); in db9_open()
514 if (!db9->used++) { in db9_open()
515 parport_claim(db9->pd); in db9_open()
517 if (db9_modes[db9->mode].reverse) { in db9_open()
521 mod_timer(&db9->timer, jiffies + DB9_REFRESH_TIME); in db9_open()
524 mutex_unlock(&db9->mutex); in db9_open()
530 struct db9 *db9 = input_get_drvdata(dev); in db9_close() local
531 struct parport *port = db9->pd->port; in db9_close()
533 mutex_lock(&db9->mutex); in db9_close()
534 if (!--db9->used) { in db9_close()
535 del_timer_sync(&db9->timer); in db9_close()
538 parport_release(db9->pd); in db9_close()
540 mutex_unlock(&db9->mutex); in db9_close()
545 struct db9 *db9; in db9_attach() local
590 db9 = kzalloc(sizeof(struct db9), GFP_KERNEL); in db9_attach()
591 if (!db9) in db9_attach()
594 mutex_init(&db9->mutex); in db9_attach()
595 db9->pd = pd; in db9_attach()
596 db9->mode = mode; in db9_attach()
597 db9->parportno = pp->number; in db9_attach()
598 timer_setup(&db9->timer, db9_timer, 0); in db9_attach()
602 db9->dev[i] = input_dev = input_allocate_device(); in db9_attach()
608 snprintf(db9->phys[i], sizeof(db9->phys[i]), in db9_attach()
609 "%s/input%d", db9->pd->port->name, i); in db9_attach()
612 input_dev->phys = db9->phys[i]; in db9_attach()
618 input_set_drvdata(input_dev, db9); in db9_attach()
637 db9_base[port_idx] = db9; in db9_attach()
641 input_free_device(db9->dev[i]); in db9_attach()
644 input_unregister_device(db9->dev[i]); in db9_attach()
645 kfree(db9); in db9_attach()
653 struct db9 *db9; in db9_detach() local
663 db9 = db9_base[i]; in db9_detach()
666 for (i = 0; i < min(db9_modes[db9->mode].n_pads, DB9_MAX_DEVICES); i++) in db9_detach()
667 input_unregister_device(db9->dev[i]); in db9_detach()
668 parport_unregister_device(db9->pd); in db9_detach()
669 kfree(db9); in db9_detach()