Module Name: src
Committed By: nisimura
Date: Tue Dec 21 12:12:52 UTC 2021
Modified Files:
src/sys/arch/arm/sociox: if_scx.c
Log Message:
correct register definition error and improve naming
To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 src/sys/arch/arm/sociox/if_scx.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/sociox/if_scx.c
diff -u src/sys/arch/arm/sociox/if_scx.c:1.31 src/sys/arch/arm/sociox/if_scx.c:1.32
--- src/sys/arch/arm/sociox/if_scx.c:1.31 Tue Dec 21 11:07:51 2021
+++ src/sys/arch/arm/sociox/if_scx.c Tue Dec 21 12:12:52 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: if_scx.c,v 1.31 2021/12/21 11:07:51 nisimura Exp $ */
+/* $NetBSD: if_scx.c,v 1.32 2021/12/21 12:12:52 nisimura Exp $ */
/*-
* Copyright (c) 2020 The NetBSD Foundation, Inc.
@@ -46,7 +46,7 @@
#define NOT_MP_SAFE 0
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_scx.c,v 1.31 2021/12/21 11:07:51 nisimura Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_scx.c,v 1.32 2021/12/21 12:12:52 nisimura Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -163,12 +163,13 @@ struct rdes {
#define DESCNF_CHRST (1U<<30) /* channel reset */
#define DESCNF_TMR (1U<<4) /* coalesce timer mode select */
#define DESCNF_LE (1) /* little endian desc format */
-#define TXCOLMAX 0x410 /* tx intr coalesce upper bound */
-#define RXCOLMAX 0x454 /* rx intr coalesce upper bound */
+#define TXSUBMIT 0x410 /* submit loaded tx frame */
+#define TXCLSCMAX 0x418 /* tx intr coalesce upper bound */
+#define RXCLSCMAX 0x458 /* rx intr coalesce upper bound */
#define TXITIMER 0x420 /* coalesce timer usec, MSB to use */
#define RXITIMER 0x460 /* coalesce timer usec, MSB to use */
-#define TXDONECNT 0x424 /* tx completed count, auto-zero */
-#define RXDONECNT 0x458 /* rx available count, auto-zero */
+#define TXDONECNT 0x414 /* tx completed count, auto-zero */
+#define RXDONECNT 0x454 /* rx available count, auto-zero */
#define UCODE_H2M 0x210 /* host2media engine ucode port */
#define UCODE_M2H 0x21c /* media2host engine ucode port */
#define CORESTAT 0x218 /* engine run state */
@@ -1117,8 +1118,8 @@ scx_init(struct ifnet *ifp)
CSR_WRITE(sc, RXIE_CLR, ~0); /* clear Rx interrupt enable */
CSR_WRITE(sc, TXIE_CLR, ~0); /* clear Tx interrupt enable */
- CSR_WRITE(sc, RXCOLMAX, 8); /* Rx coalesce upper bound */
- CSR_WRITE(sc, TXCOLMAX, 8); /* Tx coalesce upper bound */
+ CSR_WRITE(sc, RXCLSCMAX, 8); /* Rx coalesce upper bound */
+ CSR_WRITE(sc, TXCLSCMAX, 8); /* Tx coalesce upper bound */
CSR_WRITE(sc, RXITIMER, 500); /* Rx co. timer usec */
CSR_WRITE(sc, TXITIMER, 500); /* Tx co. timer usec */
@@ -1408,8 +1409,8 @@ scx_start(struct ifnet *ifp)
SCX_CDTXSYNC(sc, sc->sc_txnext, dmamap->dm_nsegs,
BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
- /* Tell DMA start transmit */
- mac_write(sc, GMACTPD, 1);
+ /* submit one frame to xmit */
+ CSR_WRITE(sc, TXSUBMIT, 1);
txs->txs_mbuf = m0;
txs->txs_firstdesc = sc->sc_txnext;