From 314f76f867799057868e00d45bbcf2c2e9fffb59 Mon Sep 17 00:00:00 2001 From: rjs Date: Thu, 13 Aug 2015 14:51:35 +0000 Subject: [PATCH] Add gem versions of collision counters. --- sys/dev/cadence/cemacreg.h | 4 +++- sys/dev/cadence/if_cemac.c | 10 +++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/sys/dev/cadence/cemacreg.h b/sys/dev/cadence/cemacreg.h index 4d68f11b8c78..0963ad849b49 100644 --- a/sys/dev/cadence/cemacreg.h +++ b/sys/dev/cadence/cemacreg.h @@ -1,4 +1,4 @@ -/* $NetBSD: cemacreg.h,v 1.1 2015/01/23 12:34:09 hkenken Exp $ */ +/* $NetBSD: cemacreg.h,v 1.2 2015/08/13 14:51:35 rjs Exp $ */ /*- * Copyright (c) 2015 Genetec Corporation. All rights reserved. @@ -109,6 +109,8 @@ #define GEM_SA3H 0x009C #define GEM_SA4L 0x0090 #define GEM_SA4H 0x0094 +#define GEM_SCOL 0x0138 +#define GEM_MCOL 0x013C #define GEM_DCFG2 0x0284 #define GEM_DCFG3 0x0288 #define GEM_DCFG4 0x028C diff --git a/sys/dev/cadence/if_cemac.c b/sys/dev/cadence/if_cemac.c index e5f92ad559f3..01cd95a06512 100644 --- a/sys/dev/cadence/if_cemac.c +++ b/sys/dev/cadence/if_cemac.c @@ -1,4 +1,4 @@ -/* $NetBSD: if_cemac.c,v 1.2 2015/05/20 09:17:18 ozaki-r Exp $ */ +/* $NetBSD: if_cemac.c,v 1.3 2015/08/13 14:51:35 rjs Exp $ */ /* * Copyright (c) 2015 Genetec Corporation. All rights reserved. @@ -40,7 +40,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_cemac.c,v 1.2 2015/05/20 09:17:18 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_cemac.c,v 1.3 2015/08/13 14:51:35 rjs Exp $"); #include #include @@ -689,7 +689,11 @@ cemac_tick(void *arg) struct ifnet * ifp = &sc->sc_ethercom.ec_if; int s; - ifp->if_collisions += CEMAC_READ(ETH_SCOL) + CEMAC_READ(ETH_MCOL); + if (ISSET(sc->cemac_flags, CEMAC_FLAG_GEM)) + ifp->if_collisions += CEMAC_READ(GEM_SCOL) + CEMAC_READ(GEM_MCOL); + else + ifp->if_collisions += CEMAC_READ(ETH_SCOL) + CEMAC_READ(ETH_MCOL); + /* These misses are ok, they will happen if the RAM/CPU can't keep up */ if (!ISSET(sc->cemac_flags, CEMAC_FLAG_GEM)) { uint32_t misses = CEMAC_READ(ETH_DRFC);