|
|
| version 1.11, 2004/05/13 23:49:22 | version 1.12, 2004/05/19 22:52:51 |
|---|---|
| Line 130 struct ums_softc { | Line 130 struct ums_softc { |
| # define UMS_ASLEEP 0x01 /* readFromDevice is waiting */ | # define UMS_ASLEEP 0x01 /* readFromDevice is waiting */ |
| # define UMS_SELECT 0x02 /* select is waiting */ | # define UMS_SELECT 0x02 /* select is waiting */ |
| struct selinfo rsel; /* process waiting in select */ | struct selinfo rsel; /* process waiting in select */ |
| dev_t dev; /* specfs */ | |
| }; | }; |
| #define MOUSE_FLAGS_MASK (HIO_CONST|HIO_RELATIVE) | #define MOUSE_FLAGS_MASK (HIO_CONST|HIO_RELATIVE) |
| Line 349 USB_ATTACH(ums) | Line 347 USB_ATTACH(ums) |
| sc->rsel.si_flags = 0; | sc->rsel.si_flags = 0; |
| sc->rsel.si_pid = 0; | sc->rsel.si_pid = 0; |
| #endif | #endif |
| cdevsw_add(&ums_cdevsw, -1, device_get_unit(self)); | |
| sc->dev = make_dev(&ums_cdevsw, device_get_unit(self), | make_dev(&ums_cdevsw, device_get_unit(self), |
| UID_ROOT, GID_OPERATOR, | UID_ROOT, GID_OPERATOR, |
| 0644, "ums%d", device_get_unit(self)); | 0644, "ums%d", device_get_unit(self)); |
| if (usbd_get_quirks(uaa->device)->uq_flags & UQ_SPUR_BUT_UP) { | if (usbd_get_quirks(uaa->device)->uq_flags & UQ_SPUR_BUT_UP) { |
| DPRINTF(("%s: Spurious button up events\n", | DPRINTF(("%s: Spurious button up events\n", |
| Line 393 ums_detach(device_t self) | Line 391 ums_detach(device_t self) |
| sc->state &= ~UMS_SELECT; | sc->state &= ~UMS_SELECT; |
| selwakeuppri(&sc->rsel, 0); | selwakeuppri(&sc->rsel, 0); |
| } | } |
| cdevsw_remove(&ums_cdevsw, -1, device_get_unit(self)); | |
| destroy_dev(sc->dev); | |
| return 0; | return 0; |
| } | } |