Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Jun 2019 21:25:46 +0000 (UTC)
From:      Luiz Otavio O Souza <loos@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r348762 - head/sys/dev/etherswitch/e6000sw
Message-ID:  <201906062125.x56LPkxH035112@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: loos
Date: Thu Jun  6 21:25:46 2019
New Revision: 348762
URL: https://svnweb.freebsd.org/changeset/base/348762

Log:
  Do not overwrite the RGMII bits in the CPU port register of Switch.
  
  Fixes the network on Espressobin.
  
  The GENERIC kernel now boots over NFS.
  
  Sponsored by:	Rubicon Communications, LLC (Netgate)

Modified:
  head/sys/dev/etherswitch/e6000sw/e6000sw.c
  head/sys/dev/etherswitch/e6000sw/e6000swreg.h

Modified: head/sys/dev/etherswitch/e6000sw/e6000sw.c
==============================================================================
--- head/sys/dev/etherswitch/e6000sw/e6000sw.c	Thu Jun  6 21:24:40 2019	(r348761)
+++ head/sys/dev/etherswitch/e6000sw/e6000sw.c	Thu Jun  6 21:25:46 2019	(r348762)
@@ -441,10 +441,12 @@ e6000sw_attach(device_t dev)
 			 * Force speed, full-duplex, EEE off and flow-control
 			 * on.
 			 */
+			reg &= ~(PSC_CONTROL_SPD2500 | PSC_CONTROL_ALT_SPD |
+			    PSC_CONTROL_FORCED_EEE);
 			if (e6000sw_is_fixed25port(sc, port))
-				reg = PSC_CONTROL_SPD2500;
+				reg |= PSC_CONTROL_SPD2500;
 			else
-				reg = PSC_CONTROL_SPD1000;
+				reg |= PSC_CONTROL_SPD1000;
 			reg |= PSC_CONTROL_FORCED_DPX | PSC_CONTROL_FULLDPX |
 			    PSC_CONTROL_FORCED_LINK | PSC_CONTROL_LINK_UP |
 			    PSC_CONTROL_FORCED_FC | PSC_CONTROL_FC_ON |

Modified: head/sys/dev/etherswitch/e6000sw/e6000swreg.h
==============================================================================
--- head/sys/dev/etherswitch/e6000sw/e6000swreg.h	Thu Jun  6 21:24:40 2019	(r348761)
+++ head/sys/dev/etherswitch/e6000sw/e6000swreg.h	Thu Jun  6 21:25:46 2019	(r348762)
@@ -74,6 +74,7 @@ struct atu_opt {
 
 #define PSC_CONTROL			0x1
 #define	PSC_CONTROL_FORCED_SPD		(1 << 13)
+#define	PSC_CONTROL_ALT_SPD		(1 << 12)
 #define	PSC_CONTROL_EEE_ON		(1 << 9)
 #define	PSC_CONTROL_FORCED_EEE		(1 << 8)
 #define	PSC_CONTROL_FC_ON		(1 << 7)



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