Subject: Re: accessing specific USB HID devices
To: Werner Backes <werner@bit-1.de>
From: Lennart Augustsson <lennart@augustsson.net>
List: current-users
Date: 04/19/2004 12:21:29
You're right, the functionality you want isn't there.

What you can do is to wire down the device names in the config
file, e.g.
uhidev0 at uhub? vendor A product B
uhid0 at uhidev0 reportid 0xAA
uhid1 at uhidev0 reportid 0xBB
uhidev1 at uhub? vendor C product D
uhid2 at uhidev1 reportid 0x56
uhid3 at uhidev1 reportid 0x77

That way the names will be fixed.

I'll probably add what you want soon, it seems useful. :)

	-- Lennart


Werner Backes wrote:
> 
>> i.e. i could catch devices/drivers attachment and detachment. By device
>> identifucation info you can find your expected device and upper level
>> driver, uhid in your case.
> 
> 
> I'll try that but I fear that I'll get uhidev* as the upper level
> driver. uhidev itself doesn't seem to be useful here because it's
> only a dispatcher which hands the data to the uhid devices.
> So if I have 2 USB HID devices each having 2 report IDs, I'll
> probably have something like:
> 
>      uhidev0 (vendor A, product B) ->  repID 0xAA -> uhid0
>                                    ->  repID 0xBB -> uhid1
>      uhidev1 (vendor C, product D) ->  repID 0x56 -> uhid2
>                                    ->  repID 0x77 -> uhid3
> 
> So I think I can get from usb(4) which vendor/product is on
> uhidev0. I also can get from uhid0 the report ID it gets it's
> data from (e.g. repID 0xAA). But I cannot query uhidev0 for
> it's attached uhid devices nor can I query uhid0 for it's lower
> layer uhidev device. There seems to be a missing link?
> 
> Werner
>