Alan Coopersmith wrote: > Casper.Dik at Sun.COM wrote: >> I've written the X server mouse module such that it can interpret >> such events but it should indeed be moved into the kernel proper. > > Right - traditionally Solaris has kept the device specific details in > the kernel modules (usbms, vuid3ps2, etc.) and passed only the VUID > events up to the X servers.
And indeed, we do have our own vuid* modules, as well as our own usbms module. It is the latter that I want to kill, because having our own offers no benefit, and increases our support burden. I've been trying to open up the HID device directly, but it seems that when I do this, I can't do any of the I_XXX ioctls if the device is in use as the console mouse. Specifically, what I'd like to do is have a direct way to access the HID device, and push our own module on top of it to allow side-band configuration of things. The pad is configurable with USB SET_REPORT messages, but I need an ioctl interface since I can't directly send M_CTL messages from userland. Any idea why these stream ioctls don't work? (They return E_INVAL. This is true for any I_LOOK, I_LIST, I_PUSH, etc.) The open() succeeds, though, and if the device is not in use as the console mouse, it works fine. Also, I've noticed that even ordinary ioctls with a garbage cmd value return ENOTTY (as the hid driver returns) when the mouse is not the console device, but when the mouse is the console device, I get EINVAL -- which makes me strongly believe that the hid driver isn't seeing the ioctl at all. I suspect screwball streams plumbing. Any advice would be greatly appreciated. > >> It seems that the configuration could be done through a side band >> protocol >> (opening the device directly) but also by teaching the kernel about >> these >> specific devices. > > The input-device hotplug work going on in the Xorg community is > proposing to > have the X server use HAL to find input devices and be notified when > they're > hotplugged - effectively adding a sideband protocol (over D-BUS). Interesting. I'm not too concerned about hot plug, since our pads are always connected. :-) -- Garrett D'Amore, Principal Software Engineer Tadpole Computer / Computing Technologies Division, General Dynamics C4 Systems http://www.tadpolecomputer.com/ Phone: 951 325-2134 Fax: 951 325-2191
