For the USB modaliases, I know that the values corresponding to the device's vendor and product ids can be found here: http://www.linux-usb.org/usb.ids

Which online resources and/or kernel source files, I could use to find the meaning for the rest of the ids: d, dc, dsc, dp, ic, isc, ip, in?

For example, I've got this modalias:


Finding the meaning of vendor id (0525) and product id (a4a5) is easy using aforementioned web-page. But I have no idea where to look up the rest of the ids.

Update: I understand what the letters mean (v, p, d, dc, etc). But the numeric values are in question.

Update2: Take this article for example. Among other things the author says that "The 0900 device class/subclass means hub" and that "Interface class 0E01 is video control". But where does this knowledge come from?

In my case: device class/subclass (dc:dsc) is 0200. interface class/subclass (ic:isc) is 0202.

What does these numbers mean? Where to lookup them?

1 Answer 1


Just found the answer myself. It appears that http://www.linux-usb.org/usb.ids also contains the meaning for the device/interface classes, subclasses and protocols. They are almost at the end of the file. Search it for "List of known device classes, subclasses and protocols" string.

So in my case: ic:isc:ip (which is 02:02:01) means a communication device, a modem with AT-commands (v.25ter).

Which is not exactly true. It is a development board connected to my PC. So it is a serial (uart?) port. But it is a different story...

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .