If I run
lsusb I see my USB WiFi device.
Bus 001 Device 006: ID 7392:a812 Edimax Technology Co., Ltd Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.10 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x7392 Edimax Technology Co., Ltd idProduct 0xa812 bcdDevice 2.00 iManufacturer 1 Realtek iProduct 2 Edimax AC600 USB iSerial 3 00e04c000001 bNumConfigurations 1 ...
If I run
lshw I see the driver used by that device is
*-network:1 description: Wireless interface physical id: 3 bus info: usb@1:12 logical name: enp0s20u12 serial: 74:da:38:b9:77:3c capabilities: ethernet physical wireless configuration: broadcast=yes driver=rtl8812au ip=192.168.0.105 multicast=yes wireless=IEEE 802.11AC
journalctl in Arch I see the driver registered is
Sep 30 12:22:20 archlinux kernel: usbcore: registered new interface driver rtl8812au
My understanding is that self-identified fields from a device like vendor id and product id inform the system what sort of driver should be loaded for a device.
But how do I know the chipset? A driver may cover multiple chipsets, right?
So my device could very well be using one of a wide range of chipsets covered by that particular driver.
The sample output I posted makes me think my device is probably an
rtl8812au chipset considering the driver for it is named so specifically.
But the rt2800usb driver really intrigues me. It covers such a wide range of chipsets. If my system showed that the
rt2800usb driver was being loaded, I feel like it wouldn't be nearly as clear what the chipset was.
Is there any way to really know the particular chipset of my device without somehow opening up the device and examining the chip?