Re: Aquantia AQC100 issues

2023-11-13 Thread Andrius V
This patch seems to work as well without any noticeable difference.

NetBSD is actually reporting device like this:
aq0 at pci8 dev 0 function 0: Aquantia AQC100 10 Gigabit Network
Adapter (rev. 0x02)
aq0: Atlantic revision B1, F/W version 3.1.58

On Sun, Nov 12, 2023 at 11:58 PM matthew green  wrote:
>
> Rin Okuyama writes:
> > Hi Andrius,
> >
> > If you still have this AQC100 in working condition, can you try this patch?
> >
> > https://gist.github.com/rokuyama/ab6ba1a0fac7fa15f243d63a99e14f33
> >
> > I've collected three fibre aq(4) variants (all rev 2), and link status
> > interrupts work just fine for me. I think that link intr did not work for
> > you, not due to fibre variant, but hardware revision. If this is correct,
> > the patch above should work...
>
> this reminded me that my aq(4) doesn't have working link and that
> mlelstv suggested to me that the linux driver always uses a tick
> timer to also check status, as well as interrupts.  i implemented
> this recently and now my aq(4) has link status correctly:
>
>
> aq(4): always poll for link status
>
> some devices don't have working link status and rather than have
> a likely incomplete list of issues, always poll as well as use
> the interrupt if possible.
>
> fixes link status on this device:
>
> aq0 at pci5 dev 0 function 0: Aquantia AQC107 10 Gigabit Network Adapter 
> (rev. 0x02)
> aq0: Atlantic revision B1, F/W version 3.1.88
>
> (was otherwise functional, just didn't report status, which likely
> meant eg, dhcpcd would be upset?)
>
> idea via mlelstv@ from linux.
>
> remove sc_detect_linkstat and rename sc_poll_linkstat to
> sc_no_link_intr, as the meaning has changed.  simplify the signature
> for aq_setup_msix() and aq_establish_msix_intr(), removing forward
> decls that aren't required.  obsolete AQ_FORCE_POLL_LINKSTAT.
>
>
> Index: if_aq.c
> ===
> RCS file: /cvsroot/src/sys/dev/pci/if_aq.c,v
> retrieving revision 1.45
> diff -p -u -r1.45 if_aq.c
> --- if_aq.c 29 May 2023 08:00:05 -  1.45
> +++ if_aq.c 26 Oct 2023 06:55:28 -
> @@ -1330,8 +1330,7 @@ struct aq_softc {
> int sc_rx_irq[AQ_RSSQUEUE_MAX];
> int sc_linkstat_irq;
> bool sc_use_txrx_independent_intr;
> -   bool sc_poll_linkstat;
> -   bool sc_detect_linkstat;
> +   bool sc_no_link_intr;
>
>  #if NSYSMON_ENVSYS > 0
> struct sysmon_envsys *sc_sme;
> @@ -1443,11 +1442,9 @@ static int aq_match(device_t, cfdata_t,
>  static void aq_attach(device_t, device_t, void *);
>  static int aq_detach(device_t, int);
>
> -static int aq_setup_msix(struct aq_softc *, struct pci_attach_args *, int,
> -bool, bool);
> +static int aq_setup_msix(struct aq_softc *, struct pci_attach_args *);
>  static int aq_setup_legacy(struct aq_softc *, struct pci_attach_args *,
>  pci_intr_type_t);
> -static int aq_establish_msix_intr(struct aq_softc *, bool, bool);
>
>  static int aq_ifmedia_change(struct ifnet * const);
>  static void aq_ifmedia_status(struct ifnet * const, struct ifmediareq *);
> @@ -1784,67 +1781,57 @@ aq_attach(device_t parent, device_t self
> if (msixcount >= (sc->sc_nqueues * 2 + 1)) {
> /* TX intrs + RX intrs + LINKSTAT intrs */
> sc->sc_use_txrx_independent_intr = true;
> -   sc->sc_poll_linkstat = false;
> sc->sc_msix = true;
> } else if (msixcount >= (sc->sc_nqueues * 2)) {
> /* TX intrs + RX intrs */
> sc->sc_use_txrx_independent_intr = true;
> -   sc->sc_poll_linkstat = true;
> sc->sc_msix = true;
> } else
>  #endif
> if (msixcount >= (sc->sc_nqueues + 1)) {
> /* TX/RX intrs LINKSTAT intrs */
> sc->sc_use_txrx_independent_intr = false;
> -   sc->sc_poll_linkstat = false;
> sc->sc_msix = true;
> } else if (msixcount >= sc->sc_nqueues) {
> /* TX/RX intrs */
> sc->sc_use_txrx_independent_intr = false;
> -   sc->sc_poll_linkstat = true;
> +   sc->sc_no_link_intr = true;
> sc->sc_msix = true;
> } else {
> /* giving up using MSI-X */
> sc->sc_msix = false;
> }
>
> -   /* on AQ1a0, AQ2, or FIBRE, linkstat interrupt doesn't work? */
> -   if (aqp->aq_media_type == AQ_MEDIA_TYPE_FIBRE ||
> -   (HWTYPE_AQ1_P(sc) && FW_VERSION_MAJOR(sc) == 1) ||
> -   HWTYPE_AQ2_P(sc))
> -   sc->sc_poll_linkstat = true;
> -
> -#ifdef AQ_FORCE_POLL_LINKSTAT
> -   sc->sc_poll_linkstat = true;
> -#endif
> -
> aprint_debug_dev(sc->sc_dev,
> "ncpu=%d, pci_msix_count=%d."
> " allocate %d interrupts for %d%s queues%s\n",
> ncpu, msixcount,
> (sc->sc_use_txrx_independent_intr ?
> (sc->sc_nqueues * 2) : sc->sc_nqueues) +
> -   

re: Aquantia AQC100 issues

2023-11-12 Thread matthew green
Rin Okuyama writes:
> Hi Andrius,
>
> If you still have this AQC100 in working condition, can you try this patch?
>
> https://gist.github.com/rokuyama/ab6ba1a0fac7fa15f243d63a99e14f33
>
> I've collected three fibre aq(4) variants (all rev 2), and link status
> interrupts work just fine for me. I think that link intr did not work for
> you, not due to fibre variant, but hardware revision. If this is correct,
> the patch above should work...

this reminded me that my aq(4) doesn't have working link and that
mlelstv suggested to me that the linux driver always uses a tick
timer to also check status, as well as interrupts.  i implemented
this recently and now my aq(4) has link status correctly:


aq(4): always poll for link status

some devices don't have working link status and rather than have
a likely incomplete list of issues, always poll as well as use
the interrupt if possible.

fixes link status on this device:

aq0 at pci5 dev 0 function 0: Aquantia AQC107 10 Gigabit Network Adapter (rev. 
0x02)
aq0: Atlantic revision B1, F/W version 3.1.88

(was otherwise functional, just didn't report status, which likely
meant eg, dhcpcd would be upset?)

idea via mlelstv@ from linux.

remove sc_detect_linkstat and rename sc_poll_linkstat to
sc_no_link_intr, as the meaning has changed.  simplify the signature
for aq_setup_msix() and aq_establish_msix_intr(), removing forward
decls that aren't required.  obsolete AQ_FORCE_POLL_LINKSTAT.


Index: if_aq.c
===
RCS file: /cvsroot/src/sys/dev/pci/if_aq.c,v
retrieving revision 1.45
diff -p -u -r1.45 if_aq.c
--- if_aq.c 29 May 2023 08:00:05 -  1.45
+++ if_aq.c 26 Oct 2023 06:55:28 -
@@ -1330,8 +1330,7 @@ struct aq_softc {
int sc_rx_irq[AQ_RSSQUEUE_MAX];
int sc_linkstat_irq;
bool sc_use_txrx_independent_intr;
-   bool sc_poll_linkstat;
-   bool sc_detect_linkstat;
+   bool sc_no_link_intr;
 
 #if NSYSMON_ENVSYS > 0
struct sysmon_envsys *sc_sme;
@@ -1443,11 +1442,9 @@ static int aq_match(device_t, cfdata_t, 
 static void aq_attach(device_t, device_t, void *);
 static int aq_detach(device_t, int);
 
-static int aq_setup_msix(struct aq_softc *, struct pci_attach_args *, int,
-bool, bool);
+static int aq_setup_msix(struct aq_softc *, struct pci_attach_args *);
 static int aq_setup_legacy(struct aq_softc *, struct pci_attach_args *,
 pci_intr_type_t);
-static int aq_establish_msix_intr(struct aq_softc *, bool, bool);
 
 static int aq_ifmedia_change(struct ifnet * const);
 static void aq_ifmedia_status(struct ifnet * const, struct ifmediareq *);
@@ -1784,67 +1781,57 @@ aq_attach(device_t parent, device_t self
if (msixcount >= (sc->sc_nqueues * 2 + 1)) {
/* TX intrs + RX intrs + LINKSTAT intrs */
sc->sc_use_txrx_independent_intr = true;
-   sc->sc_poll_linkstat = false;
sc->sc_msix = true;
} else if (msixcount >= (sc->sc_nqueues * 2)) {
/* TX intrs + RX intrs */
sc->sc_use_txrx_independent_intr = true;
-   sc->sc_poll_linkstat = true;
sc->sc_msix = true;
} else
 #endif
if (msixcount >= (sc->sc_nqueues + 1)) {
/* TX/RX intrs LINKSTAT intrs */
sc->sc_use_txrx_independent_intr = false;
-   sc->sc_poll_linkstat = false;
sc->sc_msix = true;
} else if (msixcount >= sc->sc_nqueues) {
/* TX/RX intrs */
sc->sc_use_txrx_independent_intr = false;
-   sc->sc_poll_linkstat = true;
+   sc->sc_no_link_intr = true;
sc->sc_msix = true;
} else {
/* giving up using MSI-X */
sc->sc_msix = false;
}
 
-   /* on AQ1a0, AQ2, or FIBRE, linkstat interrupt doesn't work? */
-   if (aqp->aq_media_type == AQ_MEDIA_TYPE_FIBRE ||
-   (HWTYPE_AQ1_P(sc) && FW_VERSION_MAJOR(sc) == 1) ||
-   HWTYPE_AQ2_P(sc))
-   sc->sc_poll_linkstat = true;
-
-#ifdef AQ_FORCE_POLL_LINKSTAT
-   sc->sc_poll_linkstat = true;
-#endif
-
aprint_debug_dev(sc->sc_dev,
"ncpu=%d, pci_msix_count=%d."
" allocate %d interrupts for %d%s queues%s\n",
ncpu, msixcount,
(sc->sc_use_txrx_independent_intr ?
(sc->sc_nqueues * 2) : sc->sc_nqueues) +
-   (sc->sc_poll_linkstat ? 0 : 1),
+   (sc->sc_no_link_intr ? 0 : 1),
sc->sc_nqueues,
sc->sc_use_txrx_independent_intr ? "*2" : "",
-   sc->sc_poll_linkstat ? "" : ", and link status");
+   (sc->sc_no_link_intr) ? "" : ", and link status");
 
if (sc->sc_msix)
-   error = aq_setup_msix(sc, pa, sc->sc_nqueues,
-   sc->sc_use_txrx_independent_intr, !sc->sc_poll_linkstat);
+   error = aq_setup_msix(sc, pa);
else

Re: Aquantia AQC100 issues

2023-11-11 Thread Andrius V
Hi,

Seems like revision check is enough. I have A1 revision card. I
believe revision checks didn't exist at the time initial if condition
was added for fibre.

On Sat, Nov 11, 2023 at 9:50 AM Rin Okuyama  wrote:
>
> Hi Andrius,
>
> If you still have this AQC100 in working condition, can you try this patch?
>
> https://gist.github.com/rokuyama/ab6ba1a0fac7fa15f243d63a99e14f33
>
> I've collected three fibre aq(4) variants (all rev 2), and link status
> interrupts work just fine for me. I think that link intr did not work for
> you, not due to fibre variant, but hardware revision. If this is correct,
> the patch above should work...
>
> Thanks,
> rin
>
> On Fri, Apr 24, 2020 at 7:10 AM Andrius V  wrote:
> >
> > Thank you for the help and updated code. Retested on current branch,
> > works as expected. Possibly worth to mention AQC100 in  aq.4 as well?
> >
> >
> > On Thu, Apr 23, 2020 at 8:33 AM Ryo Shimizu  wrote:
> > >
> > >
> > > >Yes, the patch solves the problem. Linked is up immediately after the 
> > > >boot.
> > >
> > > I'm relieved. In the interim, I'll commit a fix that always polling 
> > > linkstat when FIBRE.
> > >
> > > thanks,
> > > --
> > > ryo shimizu
> >


Re: Aquantia AQC100 issues

2023-11-10 Thread Rin Okuyama
Hi Andrius,

If you still have this AQC100 in working condition, can you try this patch?

https://gist.github.com/rokuyama/ab6ba1a0fac7fa15f243d63a99e14f33

I've collected three fibre aq(4) variants (all rev 2), and link status
interrupts work just fine for me. I think that link intr did not work for
you, not due to fibre variant, but hardware revision. If this is correct,
the patch above should work...

Thanks,
rin

On Fri, Apr 24, 2020 at 7:10 AM Andrius V  wrote:
>
> Thank you for the help and updated code. Retested on current branch,
> works as expected. Possibly worth to mention AQC100 in  aq.4 as well?
>
>
> On Thu, Apr 23, 2020 at 8:33 AM Ryo Shimizu  wrote:
> >
> >
> > >Yes, the patch solves the problem. Linked is up immediately after the boot.
> >
> > I'm relieved. In the interim, I'll commit a fix that always polling 
> > linkstat when FIBRE.
> >
> > thanks,
> > --
> > ryo shimizu
>


Re: Aquantia AQC100 issues

2020-04-23 Thread Andrius V
Thank you for the help and updated code. Retested on current branch,
works as expected. Possibly worth to mention AQC100 in  aq.4 as well?


On Thu, Apr 23, 2020 at 8:33 AM Ryo Shimizu  wrote:
>
>
> >Yes, the patch solves the problem. Linked is up immediately after the boot.
>
> I'm relieved. In the interim, I'll commit a fix that always polling linkstat 
> when FIBRE.
>
> thanks,
> --
> ryo shimizu


Re: Aquantia AQC100 issues

2020-04-22 Thread Ryo Shimizu


>Yes, the patch solves the problem. Linked is up immediately after the boot.

I'm relieved. In the interim, I'll commit a fix that always polling linkstat 
when FIBRE.

thanks,
-- 
ryo shimizu


Re: Aquantia AQC100 issues

2020-04-22 Thread Andrius V
Hi,

Yes, the patch solves the problem. Linked is up immediately after the boot.


On Wed, Apr 22, 2020, 11:26 Ryo Shimizu  wrote:

>
> Hi!
>
> >> Recently I received Asus XG-C100F SFP+ network controller based on
> >> Aquantia AQC100. Though, it's currently supported by aq(4) driver, I
> >> believe it should be relatively easy to add. I tried to blindly add
> >> the device to the list and even made it work, unfortunately with some
> >> caveats. To make work I need to boot into the system first and
> >> physically reattach the cable (I am using DAC). Even if cable is
> >> attached and system boots, media type is not recognized and reports as
> >> if link is missing, unless I physically reattach it. After that it
> >> properly configures and dhcpcd assigns IP address. I can successfully
> >> access the network. Any ideas why I need to reattach the cable?
>
> I'm not sure, but in the case of FIBRE, the behavior around link status
> may be different from TP.
> As a workaround, following patch to force polling linkstat. Will this
> solve the problem?
>
> cvs -q diff -U8 -a -p if_aq.c
> Index: if_aq.c
> ===
> RCS file: /cvsroot/src/sys/dev/pci/if_aq.c,v
> retrieving revision 1.11
> diff -U 8 -a -p -r1.11 if_aq.c
> --- if_aq.c 15 Feb 2020 12:20:35 -  1.11
> +++ if_aq.c 22 Apr 2020 08:02:02 -
> @@ -1301,16 +1301,21 @@ aq_attach(device_t parent, device_t self
> sc->sc_use_txrx_independent_intr = false;
> sc->sc_poll_linkstat = true;
> sc->sc_msix = true;
> } else {
> /* giving up using MSI-X */
> sc->sc_msix = false;
> }
>
> +#define FORCE_POLL_LINKSTAT
> +#ifdef FORCE_POLL_LINKSTAT
> +   sc->sc_poll_linkstat = true;
> +#endif
> +
> aprint_debug_dev(sc->sc_dev,
> "ncpu=%d, pci_msix_count=%d."
> " allocate %d interrupts for %d%s queues%s\n",
> ncpu, msixcount,
> (sc->sc_use_txrx_independent_intr ?
> (sc->sc_nqueues * 2) : sc->sc_nqueues) +
> (sc->sc_poll_linkstat ? 0 : 1),
> sc->sc_nqueues,
>
>
> Thanks,
> --
> ryo shimizu
>


Re: Aquantia AQC100 issues

2020-04-22 Thread Ryo Shimizu


Hi!

>> Recently I received Asus XG-C100F SFP+ network controller based on
>> Aquantia AQC100. Though, it's currently supported by aq(4) driver, I
>> believe it should be relatively easy to add. I tried to blindly add
>> the device to the list and even made it work, unfortunately with some
>> caveats. To make work I need to boot into the system first and
>> physically reattach the cable (I am using DAC). Even if cable is
>> attached and system boots, media type is not recognized and reports as
>> if link is missing, unless I physically reattach it. After that it
>> properly configures and dhcpcd assigns IP address. I can successfully
>> access the network. Any ideas why I need to reattach the cable?

I'm not sure, but in the case of FIBRE, the behavior around link status
may be different from TP.
As a workaround, following patch to force polling linkstat. Will this
solve the problem?

cvs -q diff -U8 -a -p if_aq.c
Index: if_aq.c
===
RCS file: /cvsroot/src/sys/dev/pci/if_aq.c,v
retrieving revision 1.11
diff -U 8 -a -p -r1.11 if_aq.c
--- if_aq.c 15 Feb 2020 12:20:35 -  1.11
+++ if_aq.c 22 Apr 2020 08:02:02 -
@@ -1301,16 +1301,21 @@ aq_attach(device_t parent, device_t self
sc->sc_use_txrx_independent_intr = false;
sc->sc_poll_linkstat = true;
sc->sc_msix = true;
} else {
/* giving up using MSI-X */
sc->sc_msix = false;
}
 
+#define FORCE_POLL_LINKSTAT
+#ifdef FORCE_POLL_LINKSTAT
+   sc->sc_poll_linkstat = true;
+#endif
+
aprint_debug_dev(sc->sc_dev,
"ncpu=%d, pci_msix_count=%d."
" allocate %d interrupts for %d%s queues%s\n",
ncpu, msixcount,
(sc->sc_use_txrx_independent_intr ?
(sc->sc_nqueues * 2) : sc->sc_nqueues) +
(sc->sc_poll_linkstat ? 0 : 1),
sc->sc_nqueues,


Thanks,
-- 
ryo shimizu


Re: Aquantia AQC100 issues

2020-04-21 Thread Andrius V
Mistyped in my original email: "Though, it's currently supported by
aq(4) driver" ->  "Though, it's currently not supported by aq(4)
driver"

On Wed, Apr 22, 2020 at 1:18 AM Andrius V  wrote:
>
> Hi,
>
> Recently I received Asus XG-C100F SFP+ network controller based on
> Aquantia AQC100. Though, it's currently supported by aq(4) driver, I
> believe it should be relatively easy to add. I tried to blindly add
> the device to the list and even made it work, unfortunately with some
> caveats. To make work I need to boot into the system first and
> physically reattach the cable (I am using DAC). Even if cable is
> attached and system boots, media type is not recognized and reports as
> if link is missing, unless I physically reattach it. After that it
> properly configures and dhcpcd assigns IP address. I can successfully
> access the network. Any ideas why I need to reattach the cable?
>
> Another issue likely unrelated to the driver itself since I had
> similar issues previously: if integrated gigabit ethernet is
> configured during boot as well and I am trying to put it down
> (ifconfig re0 down), aq0 also stops "working" along with it and I
> can't find the way to make it work besides reboot and making sure re0
> is not configured (similar issue I had without vte0 and axen0,
> including much slower transfer speed for axen0, if both working at the
> same time). By that I mean that I can't reach network (even if
> configuration seems correct). ifconfig aq0 down/up or dhcpcd
> release/renew doesn't help, usually it just reassigns to some internal
> IP.
>
> Applied patch:
> diff --git a/sys/dev/pci/if_aq.c b/sys/dev/pci/if_aq.c
> index 02bbffbad31..caf6c81d4d0 100644
> --- a/sys/dev/pci/if_aq.c
> +++ b/sys/dev/pci/if_aq.c
> @@ -1142,6 +1142,10 @@ static const struct aq_product {
> enum aq_media_type aq_media_type;
> aq_link_speed_t aq_available_rates;
>  } aq_products[] = {
> +   { PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC100,
> + "Aquantia AQC100 10 Gigabit Network Adapter",
> + AQ_MEDIA_TYPE_FIBRE, AQ_LINK_ALL
> +   },
> { PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC107,
>   "Aquantia AQC107 10 Gigabit Network Adapter",
>   AQ_MEDIA_TYPE_TP, AQ_LINK_ALL
> diff --git a/sys/dev/pci/pcidevs b/sys/dev/pci/pcidevs
> index 4baa7573e4e..55e33a0a164 100644
> --- a/sys/dev/pci/pcidevs
> +++ b/sys/dev/pci/pcidevs
> @@ -1289,6 +1289,7 @@ product APPLE INTREPID2_GMAC  0x006b  Intrepid 2 
> GMAC
>  product APPLE BCM5701  0x1645  BCM5701
>
>  /* Aquantia Corp. */
> +product AQUANTIA AQC1000x00b1  AQC100 10 Gigabit
> Network Adapter
>  product AQUANTIA AQC1070x07b1  AQC107 10 Gigabit
> Network Adapter
>  product AQUANTIA AQC1080x08b1  AQC108 5 Gigabit Network 
> Adapter
>  product AQUANTIA AQC1090x09b1  AQC109 2.5 Gigabit
> Network Adapter
>
> Regards,
> Andrius V


Aquantia AQC100 issues

2020-04-21 Thread Andrius V
Hi,

Recently I received Asus XG-C100F SFP+ network controller based on
Aquantia AQC100. Though, it's currently supported by aq(4) driver, I
believe it should be relatively easy to add. I tried to blindly add
the device to the list and even made it work, unfortunately with some
caveats. To make work I need to boot into the system first and
physically reattach the cable (I am using DAC). Even if cable is
attached and system boots, media type is not recognized and reports as
if link is missing, unless I physically reattach it. After that it
properly configures and dhcpcd assigns IP address. I can successfully
access the network. Any ideas why I need to reattach the cable?

Another issue likely unrelated to the driver itself since I had
similar issues previously: if integrated gigabit ethernet is
configured during boot as well and I am trying to put it down
(ifconfig re0 down), aq0 also stops "working" along with it and I
can't find the way to make it work besides reboot and making sure re0
is not configured (similar issue I had without vte0 and axen0,
including much slower transfer speed for axen0, if both working at the
same time). By that I mean that I can't reach network (even if
configuration seems correct). ifconfig aq0 down/up or dhcpcd
release/renew doesn't help, usually it just reassigns to some internal
IP.

Applied patch:
diff --git a/sys/dev/pci/if_aq.c b/sys/dev/pci/if_aq.c
index 02bbffbad31..caf6c81d4d0 100644
--- a/sys/dev/pci/if_aq.c
+++ b/sys/dev/pci/if_aq.c
@@ -1142,6 +1142,10 @@ static const struct aq_product {
enum aq_media_type aq_media_type;
aq_link_speed_t aq_available_rates;
 } aq_products[] = {
+   { PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC100,
+ "Aquantia AQC100 10 Gigabit Network Adapter",
+ AQ_MEDIA_TYPE_FIBRE, AQ_LINK_ALL
+   },
{ PCI_VENDOR_AQUANTIA, PCI_PRODUCT_AQUANTIA_AQC107,
  "Aquantia AQC107 10 Gigabit Network Adapter",
  AQ_MEDIA_TYPE_TP, AQ_LINK_ALL
diff --git a/sys/dev/pci/pcidevs b/sys/dev/pci/pcidevs
index 4baa7573e4e..55e33a0a164 100644
--- a/sys/dev/pci/pcidevs
+++ b/sys/dev/pci/pcidevs
@@ -1289,6 +1289,7 @@ product APPLE INTREPID2_GMAC  0x006b  Intrepid 2 GMAC
 product APPLE BCM5701  0x1645  BCM5701

 /* Aquantia Corp. */
+product AQUANTIA AQC1000x00b1  AQC100 10 Gigabit
Network Adapter
 product AQUANTIA AQC1070x07b1  AQC107 10 Gigabit
Network Adapter
 product AQUANTIA AQC1080x08b1  AQC108 5 Gigabit Network Adapter
 product AQUANTIA AQC1090x09b1  AQC109 2.5 Gigabit
Network Adapter

Regards,
Andrius V