Você pode usar udevadm
para obter essas informações. Por exemplo, no meu sistema lspci
me dá:
# lspci|grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GK106 [GeForce GTX 650 Ti Boost] (rev a1)
Consultando o udev, em vez disso, obtenho:
# udevadm info -q property -p /sys/bus/pci/devices/0000:01:00.0
DEVPATH=/devices/pci0000:00/0000:00:02.0/0000:01:00.0
DRIVER=nvidia
ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost TwinFrozr II OC)
ID_PCI_CLASS_FROM_DATABASE=Display controller
ID_PCI_INTERFACE_FROM_DATABASE=VGA controller
ID_PCI_SUBCLASS_FROM_DATABASE=VGA compatible controller
ID_VENDOR_FROM_DATABASE=NVIDIA Corporation
MODALIAS=pci:v000010DEd000011C2sv00001462sd00002874bc03sc00i00
PCI_CLASS=30000
PCI_ID=10DE:11C2
PCI_SLOT_NAME=0000:01:00.0
PCI_SUBSYS_ID=1462:2874
SUBSYSTEM=pci
USEC_INITIALIZED=22791556
O ID_MODEL_FROM_DATABASE
fornece uma descrição mais detalhada do cartão.
Quanto a como saber o valor a ser usado para o argumento -p
, use a primeira parte da saída lspci
. Por exemplo, se lspci
mostrar 12:34.5
, você usaria /sys/bus/pci/devices/0000:12:34.5