Module Name: src
Committed By: ryo
Date: Thu Feb 18 17:56:04 UTC 2021
Modified Files:
src/sys/dev/pci: if_aq.c
Log Message:
- use if_initialize() and if_register() instead of if_attach()
- add IFEF_MPSAFE to if_extflags
pointed out by msaitoh@, thanks
To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 src/sys/dev/pci/if_aq.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/pci/if_aq.c
diff -u src/sys/dev/pci/if_aq.c:1.19 src/sys/dev/pci/if_aq.c:1.20
--- src/sys/dev/pci/if_aq.c:1.19 Thu Sep 24 05:13:03 2020
+++ src/sys/dev/pci/if_aq.c Thu Feb 18 17:56:04 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: if_aq.c,v 1.19 2020/09/24 05:13:03 ryo Exp $ */
+/* $NetBSD: if_aq.c,v 1.20 2021/02/18 17:56:04 ryo Exp $ */
/**
* aQuantia Corporation Network Driver
@@ -62,7 +62,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_aq.c,v 1.19 2020/09/24 05:13:03 ryo Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_aq.c,v 1.20 2021/02/18 17:56:04 ryo Exp $");
#ifdef _KERNEL_OPT
#include "opt_if_aq.h"
@@ -1407,6 +1407,7 @@ aq_attach(device_t parent, device_t self
strlcpy(ifp->if_xname, device_xname(self), IFNAMSIZ);
ifp->if_softc = sc;
ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST;
+ ifp->if_extflags = IFEF_MPSAFE;
ifp->if_baudrate = IF_Gbps(10);
ifp->if_init = aq_init;
ifp->if_ioctl = aq_ioctl;
@@ -1463,11 +1464,18 @@ aq_attach(device_t parent, device_t self
/* RX hardware checksum offloadding */
ifp->if_capabilities |= IFCAP_CSUM_IPv4_Rx;
- if_attach(ifp);
+ error = if_initialize(ifp);
+ if (error != 0) {
+ aprint_error_dev(sc->sc_dev, "if_initialize failed(%d)\n",
+ error);
+ goto attach_failure;
+ }
+ ifp->if_percpuq = if_percpuq_create(ifp);
if_deferred_start_init(ifp, NULL);
ether_ifattach(ifp, sc->sc_enaddr.ether_addr_octet);
ether_set_vlan_cb(&sc->sc_ethercom, aq_vlan_cb);
ether_set_ifflags_cb(&sc->sc_ethercom, aq_ifflags_cb);
+ if_register(ifp);
aq_enable_intr(sc, true, false); /* only intr about link */