prism: added evt2 pin mux'ing and gpio config.

Also made the EVT2 pin mux and GPIO config the default for unknown board
versions.

Change-Id: I797413a5ad31f447602eb0e01f63a83473578130
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 655b861..93f1019 100644
--- a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.c
+++ b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.c
@@ -1189,6 +1189,15 @@
 	{BOARD_GPP_LED, 24, .activeLow = 1, .name = "eth-link"},
 };
 
+MV_BOARD_GPP_INFO gflt200Evt2InfoBoardGppInfo[] = {
+	/* {{MV_BOARD_GPP_CLASS devClass, MV_U8 gppPinNum}} */
+	{BOARD_GPP_PON_XVR_TX, 17},
+	{BOARD_GPP_LED, 11, .name = "pon-red"},
+	{BOARD_GPP_LED, 12, .name = "pon-blue"},
+	{BOARD_GPP_LED, 14, .activeLow = 1, .name = "eth-link"},
+	{BOARD_GPP_LED, 26, .activeLow = 1, .name = "eth-data"},
+};
+
 MV_DEV_CS_INFO gflt200InfoBoardDeCsInfo[] = {
 	/*{deviceCS, params, devType, devWidth} */
 #ifdef MV_SPI
@@ -1210,6 +1219,17 @@
 	 }
 };
 
+MV_BOARD_MPP_INFO gflt200Evt2InfoBoardMppConfigValue[] = {
+	{{
+	  GFLT200_EVT2_MPP0_7,
+	  GFLT200_EVT2_MPP8_15,
+	  GFLT200_EVT2_MPP16_23,
+	  GFLT200_EVT2_MPP24_31,
+	  GFLT200_EVT2_MPP32_37
+	  }
+	 }
+};
+
 /*
 MV_BOARD_SPEC_INIT gflt200BoardSpecInit[] = {
 	{
@@ -1226,6 +1246,7 @@
 
 #define GFLT200_GPP_BOARD_VER_MASK	((1 << 18) | (1 << 15) | (1 << 13))
 #define GFLT200_EVT1_BOARD_VER		(0)
+#define GFLT200_EVT2_BOARD_VER		(1 << 13)
 
 static MV_VOID gflt200BoardInit(MV_BOARD_INFO *pBoardInfo)
 {
@@ -1233,7 +1254,6 @@
 
 	switch (mvGppValueGet(0, GFLT200_GPP_BOARD_VER_MASK)) {
 	case GFLT200_EVT1_BOARD_VER:
-	default: /* latest */
 		pBoardInfo->numBoardMppConfigValue
 			= MV_ARRAY_SIZE(gflt200Evt1InfoBoardMppConfigValue);
 		pBoardInfo->pBoardMppConfigValue
@@ -1248,6 +1268,24 @@
 		pBoardInfo->gppPolarityValLow = GFLT200_EVT1_GPP_POL_LOW;
 		pBoardInfo->gppPolarityValMid = GFLT200_EVT1_GPP_POL_MID;
 		break;
+
+	default:
+		/* fallthrough */
+	case GFLT200_EVT2_BOARD_VER:
+		pBoardInfo->numBoardMppConfigValue
+			= MV_ARRAY_SIZE(gflt200Evt2InfoBoardMppConfigValue);
+		pBoardInfo->pBoardMppConfigValue
+			= gflt200Evt2InfoBoardMppConfigValue;
+		pBoardInfo->numBoardGppInfo
+			= MV_ARRAY_SIZE(gflt200Evt2InfoBoardGppInfo);
+		pBoardInfo->pBoardGppInfo = gflt200Evt2InfoBoardGppInfo;
+		pBoardInfo->gppOutEnValLow = GFLT200_EVT2_GPP_OUT_ENA_LOW;
+		pBoardInfo->gppOutEnValMid = GFLT200_EVT2_GPP_OUT_ENA_MID;
+		pBoardInfo->gppOutValLow = GFLT200_EVT2_GPP_OUT_VAL_LOW;
+		pBoardInfo->gppOutValMid = GFLT200_EVT2_GPP_OUT_VAL_MID;
+		pBoardInfo->gppPolarityValLow = GFLT200_EVT2_GPP_POL_LOW;
+		pBoardInfo->gppPolarityValMid = GFLT200_EVT2_GPP_POL_MID;
+		break;
 	}
 }
 
diff --git a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.h b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.h
index 50ffbd1..25c29b8 100644
--- a/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.h
+++ b/board/mv_feroceon/mv_kw2/kw2_family/boardEnv/mvBoardEnvSpec.h
@@ -472,34 +472,47 @@
 #define GFLT200_EVT1_MPP24_31		0x40200000
 #define GFLT200_EVT1_MPP32_37		0x00000004
 
+#define GFLT200_EVT2_MPP0_7		0x22222220
+#define GFLT200_EVT2_MPP8_15		0x00000002
+#define GFLT200_EVT2_MPP16_23		0x00000000
+#define GFLT200_EVT2_MPP24_31		0x40200004
+#define GFLT200_EVT2_MPP32_37		0x00000004
+
 /* GPPs
- 1 SPI_MOSI (out)
- 2 SPI_SCK (out)
- 3 SPI_CS_L (out)
- 4 SPI_MISO (in)
- 5 I2C_SDA (inout)
- 6 I2C_SCLK (inout)
- 7 UART0_TX (out)
- 8 UART0_RX (in)
- 9 VDD_MARGIN_EN (out)
-10 VDD_MARGIN_CTRL (out)
-11 PON_LINK_LED (out)
-12 PON_ERROR_LED (out)
-13 BOARD_VER[0] (in)
-15 BOARD_VER[1] (in)
-17 SW_RESET (out)
-18 BOARD_VER[2] (in)
-21 PON_TX_DIS (out)
-23 GE_DATA_LED (out)
-24 GE_LINK_LED (out)
-26 PON_C2_DATA (out)
-27 PON_C2_CLK (out)
-28 SPI_WP_L (out)
-29 PON_RX_LOS (in)
-31 UART1_RX (out)
-32 UART2_TX (in)
-36 PON_RX_PMON (in)
-37 PON_PWR_EN_L (out)
+   ... ditto
+   --- unused
+
+   EVT1                   EVT2
+ 1 SPI_MOSI (out)         ...
+ 2 SPI_SCK (out)          ...
+ 3 SPI_CS_L (out)         ...
+ 4 SPI_MISO (in)          ...
+ 5 I2C_SDA (inout)        ...
+ 6 I2C_SCLK (out)         ...
+ 7 UART0_TX (out)         ...
+ 8 UART0_RX (in)          ...
+ 9 VDD_MARGIN_EN (out)    ---
+10 VDD_MARGIN_CTRL (out)  ---
+11 PON_LINK_LED (out)     PON_LED_RED (out)
+12 PON_ERROR_LED (out)    PON_LED_BLUE (out)
+13 BOARD_VER[0] (in)      ...
+14 ---                    GE_LINK_LED (out)
+15 BOARD_VER[1] (in)      ...
+17 SW_RESET (out)         ...
+18 BOARD_VER[2] (in)      ...
+21 PON_TX_DIS (out)       ...
+22 ---                    DOLOS_DETECT (in)
+23 GE_DATA_LED (out)      ---
+24 GE_LINK_LED (out)      PTP_TRIG_GEN (out)
+25 ---                    PTP_EVENT_REQ (in)
+26 PON_C2_DATA (out)      GE_DATA_LED (out)
+27 PON_C2_CLK (out)       PTP_CLK (in)
+28 SPI_WP_L (out)         ...
+29 PON_RX_LOS (in)        ...
+31 UART1_RX (out)         ...
+32 UART2_TX (in)          ...
+36 PON_RX_PMON (in)       ...
+37 PON_PWR_EN_L (out)     ...
 */
 
 #define GFLT200_EVT1_GPP_OUT_ENA_LOW	(BIT13 | BIT15 | BIT18 | BIT29)
@@ -511,6 +524,14 @@
 #define GFLT200_EVT1_GPP_POL_LOW	0x0
 #define GFLT200_EVT1_GPP_POL_MID	0x0
 
+#define GFLT200_EVT2_GPP_OUT_ENA_LOW	(BIT13 | BIT15 | BIT18 | BIT22 | BIT29)
+#define GFLT200_EVT2_GPP_OUT_ENA_MID	(BIT4)
+
+#define GFLT200_EVT2_GPP_OUT_VAL_LOW	(BIT21 | BIT28)
+#define GFLT200_EVT2_GPP_OUT_VAL_MID	0x0
+
+#define GFLT200_EVT2_GPP_POL_LOW	0x0
+#define GFLT200_EVT2_GPP_POL_MID	0x0
 
 /***************************************************************************
 ** GFLT110