Module Name:    src
Committed By:   thorpej
Date:           Mon Mar  2 15:13:24 UTC 2020

Modified Files:
        src/sys/dev/pci: if_stge.c

Log Message:
Duh, acctually use all 64-bits when giving the rings to the chip.


To generate a diff of this commit:
cvs rdiff -u -r1.82 -r1.83 src/sys/dev/pci/if_stge.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_stge.c
diff -u src/sys/dev/pci/if_stge.c:1.82 src/sys/dev/pci/if_stge.c:1.83
--- src/sys/dev/pci/if_stge.c:1.82	Sun Mar  1 16:31:01 2020
+++ src/sys/dev/pci/if_stge.c	Mon Mar  2 15:13:23 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_stge.c,v 1.82 2020/03/01 16:31:01 thorpej Exp $	*/
+/*	$NetBSD: if_stge.c,v 1.83 2020/03/02 15:13:23 thorpej Exp $	*/
 
 /*-
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_stge.c,v 1.82 2020/03/01 16:31:01 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_stge.c,v 1.83 2020/03/02 15:13:23 thorpej Exp $");
 
 
 #include <sys/param.h>
@@ -1593,11 +1593,13 @@ stge_init(struct ifnet *ifp)
 	/*
 	 * Give the transmit and receive ring to the chip.
 	 */
-	CSR_WRITE_4(sc, STGE_TFDListPtrHi, 0); /* NOTE: 32-bit DMA */
+	CSR_WRITE_4(sc, STGE_TFDListPtrHi,
+	    ((uint64_t)STGE_CDTXADDR(sc, sc->sc_txdirty)) >> 32);
 	CSR_WRITE_4(sc, STGE_TFDListPtrLo,
 	    STGE_CDTXADDR(sc, sc->sc_txdirty));
 
-	CSR_WRITE_4(sc, STGE_RFDListPtrHi, 0); /* NOTE: 32-bit DMA */
+	CSR_WRITE_4(sc, STGE_RFDListPtrHi,
+	    ((uint64_t)STGE_CDRXADDR(sc, sc->sc_rxptr)) >> 32);
 	CSR_WRITE_4(sc, STGE_RFDListPtrLo,
 	    STGE_CDRXADDR(sc, sc->sc_rxptr));
 

Reply via email to