Linux: Determine the Manufacturer of a PCI Device

by on April 24, 2011 · 1 comment· LAST UPDATED April 24, 2011

in

How do I determine the manufacturer of a PCI device under Linux operating systems?

To find out or determine the manufacturer of a PCI device from Linux operating system, use the lspci command. Open a command-line terminal (select Applications > Accessories > Terminal), and then type the following command:
$ lspci
Sample outputs:

00:00.0 Host bridge: Intel Corporation 5000P Chipset Memory Controller Hub (rev b1)
00:02.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 2-3 (rev b1)
00:04.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 4-5 (rev b1)
00:06.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 6-7 (rev b1)
00:08.0 System peripheral: Intel Corporation 5000 Series Chipset DMA Engine (rev b1)
00:10.0 Host bridge: Intel Corporation 5000 Series Chipset FSB Registers (rev b1)
00:10.1 Host bridge: Intel Corporation 5000 Series Chipset FSB Registers (rev b1)
00:10.2 Host bridge: Intel Corporation 5000 Series Chipset FSB Registers (rev b1)
00:11.0 Host bridge: Intel Corporation 5000 Series Chipset Reserved Registers (rev b1)
00:13.0 Host bridge: Intel Corporation 5000 Series Chipset Reserved Registers (rev b1)
00:15.0 Host bridge: Intel Corporation 5000 Series Chipset FBD Registers (rev b1)
00:16.0 Host bridge: Intel Corporation 5000 Series Chipset FBD Registers (rev b1)
00:1c.0 PCI bridge: Intel Corporation 631xESB/632xESB/3100 Chipset PCI Express Root Port 1 (rev 09)
00:1d.0 USB Controller: Intel Corporation 631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (rev 09)
00:1d.1 USB Controller: Intel Corporation 631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (rev 09)
00:1d.2 USB Controller: Intel Corporation 631xESB/632xESB/3100 Chipset UHCI USB Controller #3 (rev 09)
00:1d.3 USB Controller: Intel Corporation 631xESB/632xESB/3100 Chipset UHCI USB Controller #4 (rev 09)
00:1d.7 USB Controller: Intel Corporation 631xESB/632xESB/3100 Chipset EHCI USB2 Controller (rev 09)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d9)
00:1f.0 ISA bridge: Intel Corporation 631xESB/632xESB/3100 Chipset LPC Interface Controller (rev 09)
00:1f.1 IDE interface: Intel Corporation 631xESB/632xESB IDE Controller (rev 09)
00:1f.2 IDE interface: Intel Corporation 631xESB/632xESB/3100 Chipset SATA IDE Controller (rev 09)
00:1f.3 SMBus: Intel Corporation 631xESB/632xESB/3100 Chipset SMBus Controller (rev 09)
01:00.0 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express Upstream Port (rev 01)
01:00.3 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express to PCI-X Bridge (rev 01)
02:00.0 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express Downstream Port E1 (rev 01)
02:02.0 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express Downstream Port E3 (rev 01)
04:00.0 Ethernet controller: Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01)
04:00.1 Ethernet controller: Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01)
06:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)
08:00.0 PCI bridge: Intel Corporation 6702PXH PCI Express-to-PCI Bridge A (rev 09)
0a:01.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02)

The above output suggest that I've the following Manufacturer of a PCI Devices:

  • RAID card : Adaptec
  • Ethernet : Intel
  • VGA : ATI Technologies

To get detailed output, enter:
$ lspci -v
$ lspci -v | less

Sample outputs:

lspci  -v
00:00.0 Host bridge: Intel Corporation 5000P Chipset Memory Controller Hub (rev b1)
	Subsystem: Super Micro Computer Inc Device 9280
	Flags: bus master, fast devsel, latency 0
	Capabilities: [50] Power Management version 2
	Capabilities: [58] MSI: Enable- Count=1/2 Maskable- 64bit-
	Capabilities: [6c] Express Root Port (Slot-), MSI 00
	Capabilities: [100] Advanced Error Reporting
00:02.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 2-3 (rev b1) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=01, subordinate=05, sec-latency=0
	I/O behind bridge: 00002000-00002fff
	Memory behind bridge: d8200000-d83fffff
	Capabilities: [50] Power Management version 2
	Capabilities: [58] MSI: Enable+ Count=1/2 Maskable- 64bit-
	Capabilities: [6c] Express Root Port (Slot-), MSI 00
	Capabilities: [100] Advanced Error Reporting
	Kernel driver in use: pcieport-driver
	Kernel modules: shpchp
....
.....
...
0a:01.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02) (prog-if 00 [VGA controller])
	Subsystem: Super Micro Computer Inc Device 9280
	Flags: bus master, stepping, fast Back2Back, medium devsel, latency 66, IRQ 11
	Memory at d0000000 (32-bit, prefetchable) [size=128M]
	I/O ports at 3000 [size=256]
	Memory at d8400000 (32-bit, non-prefetchable) [size=64K]
	[virtual] Expansion ROM at d8420000 [disabled] [size=128K]
	Capabilities: [50] Power Management version 2

The -t option displays all pci device in a tree-like diagram containing all buses, bridges, devices and connections between them:
$ lspci -tv
Sample outputs:

-[0000:00]-+-00.0  Intel Corporation Core Processor DMI
           +-03.0-[0000:01]----00.0  nVidia Corporation G92 [Quadro FX 2800M]
           +-08.0  Intel Corporation Core Processor System Management Registers
           +-08.1  Intel Corporation Core Processor Semaphore and Scratchpad Registers
           +-08.2  Intel Corporation Core Processor System Control and Status Registers
           +-08.3  Intel Corporation Core Processor Miscellaneous Registers
           +-10.0  Intel Corporation Core Processor QPI Link
           +-10.1  Intel Corporation Core Processor QPI Routing and Protocol Registers
           +-1a.0  Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller
           +-1b.0  Intel Corporation 5 Series/3400 Series Chipset High Definition Audio
           +-1c.0-[0000:0b]--
           +-1c.1-[0000:0c]--
           +-1c.2-[0000:0d]--
           +-1c.3-[0000:0e-0f]--
           +-1c.4-[0000:10]--
           +-1c.5-[0000:09]----00.0  Broadcom Corporation NetXtreme BCM5761e Gigabit Ethernet PCIe
           +-1c.6-[0000:11]--
           +-1c.7-[0000:12]--
           +-1d.0  Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller
           +-1e.0-[0000:03-07]--+-01.0  Texas Instruments PCIxx12 Cardbus Controller
           |                    +-01.1  Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller
           |                    +-01.2  Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)
           |                    \-01.3  Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller
           +-1f.0  Intel Corporation Mobile 5 Series Chipset LPC Interface Controller
           +-1f.2  Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller
           \-1f.3  Intel Corporation 5 Series/3400 Series Chipset SMBus Controller

GUI Tool: GNOME Device Manager

GNOME Device Manager is a complex program to give info about installed hardware including PCI devices. It cab be installed as follows
$ sudo apt-get install gnome-device-manager
Type the following command to start GNOME Device Manager, enter:
$ gnome-device-manager
Sample outputs:

Fig.01: Linux Device Manager application for finding the details of your hardware.

Fig.01: Linux Device Manager application for finding the details of your hardware.

hardinfo: Hardware Analysis Program

HardInfo is another GUI tool for hardware analysis and system benchmark under Linux operating system. To install hardinfo, type:
$ sudo apt-get install hardinfo
To start hardinfo from the command line, enter:
$ hardinfo
Sample outputs:

Fig.02: hardinfo - Another Linux system information application in action

Fig.02: hardinfo - Another Linux system information application in action

lshw CLI Application

The lshw command finds out detailed information on the hardware configuration of the machine including PCI devices. To install the same, enter:
$ sudo apt-get install lshw
OR
$ sudo yum install lshw
To run short report, enter (it must be run as root):
# lshw -short
Sample outputs:

H/W path            Device     Class      Description
=====================================================
                               system     X7DBR-3
/0                             bus        X7DBR-3
/0/0                           memory     108KiB BIOS
/0/4                           processor  Intel(R) Xeon(R) CPU            5130  @ 2.00GHz
/0/4/6                         memory     16KiB L1 cache
/0/4/7                         memory     4MiB L2 cache
/0/5                           processor  Intel(R) Xeon(R) CPU            5130  @ 2.00GHz
/0/5/8                         memory     16KiB L1 cache
/0/5/9                         memory     4MiB L2 cache
/0/16                          memory     8GiB System Memory
/0/16/0                        memory     2GiB DIMM Synchronous 667 MHz (1.5 ns)
/0/16/1                        memory     DIMM Synchronous 667 MHz (1.5 ns) [empty]
/0/16/2                        memory     2GiB DIMM Synchronous 667 MHz (1.5 ns)
/0/16/3                        memory     DIMM Synchronous 667 MHz (1.5 ns) [empty]
/0/16/4                        memory     2GiB DIMM Synchronous 667 MHz (1.5 ns)
/0/16/5                        memory     DIMM Synchronous 667 MHz (1.5 ns) [empty]
/0/16/6                        memory     2GiB DIMM Synchronous 667 MHz (1.5 ns)
/0/16/7                        memory     DIMM Synchronous 667 MHz (1.5 ns) [empty]
/0/6                           processor
/0/1                           generic
/0/2                           generic
/0/3                           generic
/0/7                           generic
/0/100                         bridge     5000P Chipset Memory Controller Hub
/0/100/2                       bridge     5000 Series Chipset PCI Express x8 Port 2-3
/0/100/2/0                     bridge     6311ESB/6321ESB PCI Express Upstream Port
/0/100/2/0/0                   bridge     6311ESB/6321ESB PCI Express Downstream Port E1
/0/100/2/0/2                   bridge     6311ESB/6321ESB PCI Express Downstream Port E3
/0/100/2/0/2/0      eth0       network    80003ES2LAN Gigabit Ethernet Controller (Copper)
/0/100/2/0/2/0.1    eth1       network    80003ES2LAN Gigabit Ethernet Controller (Copper)
/0/100/2/0.3                   bridge     6311ESB/6321ESB PCI Express to PCI-X Bridge
/0/100/4                       bridge     5000 Series Chipset PCI Express x8 Port 4-5
/0/100/4/0          scsi0      storage    AAC-RAID
/0/100/4/0/0.0.0    /dev/sda   disk       73GB raid1-a
/0/100/4/0/0.0.0/1  /dev/sda1  volume     101MiB EXT3 volume
/0/100/4/0/0.0.0/2  /dev/sda2  volume     67GiB EXT3 volume
/0/100/4/0/0.0.0/3  /dev/sda3  volume     1027MiB Linux swap volume
/0/100/4/0/1.0.0               disk       87GB MAX3073RC
/0/100/4/0/1.1.0               disk       87GB MAX3073RC
/0/100/6                       bridge     5000 Series Chipset PCI Express x8 Port 6-7
/0/100/8                       system     5000 Series Chipset DMA Engine
/0/100/1c                      bridge     631xESB/632xESB/3100 Chipset PCI Express Root Port 1
/0/100/1c/0                    bridge     6702PXH PCI Express-to-PCI Bridge A
/0/100/1d                      bus        631xESB/632xESB/3100 Chipset UHCI USB Controller #1
/0/100/1d/1         usb2       bus        UHCI Host Controller
/0/100/1d.1                    bus        631xESB/632xESB/3100 Chipset UHCI USB Controller #2
/0/100/1d.1/1       usb3       bus        UHCI Host Controller
/0/100/1d.2                    bus        631xESB/632xESB/3100 Chipset UHCI USB Controller #3
/0/100/1d.2/1       usb4       bus        UHCI Host Controller
/0/100/1d.3                    bus        631xESB/632xESB/3100 Chipset UHCI USB Controller #4
/0/100/1d.3/1       usb5       bus        UHCI Host Controller
/0/100/1d.3/1/1                input      Multidevice
/0/100/1d.7                    bus        631xESB/632xESB/3100 Chipset EHCI USB2 Controller
/0/100/1d.7/1       usb1       bus        EHCI Host Controller
/0/100/1e                      bridge     82801 PCI Bridge
/0/100/1e/1                    display    ES1000
/0/100/1f                      bridge     631xESB/632xESB/3100 Chipset LPC Interface Controller
/0/100/1f.1                    storage    631xESB/632xESB IDE Controller
/0/100/1f.1/0       ide0       bus        IDE Channel 0
/0/100/1f.1/0/1     /dev/hdb   disk       Slimtype COMBO SSC-2485K
/0/100/1f.2                    storage    631xESB/632xESB/3100 Chipset SATA IDE Controller
/0/100/1f.3                    bus        631xESB/632xESB/3100 Chipset SMBus Controller
/0/101                         bridge     5000 Series Chipset FSB Registers
/0/102                         bridge     5000 Series Chipset FSB Registers
/0/103                         bridge     5000 Series Chipset FSB Registers
/0/104                         bridge     5000 Series Chipset Reserved Registers
/0/105                         bridge     5000 Series Chipset Reserved Registers
/0/106                         bridge     5000 Series Chipset FBD Registers
/0/107                         bridge     5000 Series Chipset FBD Registers

To get detailed information, enter:
# lshw
Sample outputs:

server1.cyberciti.biz
description: Computer
product: X7DBR-3
vendor: Supermicro
version: 0123456789
serial: 0123456789
width: 32 bits
capabilities: smbios-2.5 dmi-2.5 smp-1.4 smp
configuration: administrator_password=enabled boot=normal cpus=3 frontpanel_password=unknown keyboard_password=unknown power-on_password=disabled uuid=53D19F64-D663-A017-8922-00304832D7AA
*-core
description: Motherboard
product: X7DBR-3
vendor: Supermicro
physical id: 0
version: PCB Version
serial: 0123456789
slot: Intel Dempsey/Blackford/ESB2
*-firmware
description: BIOS
vendor: Phoenix Technologies LTD
physical id: 0
version: 2.1 (06/23/2008)
size: 108KiB
capacity: 960KiB
capabilities: pci pnp upgrade shadowing escd cdboot bootselect edd int13floppy2880 acpi usb ls120boot zipboot biosbootspecification
*-cpu:0
description: CPU
product: Intel(R) Xeon(R) CPU 5130 @ 2.00GHz
vendor: Intel Corp.
physical id: 4
bus info: cpu@0
version: 6.15.6
slot: LGA771/CPU1
size: 2GHz
width: 64 bits
clock: 1333MHz
capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx x86-64 constant_tsc pni monitor ds_cpl vmx tm2 ssse3 cx16 xtpr lahf_lm
....
....
..
*-pci:4
description: PCI bridge
product: 82801 PCI Bridge
vendor: Intel Corporation
physical id: 1e
bus info: pci@0000:00:1e.0
version: d9
width: 32 bits
clock: 33MHz
capabilities: pci subtractive_decode bus_master cap_list
*-display UNCLAIMED
description: VGA compatible controller
product: ES1000
vendor: ATI Technologies Inc
physical id: 1
bus info: pci@0000:0a:01.0
version: 02
width: 32 bits
clock: 33MHz
capabilities: pm vga_controller bus_master cap_list
configuration: latency=66 mingnt=8
*-isa

(output truncated)

dmidecode Command Line

dmidecode command is used for dumping a computer's DMI (SMBIOS) table contents on screen. This table contains a description of the system’s hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision.

See also:

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 1 comment… read it below or add one }

1 krish April 28, 2012 at 5:42 am

Find out serial / model number and vendor information of network card

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: