Hardware certification device information
Marc Tardif
marc.tardif at canonical.com
Mon Aug 31 02:28:12 UTC 2009
Hi again folks,
I'm already done with most of the implementation which should be in
production this week barring any unforeseen complications. The result
of my exploration has determined that the following information will
prove to be sufficient for uniquely identifying and representing the
devices in a system:
path: sysfs path used to determine the hierarchy of devices
bus: subsystem name corresponding to the subsystem symlink
category: initial attempt to categorize devices
driver: the drivers used by the device
type: the content of the type file under some devices
vendor_id: for vendors of pci, usb or pnp devices
product_id: for products pci, usb or pnp devices
subvendor_id: subsystem vendor id for pci devices
subproduct_id: subsystem product id for pci devices
vendor: for devices with vendors identified by string
product: for devices with products identified by string
For completeness purposes, I have attached the result from gathering
the above information using Checkbox. Note that if the vendor and
product information are None, this means they will be determined on
the server side by looking at the latest id tables parsed from
reference sites.
There is still one problem I haven't been able to solve: the type
file which is sometimes available for some devices under the sysfs,
is this specific to a device instance or a device model? In other
words, can the content of this file change between systems of the
same model or even between different versions of the kernel?
If you have any other comments, please let me know.
* Pete Graner <pgraner at canonical.com> [2009-08-30 16:38 +0800]:
> Pls get on this ASAP, Marc needs this info so that your jobs will be
> easier, I'd like everyone's comments by the end of this upcoming week.
>
> Marc Tardif wrote:
>> The hardware certification website is being refactored so that devices
>> can be searched effectively. Ultimately, you should be able to identify
>> the systems which contain the devices you might need to reproduce bugs
>> or confirm that a fix actually works.
>>
>> The hardware certification database used to rely on HAL information, but
>> this is being refactored to rely on udev instead. What I need from you
>> is the list of properties from the udev database and attributes from the
>> sysfs which would need to be structured in the database so that they can
>> later be searched.
>>
>> For your convenience, I have attached the following files generated on
>> my system to identify some of the relevant properties and attributes:
>>
>> properties.txt: These are the properties, also referred to as the
>> environment (E) in udev. This is basically the filtered output of
>> `udevadm info --export-deb`.
>>
>> attributes.txt: These are the attribute detected by udev from the
>> sysfs for each device. This is basically the filtered output of
>> `udevadm info --attribute-walk --path=...` for each device.
>>
>> devices.txt: This is the combined output of the udev database and the
>> corresponding sysfs attributes, so that the information can be easily
>> correlated. I'm hoping this might provide useful examples from my
>> system in the event some properties or attributes aren't clear.
--
Marc Tardif <marc.tardif at canonical.com>
Freenode: cr3, Jabber: cr3 at jabber.org
1024D/72679CAD 09A9 D871 F7C4 A18F AC08 674D 2B73 740C 7267 9CAD
-------------- next part --------------
(vendor_id:product_id:subvendor_id:subproduct_id) bus, driver, category, vendor, product, type, path
(32902:10519:6058:8437) pci, None, OTHER, None, None, None, /devices/pci0000:00/0000:00:1f.0
(32902:10537:6058:8440) pci, ahci, OTHER, None, None, None, /devices/pci0000:00/0000:00:1f.2
(32902:10544:6058:8441) pci, None, OTHER, None, None, None, /devices/pci0000:00/0000:00:1f.3
(32902:10548:6058:8432) pci, uhci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1d.0
(32902:10549:6058:8432) pci, uhci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1d.1
(32902:10550:6058:8432) pci, uhci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1d.2
(32902:10551:6058:8432) pci, uhci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1a.0
(32902:10552:6058:8432) pci, uhci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1a.1
(32902:10553:6058:8432) pci, uhci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1a.2
(32902:10554:6058:8433) pci, ehci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1d.7
(32902:10556:6058:8433) pci, ehci_hcd, USB, None, None, None, /devices/pci0000:00/0000:00:1a.7
(32902:10558:6058:8434) pci, HDA Intel, OTHER, None, None, None, /devices/pci0000:00/0000:00:1b.0
(32902:10560:0:0) pci, pcieport-driver, OTHER, None, None, None, /devices/pci0000:00/0000:00:1c.0
(32902:10562:0:0) pci, pcieport-driver, OTHER, None, None, None, /devices/pci0000:00/0000:00:1c.1
(32902:10566:0:0) pci, pcieport-driver, OTHER, None, None, None, /devices/pci0000:00/0000:00:1c.3
(32902:10816:6058:8416) pci, agpgart-intel, OTHER, None, None, None, /devices/pci0000:00/0000:00:00.0
(32902:10818:6058:8420) pci, None, VIDEO, None, None, None, /devices/pci0000:00/0000:00:02.0
(32902:10819:6058:8420) pci, None, VIDEO, None, None, None, /devices/pci0000:00/0000:00:02.1
(32902:10820:6058:8422) pci, None, OTHER, None, None, None, /devices/pci0000:00/0000:00:03.0
(32902:10822:6058:8426) pci, None, IDE, None, None, None, /devices/pci0000:00/0000:00:03.2
(32902:10823:6058:8428) pci, serial, OTHER, None, None, None, /devices/pci0000:00/0000:00:03.3
(32902:16951:32902:4625) pci, iwlagn, NETWORK, None, None, None, /devices/pci0000:00/0000:00:1c.1/0000:03:00.0
(32902:4341:6058:8430) pci, e1000e, NETWORK, None, None, None, /devices/pci0000:00/0000:00:19.0
(32902:9288:0:0) pci, None, OTHER, None, None, None, /devices/pci0000:00/0000:00:1e.0
(6127:18444:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.7/usb1/1-6
(6127:18444:None:None) usb, uvcvideo, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.7/usb1/1-6/1-6:1.0
(6127:18444:None:None) usb, uvcvideo, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.7/usb1/1-6/1-6:1.1
(7531:1:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.0/usb3/3-0:1.0
(7531:1:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.1/usb4/4-0:1.0
(7531:1:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.2/usb5/5-0:1.0
(7531:1:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.0/usb6/6-0:1.0
(7531:1:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.1/usb7/7-0:1.0
(7531:1:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.2/usb8/8-0:1.0
(7531:1:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.0/usb3
(7531:1:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.1/usb4
(7531:1:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.2/usb5
(7531:1:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.0/usb6
(7531:1:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.1/usb7
(7531:1:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.2/usb8
(7531:2:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.7/usb1/1-0:1.0
(7531:2:None:None) usb, hub, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.7/usb2/2-0:1.0
(7531:2:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1a.7/usb1
(7531:2:None:None) usb, usb, OTHER, None, None, None, /devices/pci0000:00/0000:00:1d.7/usb2
(None:14208:None:None) pnp, i8042 aux, OTHER, IBM, None, None, /devices/pnp0/00:09
(None:2048:None:None) pnp, None, OTHER, PNP, None, None, /devices/pnp0/00:05
(None:2568:None:None) pnp, None, OTHER, PNP, None, None, /devices/pnp0/00:01
(None:259:None:None) pnp, None, OTHER, PNP, None, None, /devices/pnp0/00:03
(None:2816:None:None) pnp, rtc_cmos, OTHER, PNP, None, None, /devices/pnp0/00:07
(None:3073:None:None) pnp, system, OTHER, PNP, None, None, /devices/pnp0/00:00
(None:3074:None:None) pnp, system, OTHER, PNP, None, None, /devices/pnp0/00:02
(None:3076:None:None) pnp, None, OTHER, PNP, None, None, /devices/pnp0/00:06
(None:512:None:None) pnp, None, OTHER, PNP, None, None, /devices/pnp0/00:04
(None:771:None:None) pnp, i8042 kbd, OTHER, PNP, None, None, /devices/pnp0/00:08
(None:None:None:None) input, None, KEYBOARD, None, AT Translated Set 2 keyboard, None, /devices/platform/i8042/serio0/input/input4/event4
(None:None:None:None) input, None, MOUSE, None, TPPS/2 IBM TrackPoint, None, /devices/platform/i8042/serio1/input/input9/event9
(None:None:None:None) input, None, None, None, Lid Switch, None, /devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input1/event1
(None:None:None:None) input, None, None, None, PC Speaker, None, /devices/platform/pcspkr/input/input7/event7
(None:None:None:None) input, None, None, None, Power Button (FF), None, /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0/event0
(None:None:None:None) input, None, None, None, Sleep Button (CM), None, /devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input2/event2
(None:None:None:None) input, None, None, None, UVC Camera (17ef:480c), None, /devices/pci0000:00/0000:00:1a.7/usb1/1-6/1-6:1.0/input/input6/event6
(None:None:None:None) input, None, None, None, Video Bus, None, /devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/input/input5/event5
(None:None:None:None) power_supply, None, None, SANYO, 42T4647, battery, /devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0
(None:None:None:None) rfkill, None, None, None, 5100AGN, wlan, /devices/pci0000:00/0000:00:1c.1/0000:03:00.0/rfkill/rfkill0
(None:None:None:None) scsi, sd, None, ATA, SAMSUNG MMCRE64G, 0, /devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0
(None:None:None:None) serio, atkbd, None, None, i8042 KBD port, None, /devices/platform/i8042/serio0
(None:None:None:None) serio, psmouse, None, None, i8042 AUX port, None, /devices/platform/i8042/serio1
(None:None:None:None) sound, None, None, None, CONEXANT Analog, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/adsp
(None:None:None:None) sound, None, None, None, CONEXANT Analog, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/audio
(None:None:None:None) sound, None, None, None, CONEXANT Analog, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/dsp
(None:None:None:None) sound, None, None, None, CONEXANT Analog, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/mixer
(None:None:None:None) sound, None, None, None, CONEXANT Analog, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c
(None:None:None:None) sound, None, None, None, CONEXANT Analog, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p
(None:None:None:None) sound, None, None, None, Conexant Digital, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p
(None:None:None:None) sound, None, None, None, HDA Intel, None, /devices/pci0000:00/0000:00:1b.0/sound/card0
(None:None:None:None) sound, None, None, None, HDA Intel, None, /devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0
More information about the kernel-team
mailing list