Module Name: src
Committed By: ozaki-r
Date: Mon Feb 20 08:25:57 UTC 2017
Modified Files:
src/sys/arch/arm/at91: at91emac.c
src/sys/arch/arm/gemini: if_gmc.c
src/sys/arch/arm/rockchip: rockchip_emac.c
src/sys/arch/mips/ralink: ralink_eth.c
src/sys/arch/mips/sibyte/dev: sbmac.c
Log Message:
Apply deferred if_start to more drivers...
To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/sys/arch/arm/at91/at91emac.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/gemini/if_gmc.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/rockchip/rockchip_emac.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/mips/ralink/ralink_eth.c
cvs rdiff -u -r1.47 -r1.48 src/sys/arch/mips/sibyte/dev/sbmac.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/arch/arm/at91/at91emac.c
diff -u src/sys/arch/arm/at91/at91emac.c:1.18 src/sys/arch/arm/at91/at91emac.c:1.19
--- src/sys/arch/arm/at91/at91emac.c:1.18 Thu Dec 15 09:28:02 2016
+++ src/sys/arch/arm/at91/at91emac.c Mon Feb 20 08:25:57 2017
@@ -1,5 +1,5 @@
-/* $Id: at91emac.c,v 1.18 2016/12/15 09:28:02 ozaki-r Exp $ */
-/* $NetBSD: at91emac.c,v 1.18 2016/12/15 09:28:02 ozaki-r Exp $ */
+/* $Id: at91emac.c,v 1.19 2017/02/20 08:25:57 ozaki-r Exp $ */
+/* $NetBSD: at91emac.c,v 1.19 2017/02/20 08:25:57 ozaki-r Exp $ */
/*
* Copyright (c) 2007 Embedtronics Oy
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: at91emac.c,v 1.18 2016/12/15 09:28:02 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: at91emac.c,v 1.19 2017/02/20 08:25:57 ozaki-r Exp $");
#include <sys/types.h>
#include <sys/param.h>
@@ -312,9 +312,8 @@ emac_intr(void *arg)
// bus_dmamap_sync(sc->sc_dmat, sc->rbqpage_dmamap, 0, sc->rbqlen, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
}
- if (emac_gctx(sc) > 0 && IFQ_IS_EMPTY(&ifp->if_snd) == 0) {
- emac_ifstart(ifp);
- }
+ if (emac_gctx(sc) > 0)
+ if_schedule_deferred_start(ifp);
#if 0 // reloop
irq = EMAC_READ(IntStsC);
if ((irq & (IntSts_RxSQ|IntSts_ECI)) != 0)
@@ -496,6 +495,7 @@ emac_init(struct emac_softc *sc)
ifp->if_softc = sc;
IFQ_SET_READY(&ifp->if_snd);
if_attach(ifp);
+ if_deferred_start_init(ifp, NULL);
ether_ifattach(ifp, (sc)->sc_enaddr);
}
Index: src/sys/arch/arm/gemini/if_gmc.c
diff -u src/sys/arch/arm/gemini/if_gmc.c:1.6 src/sys/arch/arm/gemini/if_gmc.c:1.7
--- src/sys/arch/arm/gemini/if_gmc.c:1.6 Tue Jun 11 16:57:05 2013
+++ src/sys/arch/arm/gemini/if_gmc.c Mon Feb 20 08:25:57 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: if_gmc.c,v 1.6 2013/06/11 16:57:05 msaitoh Exp $ */
+/* $NetBSD: if_gmc.c,v 1.7 2017/02/20 08:25:57 ozaki-r Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -47,7 +47,7 @@
#include <net/if_ether.h>
#include <net/if_dl.h>
-__KERNEL_RCSID(0, "$NetBSD: if_gmc.c,v 1.6 2013/06/11 16:57:05 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_gmc.c,v 1.7 2017/02/20 08:25:57 ozaki-r Exp $");
#define MAX_TXSEG 32
@@ -711,7 +711,7 @@ gmc_intr(void *arg)
bus_space_write_4(sc->sc_iot, sc->sc_ioh, GMAC_INT4_STATUS, status);
if (do_ifstart)
- gmc_ifstart(&sc->sc_if);
+ if_schedule_deferred_start(&sc->sc_if);
aprint_debug_dev(sc->sc_dev, "gmac_intr: sts=%#x/%#x/%#x/%#x/%#x\n",
bus_space_read_4(sc->sc_iot, sc->sc_ioh, GMAC_INT0_STATUS),
@@ -795,6 +795,7 @@ gmc_attach(device_t parent, device_t sel
gmc_mediastatus);
if_attach(ifp);
+ if_deferred_start_init(ifp, NULL);
ether_ifattach(ifp, eaddrs[gma->gma_port]);
mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff,
gma->gma_phy, MII_OFFSET_ANY, 0);
Index: src/sys/arch/arm/rockchip/rockchip_emac.c
diff -u src/sys/arch/arm/rockchip/rockchip_emac.c:1.16 src/sys/arch/arm/rockchip/rockchip_emac.c:1.17
--- src/sys/arch/arm/rockchip/rockchip_emac.c:1.16 Thu Dec 15 09:28:02 2016
+++ src/sys/arch/arm/rockchip/rockchip_emac.c Mon Feb 20 08:25:57 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: rockchip_emac.c,v 1.16 2016/12/15 09:28:02 ozaki-r Exp $ */
+/* $NetBSD: rockchip_emac.c,v 1.17 2017/02/20 08:25:57 ozaki-r Exp $ */
/*-
* Copyright (c) 2015 Jared D. McNeill <[email protected]>
@@ -29,7 +29,7 @@
#include "opt_rkemac.h"
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rockchip_emac.c,v 1.16 2016/12/15 09:28:02 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rockchip_emac.c,v 1.17 2017/02/20 08:25:57 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -275,6 +275,7 @@ rkemac_attach(device_t parent, device_t
ifmedia_set(&mii->mii_media, IFM_ETHER|IFM_AUTO);
if_attach(ifp);
+ if_deferred_start_init(ifp, NULL);
ether_ifattach(ifp, enaddr);
EMAC_WRITE(sc, EMAC_ENABLE_REG, RKEMAC_ENABLE_INTR);
@@ -401,7 +402,7 @@ rkemac_intr(void *priv)
ifp->if_oerrors++;
if (stat & (EMAC_STAT_TXINT|EMAC_STAT_RXINT))
- rkemac_start(ifp);
+ if_schedule_deferred_start(ifp);
return 1;
}
Index: src/sys/arch/mips/ralink/ralink_eth.c
diff -u src/sys/arch/mips/ralink/ralink_eth.c:1.12 src/sys/arch/mips/ralink/ralink_eth.c:1.13
--- src/sys/arch/mips/ralink/ralink_eth.c:1.12 Thu Dec 15 09:28:03 2016
+++ src/sys/arch/mips/ralink/ralink_eth.c Mon Feb 20 08:25:57 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: ralink_eth.c,v 1.12 2016/12/15 09:28:03 ozaki-r Exp $ */
+/* $NetBSD: ralink_eth.c,v 1.13 2017/02/20 08:25:57 ozaki-r Exp $ */
/*-
* Copyright (c) 2011 CradlePoint Technology, Inc.
* All rights reserved.
@@ -29,7 +29,7 @@
/* ralink_eth.c -- Ralink Ethernet Driver */
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ralink_eth.c,v 1.12 2016/12/15 09:28:03 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ralink_eth.c,v 1.13 2017/02/20 08:25:57 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -524,6 +524,7 @@ ralink_eth_attach(device_t parent, devic
/* Attach the interface. */
if_attach(ifp);
+ if_deferred_start_init(ifp, NULL);
ether_ifattach(ifp, enaddr);
/* init our mii ticker */
@@ -1446,7 +1447,7 @@ ralink_eth_intr(void *arg)
}
/* Try to get more packets going. */
- ralink_eth_start(&sc->sc_ethercom.ec_if);
+ if_schedule_deferred_start(&sc->sc_ethercom.ec_if);
return 1;
}
Index: src/sys/arch/mips/sibyte/dev/sbmac.c
diff -u src/sys/arch/mips/sibyte/dev/sbmac.c:1.47 src/sys/arch/mips/sibyte/dev/sbmac.c:1.48
--- src/sys/arch/mips/sibyte/dev/sbmac.c:1.47 Thu Dec 15 09:28:03 2016
+++ src/sys/arch/mips/sibyte/dev/sbmac.c Mon Feb 20 08:25:57 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: sbmac.c,v 1.47 2016/12/15 09:28:03 ozaki-r Exp $ */
+/* $NetBSD: sbmac.c,v 1.48 2017/02/20 08:25:57 ozaki-r Exp $ */
/*
* Copyright 2000, 2001, 2004
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sbmac.c,v 1.47 2016/12/15 09:28:03 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sbmac.c,v 1.48 2017/02/20 08:25:57 ozaki-r Exp $");
#include "opt_inet.h"
#include "opt_ns.h"
@@ -1754,7 +1754,7 @@ sbmac_intr(void *xsc, uint32_t status, v
}
/* try to get more packets going */
- sbmac_start(ifp);
+ if_schedule_deferred_start(ifp);
}
@@ -2353,5 +2353,6 @@ sbmac_attach(device_t parent, device_t s
* Call MI attach routines.
*/
if_attach(ifp);
+ if_deferred_start_init(ifp, NULL);
ether_ifattach(ifp, eaddr);
}