PCI and USB Devices task:
Research how to find PCI and USB devices on your system. Write a short summary which
includes the PCI and USB device list - upload and send email to Shuah Khan
<[email protected]>
Hardware: RaspberryPi 4 Model B.
Pci_devices:
PCI (Peripheral Component Interconnect) devices can be listed using the lspci command.
This utility provides detailed information about all connected PCI devices, including graphics
cards, network controllers, and storage controllers.
Output:
sumanth@rp:/sys/bus/usb/devices $ lspci
00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2711 PCIe Bridge (rev 20)
01:00.0 USB controller: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller (rev 01)
//Shows kernel drivers
sumanth@rp:/sys/bus/usb/devices $ lspci -k
00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2711 PCIe Bridge (rev 20)
Kernel driver in use: pcieport
01:00.0 USB controller: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller (rev 01)
Subsystem: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller
Kernel driver in use: xhci_hcd
//Verbose output
sumanth@rp:/sys/bus/usb/devices $ lspci -v
00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2711 PCIe Bridge (rev 20) (prog-if 00
[Normal decode])
Device tree node: /sys/firmware/devicetree/base/scb/pcie@7d500000/pci@0,0
Flags: bus master, fast devsel, latency 0, IRQ 27
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
Memory behind bridge: 00000000-000fffff [size=1M] [32-bit]
Prefetchable memory behind bridge: [disabled] [64-bit]
Capabilities: <access denied>
Kernel driver in use: pcieport
01:00.0 USB controller: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller (rev 01)
(prog-if 30 [XHCI])
Subsystem: VIA Technologies, Inc. VL805/806 xHCI USB 3.0 Controller
Device tree node: /sys/firmware/devicetree/base/scb/pcie@7d500000/pci@0,0/usb@0,0
Flags: bus master, fast devsel, latency 0, IRQ 30
Memory at 600000000 (64-bit, non-prefetchable) [size=4K]
Capabilities: <access denied>Kernel driver in use: xhci_hcd
Usb_devices:
USB devices can be listed using the lsusb command, which displays all connected USB hubs
and devices (keyboards, mice, storage, etc.).
Output:
sumanth@rp:/sys/bus/usb/devices $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
sumanth@rp:/sys/bus/usb/devices $ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M