Findind input event device path with libudev

3 messages, 2 authors, 2011-11-16 · open the first message on its own page

Findind input event device path with libudev

From: Nuno Santos <hidden>
Date: 2011-11-16 12:02:32

Hi,

I found an example on how to use libudev to iterate over devices present 
in the system to find its precise path since the path can be different 
everytime we plug a device into the system.

http://www.signal11.us/oss/udev/

In this example, the type of device searched is hidraw, however I have 
already tried input, event, etc and none of this match criterias in the 
following function:

|*udev_enumerate_add_match_subsystem*(enumerate,*"hidraw"*);|


Only hidraw seems to work.

Can I use this technic to found the path a of input event device?

Thanks,

With my best regards,

Nuno

Re: Findind input event device path with libudev

From: Nuno Santos <hidden>
Date: 2011-11-16 14:44:17

Hi,

After digging a little bit around this i found that my problem is with 
this function:

dev = udev_device 
*udev_device_get_parent_with_subsystem_devtype(dev,"usb","usb_device");

dev is always null. He can't find me the usb device for my input device. 
Maybe i'm not specifiying subsystem and dev type correctly.

If I make several calls to udev_device_get_parent I can get to the 
correct device.

Does anyone knows what should be the correct subsystem and dev type pair 
to find the parent usb device for an input device?

Thanks,

Nuno

On 11/16/2011 12:02 PM, Nuno Santos wrote:
Hi,

I found an example on how to use libudev to iterate over devices 
present in the system to find its precise path since the path can be 
different everytime we plug a device into the system.

http://www.signal11.us/oss/udev/

In this example, the type of device searched is hidraw, however I have 
already tried input, event, etc and none of this match criterias in 
the following function:

|*udev_enumerate_add_match_subsystem*(enumerate,*"hidraw"*);|


Only hidraw seems to work.

Can I use this technic to found the path a of input event device?

Thanks,

With my best regards,

Nuno

-- 
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Re: Findind input event device path with libudev

From: Antonio Ospite <hidden>
Date: 2011-11-16 19:12:25

On Wed, 16 Nov 2011 14:44:08 +0000
Nuno Santos [off-list ref] wrote:
Hi,

After digging a little bit around this i found that my problem is with 
this function:

dev = udev_device 
*udev_device_get_parent_with_subsystem_devtype(dev,"usb","usb_device");

dev is always null. He can't find me the usb device for my input device. 
Maybe i'm not specifiying subsystem and dev type correctly.

If I make several calls to udev_device_get_parent I can get to the 
correct device.

Does anyone knows what should be the correct subsystem and dev type pair 
to find the parent usb device for an input device?
You can find out the most specific subsystem and devtype yourself using:

	udevadm monitor

and then plugging the device in.

Regards,
   Antonio

-- 
Antonio Ospite
http://ao2.it

PGP public key ID: 0x4553B001

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help