Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Jun 2010 13:59:50 +0000 (UTC)
From:      Juli Mallett <jmallett@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r209395 - user/jmallett/octeon/sys/mips/cavium/octe
Message-ID:  <201006211359.o5LDxoSd042461@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jmallett
Date: Mon Jun 21 13:59:49 2010
New Revision: 209395
URL: http://svn.freebsd.org/changeset/base/209395

Log:
  o) Allow for software vlans in MTU calculation.
  o) Reenable cvm_oct_common_set_multicast_list and fix CAM programming to use
     the MAC address without assuming it is badded out to be a 64-bit quantity
     like the code used to do.
  o) Do not fix a typo about rejecting some sort of "multicat".

Modified:
  user/jmallett/octeon/sys/mips/cavium/octe/ethernet-common.c

Modified: user/jmallett/octeon/sys/mips/cavium/octe/ethernet-common.c
==============================================================================
--- user/jmallett/octeon/sys/mips/cavium/octe/ethernet-common.c	Mon Jun 21 13:52:31 2010	(r209394)
+++ user/jmallett/octeon/sys/mips/cavium/octe/ethernet-common.c	Mon Jun 21 13:59:49 2010	(r209395)
@@ -100,7 +100,6 @@ static struct ifnet_stats *cvm_oct_commo
  */
 void cvm_oct_common_set_multicast_list(struct ifnet *ifp)
 {
-#if 0
 	cvmx_gmxx_prtx_cfg_t gmx_cfg;
 	cvm_oct_private_t *priv = (cvm_oct_private_t *)ifp->if_softc;
 	int interface = INTERFACE(priv->port);
@@ -133,7 +132,6 @@ void cvm_oct_common_set_multicast_list(s
 
 		cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmx_cfg.u64);
 	}
-#endif
 }
 
 
@@ -164,12 +162,12 @@ static int cvm_oct_common_set_mac_addres
 		cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmx_cfg.u64 & ~1ull);
 
 		cvmx_write_csr(CVMX_GMXX_SMACX(index, interface), mac);
-		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM0(index, interface), ptr[2]);
-		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM1(index, interface), ptr[3]);
-		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM2(index, interface), ptr[4]);
-		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM3(index, interface), ptr[5]);
-		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM4(index, interface), ptr[6]);
-		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM5(index, interface), ptr[7]);
+		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM0(index, interface), ptr[0]);
+		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM1(index, interface), ptr[1]);
+		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM2(index, interface), ptr[2]);
+		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM3(index, interface), ptr[3]);
+		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM4(index, interface), ptr[4]);
+		cvmx_write_csr(CVMX_GMXX_RXX_ADR_CAM5(index, interface), ptr[5]);
 		cvm_oct_common_set_multicast_list(ifp);
 		cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmx_cfg.u64);
 	}
@@ -189,11 +187,7 @@ int cvm_oct_common_change_mtu(struct ifn
 	cvm_oct_private_t *priv = (cvm_oct_private_t *)ifp->if_softc;
 	int interface = INTERFACE(priv->port);
 	int index = INDEX(priv->port);
-#if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE)
 	int vlan_bytes = 4;
-#else
-	int vlan_bytes = 0;
-#endif
 
 	/* Limit the MTU to make sure the ethernet packets are between 64 bytes
 	   and 65535 bytes */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006211359.o5LDxoSd042461>