Re: add Aquantia AQC113CS to pcidevs

2023-03-22 Thread Chris Cappuccio
Paul de Weerd [we...@weirdnet.nl] wrote:
> My new motherboard has a 10GB/s interface that doesn't work with
> -current.  It's this thing:
> 

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=bf2320a60e687760400cf964ec3e60ceccb90f93



add Aquantia AQC113CS to pcidevs

2023-03-19 Thread Paul de Weerd
My new motherboard has a 10GB/s interface that doesn't work with
-current.  It's this thing:

--- pcidump -v 7:0:0 -
 7:0:0: Aquantia unknown
0x: Vendor ID: 1d6a, Product ID: 94c0
0x0004: Command: 0006, Status: 0010
0x0008: Class: 02 Network, Subclass: 00 Ethernet,
Interface: 00, Revision: 03
0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
Cache Line Size: 10
0x0010: BAR mem 64bit addr: 0xeb80/0x0008
0x0018: BAR mem 64bit addr: 0xeb8a/0x1000
0x0020: BAR mem 64bit addr: 0xeb40/0x0040
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1043 Product ID: 87f5
0x0030: Expansion ROM Base Address: eb88
0x0038: 
0x003c: Interrupt Pin: 01 Line: ff Min Gnt: 00 Max Lat: 00
0x0040: Capability 0x01: Power Management
State: D0
0x0050: Capability 0x05: Message Signalled Interrupts (MSI)
Enabled: no
0x0070: Capability 0x10: PCI Express
Max Payload Size: 128 / 512 bytes
Max Read Request Size: 512 bytes
Link Speed: 8.0 / 8.0 GT/s
Link Width: x1 / x2
0x0100: Enhanced Capability 0x01: Advanced Error Reporting
0x0148: Enhanced Capability 0x02: Virtual Channel Capability
0x0168: Enhanced Capability 0x03: Device Serial Number
Serial Number: 
0x0178: Enhanced Capability 0x19: Secondary PCIe Capability
0x0198: Enhanced Capability 0x26: Physical Layer 16.0 GT/s
0x01bc: Enhanced Capability 0x27: Lane Margining at the Receiver
0x01d4: Enhanced Capability 0x18: Latency Tolerance Reporting
0x01dc: Enhanced Capability 0x1e: L1 PM
0x01ec: Enhanced Capability 0x0b: Vendor-Specific
0x02ec: Enhanced Capability 0x25: Data Link Feature 
0x02f8: Enhanced Capability 0x1f: Precision Time Measurement
0x0304: Enhanced Capability 0x0b: Vendor-Specific
0x00b0: Capability 0x11: Extended Message Signalled Interrupts (MSI-X)
Enabled: yes; table size 32 (BAR 2:0)
--

Some googling led me to this page which suggests it's AQC113CS:

https://devicehunt.com/view/type/pci/vendor/1D6A/device/94C0

So, this adds Aquantia AQC113CS to pcidevs:

Index: pcidevs
===
RCS file: /cvs/src/sys/dev/pci/pcidevs,v
retrieving revision 1.2026
diff -u -p -r1.2026 pcidevs
--- pcidevs 19 Mar 2023 09:38:06 -  1.2026
+++ pcidevs 19 Mar 2023 14:31:30 -
@@ -1134,6 +1134,7 @@ product AQUANTIA AQC108S  0x88b1  AQC108S
 product AQUANTIA AQC109S   0x89b1  AQC109S
 product AQUANTIA AQC111S   0x91b1  AQC111S
 product AQUANTIA AQC112S   0x92b1  AQC112S
+product AQUANTIA AQC113CS  0x94c0  AQC113CS
 product AQUANTIA D100  0xd100  D100
 product AQUANTIA D107  0xd107  D107
 product AQUANTIA D108  0xd108  D108

It doesn't work yet though:

Index: if_aq_pci.c
===
RCS file: /cvs/src/sys/dev/pci/if_aq_pci.c,v
retrieving revision 1.17
diff -u -p -r1.17 if_aq_pci.c
--- if_aq_pci.c 25 May 2022 09:49:17 -  1.17
+++ if_aq_pci.c 19 Mar 2023 14:32:51 -
@@ -798,6 +798,7 @@ const struct pci_matchid aq_devices[] = 
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC109S },
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC111S },
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC112S },
+   { PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC113CS },
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_D100 },
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_D107 },
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_D108 },

results in:

aq0 at pci7 dev 0 function 0 "Aquantia AQC113CS" rev 0x03: msix, 8 queuesaq0: 
FLB> MAC kickstart failed: timed out
aq0: MAC reset failed: 60

And subsequently no interface is available to the OS after system
start up, so obviously more is needed.

Paul

-- 
>[<++>-]<+++.>+++[<-->-]<.>+++[<+
+++>-]<.>++[<>-]<+.--.[-]
 http://www.weirdnet.nl/