gflt400: Configure both Ethernet MACs

Configures both Ethernet MACs (SGMII and PHY) on the 88F6601:

 - ethSataComplexOpt: as requested by Marvell in go/fibercl/82370
 - setting additional bit for SGMII_1G (Marvell's patch only set
   it for 2.5G)
 - adds some SGMII print statements during boot

Change-Id: Ie2c7ab8782d6b9509b22e191bf5d2edc49989ee9
diff --git a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.c b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.c
index 38b5617..28979e1 100644
--- a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.c
+++ b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvLib.c
@@ -2296,7 +2296,8 @@
 		mvOsOutput("       3xFE PHY Module.\n");
 
 	/* Internal FE/GE Phy */
-	if (DB_88F6601_BP_ID == mvBoardIdGet()) {
+	if (DB_88F6601_BP_ID == mvBoardIdGet() ||
+            GFLT400_ID == mvBoardIdGet() ) {
 		if (ethConfig & ESC_OPT_GEPHY_MAC0) {
 			mvOsOutput("       GE-PHY on MAC0.\n");
 			mvOsOutput("       LP SERDES on MAC1.\n");
diff --git a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.c b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.c
index 902a50e..a03b2bd 100644
--- a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.c
+++ b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.c
@@ -1714,7 +1714,7 @@
 MV_BOARD_MPP_TYPE_INFO gflt400InfoBoardMppTypeInfo[] = {
 	{
 		.boardMppTdm = MV_BOARD_AUTO,
-		.ethSataComplexOpt = ESC_OPT_GEPHY_MAC0,
+		.ethSataComplexOpt = ESC_OPT_GEPHY_MAC0 | ESC_OPT_SGMII,
 		.ethPortsMode = 0x0
 	}
 };
diff --git a/board/mv_feroceon/mv_kw2/mv_phy.c b/board/mv_feroceon/mv_kw2/mv_phy.c
index d5f8ce9..bf374ad 100755
--- a/board/mv_feroceon/mv_kw2/mv_phy.c
+++ b/board/mv_feroceon/mv_kw2/mv_phy.c
@@ -489,6 +489,14 @@
       MV_REG_WRITE(SYNC_PATTERN_REG, reg |= (1 << 10));
     }
 
+    // Configuring this bit sets eth1 into SGMII, which Marvell's patch does do
+    // for 2.5G (right below), but not for 1G. So we had to add it manually
+    if (mvBoardIdGet() == GFLT400_ID)
+    {
+      reg = MV_REG_READ(PORT_MAC_CTRL_REG2(port));
+      MV_REG_WRITE(PORT_MAC_CTRL_REG2(port), reg |= (1 << 3));
+      printf("MTL: Init SGMII@1G on MAC %d: 0x%x=0x%x\n", port, PORT_MAC_CTRL_REG2(port), reg |= (1 << 3));
+    }
   }
   else if (mode == PHY_SGMII_2_5G)
   {