ETHFW-607: j7200_evm: Bypass SerDes config for Eth if already configured
[processor-sdk/pdk.git] / packages / ti / board / src / j7200_evm / board_serdes_cfg.c
index 53ccac2dbfe2988ca8ee30315a039839ad812dc4..cb28820b7d4caebe83f2ea0cf7b560eb5d2a7742 100644 (file)
@@ -82,6 +82,7 @@ static Board_STATUS Board_serdesInitParams(CSL_SerdesLaneEnableParams *laneParam
 \r
 static Board_STATUS Board_serdesCfgEthernet(uint32_t phyType)\r
 {\r
+    CSL_SerdesStatus status;\r
     CSL_SerdesResult result;\r
     CSL_SerdesLaneEnableStatus laneRetVal = CSL_SERDES_LANE_ENABLE_NO_ERR;\r
     CSL_SerdesLaneEnableParams serdesLane0EnableParams  = {0};\r
@@ -90,6 +91,13 @@ static Board_STATUS Board_serdesCfgEthernet(uint32_t phyType)
 \r
     Board_serdesInitParams(&serdesLane0EnableParams, phyType);\r
 \r
+    /* Bail out early if SERDES is already configured */\r
+    status = CSL_serdesConfigStatus(serdesLane0EnableParams.baseAddr);\r
+    if (status == 1U)\r
+    {\r
+        return BOARD_SOK;\r
+    }\r
+\r
     CSL_serdesPorReset(serdesLane0EnableParams.baseAddr);\r
 \r
     /* Select the IP type, IP instance num, Serdes Lane Number */\r