HAL

Comment 29 for bug 337935

Ricky Campbell wrote:
> Good idea Eric. I think that is easier than maintaining a package.

I'm glad you found a workaround, since this problem got tougher with the
new 2.6.28 kernel.

>
> usbhid code is at bitmath.org git repo though...
> http://bitmath.org/code/usbhid-dkms/
>

The possibility to control the mouse interface was moved to the hid
module, which is now built into the kernel. You'd have to hack the
usbhid module with something like this
untested-and-not-compiled-and-unsupported piece of code:

diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c
index 606369e..2fe49ab 100644
--- a/drivers/hid/usbhid/hid-core.c
+++ b/drivers/hid/usbhid/hid-core.c
@@ -1012,7 +1012,15 @@ static int hid_probe(struct usb_interface *intf,
const struct usb_device_id *id
        hid->driver_data = usbhid;
        usbhid->hid = hid;

- ret = hid_add_device(hid);
+ /* ignore the mouse interface of the WELLSPRING3 devices */
+ if (hid->type == HID_TYPE_USBMOUSE &&
+ hid->vendor = 0x05ac &&
+ (hid->product == 0x0236 ||
+ hid->product == 0x0237 ||
+ hid->product == 0x0238))
+ ret = -ENODEV;
+ else
+ ret = hid_add_device(hid);
        if (ret) {
                if (ret != -ENODEV)
                        dev_err(&intf->dev, "can't add hid device:
%d\n", ret);

I am leaving this snippet as a pointer to a possible solution for anyone
who feels like picking it up. Please understand that I will not
regularly answer emails regarding this or other jaunty issues. I will
hopefully see you gentlemen during the karmic work, as that is the next
release I will involve myself in.

So long,
Henrik