Enumerate uhid instances of uhidev

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Enumerate uhid instances of uhidev

Hi Martin, all,

Could you please give a hint on how to enumerate all child uhid
instances of a given uhidev?

I'm trying to accomplish the following:

With hotplugd I get notifications for uhidev and uhid instances when I
attach a keyboard. I'd like to perform some action (usbhidaction -f
uhidX) on a specific uhid when a specific keyboard is attached.

I can get vendor/product IDs of the corresponding uhidev of the
keyboard with usbdevs -v (e.g. "driver: uhidev4"), but then I can't
find how to enumerate the uhid instances corresponding to a uhidev

Judging by struct usb_device_info, there's no way to get the uhid list
via USB_DEVICEINFO ioctl call and at the same time it looks like uhid
instances don't know about their parent uhidev (the info extracted by
usbhidctl). Is it at all possible to get this info? If it's currently
not possible without extending the drivers, I'd appreciate to know
this too.