cvs commit: src/sys/sys mouse.h src/sys/dev/usb ums.c usbhid.h
Julian Elischer
julian at elischer.org
Sun Dec 12 17:33:26 PST 2004
Julian Elischer wrote:
> Ian Dowse wrote:
>>
>> As pointed out in the PR though, it doesn't seem necessary to change
>> struct mousestatus and the MOUSE_GETSTATUS ioctl API just to make
>> the device work. All other mouse drivers in the tree will need to
>> be updated to initialise the new `dt' field.
ok that is changed back.
>> There's also one part
>> of the patch that looks as if it could easily break other devices:
>>
>> ibuf = sc->sc_ibuf;
>> if (sc->sc_iid) {
>> - if (*ibuf++ != sc->sc_iid)
>> - return;
>> + ibuf++;
>> }
>>
>> + /* The M$ Wireless Intellimouse 2.0 sends 1 extra leading byte of
>> + * data compared to most USB mice. This byte frequently switches
>> + * from 0x01 (usual state) to 0x02. I assume it is to allow
>> + * extra, non-standard, reporting (say battery-life). However
>> + * at the same time it generates a left-click message on the button
>> + * byte which causes spurious left-click's where there shouldn't be.
>> + * This should sort that. */
>> + if ((sc->sc_ibuf != ibuf) && (sc->sc_ibuf[0] == 0x02)) +
>> return;
>> +
>> dx = hid_get_data(ibuf, &sc->sc_loc_x);
>> dy = -hid_get_data(ibuf, &sc->sc_loc_y);
>> dz = -hid_get_data(ibuf, &sc->sc_loc_z);
I'm looking at this.. will treat it separatly from the ABI question.
More information about the cvs-all
mailing list