Okay, I got it. Actually with current implementation, only the number of PCI devices on the system is returned for drmGetDevices(NULL, 0). I extracted related code below. I hope it can address your concern :-) +static int drmParseSubsystemType(const char *str) { + char link[PATH_MAX + 1] = ""; + char *name; + + if (readlink(str, link, PATH_MAX) < 0) + return -EINVAL; + + name = strrchr(link, '/'); + if (!name) + return -EINVAL; + + name++; + + if (strncmp(name, "pci", 3) == 0) + return DRM_BUS_PCI; + + return -EINVAL; +} ... + subsystem_type = drmParseSubsystemType(path); + + if (subsystem_type < 0) + continue; Regards, Jammy -----Original Message----- From: Emil Velikov [mailto:emil.l.velikov@xxxxxxxxx] Sent: Friday, August 14, 2015 6:05 PM To: Zhou, Jammy Cc: ML dri-devel Subject: Re: [PATCH 1/5] drm: add interface to get drm devices on the system v2 On 14 August 2015 at 10:41, Zhou, Jammy <Jammy.Zhou@xxxxxxx> wrote: >> What is the point in claiming that you have X+Y devices, if the API does not provide any information about Y of them ? It seems very misleading imho. > > I'm not sure if I understand your question correctly. Easy - replace X with "pci" and Y with "platform/usb" :) Or in other words: user: "hey libdrm, how many devices do we have" libdrm: "hey user, there are 10 devices here." user: "great, tell me all about them" libdrm: "sure... well I cannot tell you anything about 3 of them, but the rest are fine" user: "why did you stay that they are 10, if there is no info for 3 of them ?" Fwiw it can be argued either way but I'd suspect that the current behaviour is not too welcoming. If people feel for the current behaviour I'kk be ok with it. Thanks Emil _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel