Hi,
Yes, the patch solves the problem. Linked is up immediately after the boot.
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 -0000 1.11
+++ if_aq.c 22 Apr 2020 08:02:02 -0000
@@ -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