diff options
author | Wilson Sung <wilsonsung@google.com> | 2020-02-17 14:40:25 +0800 |
---|---|---|
committer | Wilson Sung <wilsonsung@google.com> | 2020-02-17 14:50:07 +0800 |
commit | 497908947a2496da943625aec8b193ad89c692af (patch) | |
tree | 7979f5bad7674fea0925861255eaa894d579455b /drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c | |
parent | df7ee6ef20b0e01af170dc11a81fc85902b2f689 (diff) | |
parent | 384f80012cfcad8b1c79c715aecae5806bf31703 (diff) | |
download | data-kernel-497908947a2496da943625aec8b193ad89c692af.tar.gz |
Merge branch 'LA.UM.9.1.R1.10.00.00.604.021' via branch 'qcom-msm-4.14' into android-msm-floral-4.14android-r-preview-4_r0.7android-msm-coral-4.14-r-preview-4
Bug: 149660093
Change-Id: Ibc0260e3160dd1a4b421b2559312bc16a5c0c7d8
Signed-off-by: Wilson Sung <wilsonsung@google.com>
Diffstat (limited to 'drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c')
-rw-r--r-- | drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c b/drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c index 57c9383..faac49e 100644 --- a/drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c +++ b/drivers/emac-dwc-eqos/DWC_ETH_QOS_mdio.c @@ -543,7 +543,8 @@ static void set_phy_rx_tx_delay(struct DWC_ETH_QOS_prv_data *pdata, EMACDBG("Read 0x%x from offset 0x8\n",phydata); phydata = 0; - if (pdata->emac_hw_version_type == EMAC_HW_v2_1_2) { + if (pdata->emac_hw_version_type == EMAC_HW_v2_1_2 + || pdata->emac_hw_version_type == EMAC_HW_v2_1_1) { u16 tx_clk = 0xE; /* Provide TX_CLK delay of -0.06nsec */ DWC_ETH_QOS_mdio_mmd_register_read_direct(pdata, pdata->phyaddr, @@ -562,7 +563,8 @@ static void set_phy_rx_tx_delay(struct DWC_ETH_QOS_prv_data *pdata, DWC_ETH_QOS_mdio_mmd_register_read_direct(pdata, pdata->phyaddr, DWC_ETH_QOS_MICREL_PHY_DEBUG_MMD_DEV_ADDR,0x5,&phydata); phydata &= ~(0xFF); - if (pdata->emac_hw_version_type == EMAC_HW_v2_1_2) + if (pdata->emac_hw_version_type == EMAC_HW_v2_1_2 || + pdata->emac_hw_version_type == EMAC_HW_v2_1_1) phydata |= ((0x2 << 12) | (0x2 << 8) | (0x2 << 4) | 0x2); else /* Default settings for EMAC_HW_v2_1_0 */ @@ -579,7 +581,8 @@ static void set_phy_rx_tx_delay(struct DWC_ETH_QOS_prv_data *pdata, DWC_ETH_QOS_mdio_mmd_register_read_direct(pdata, pdata->phyaddr, DWC_ETH_QOS_MICREL_PHY_DEBUG_MMD_DEV_ADDR,0x4,&phydata); phydata &= ~(0xF << 4); - if (pdata->emac_hw_version_type == EMAC_HW_v2_1_2) + if (pdata->emac_hw_version_type == EMAC_HW_v2_1_2 || + pdata->emac_hw_version_type == EMAC_HW_v2_1_1) phydata |= (0x2 << 4); else /* Default settings for EMAC_HW_v2_1_0 */ @@ -654,9 +657,10 @@ static void configure_phy_rx_tx_delay(struct DWC_ETH_QOS_prv_data *pdata) set_phy_rx_tx_delay(pdata, ENABLE_RX_DELAY, ENABLE_TX_DELAY); } else { /* Settings for RGMII ID mode. - Not applicable for EMAC core version 2.1.0 and 2.1.2 */ + Not applicable for EMAC core version 2.1.0, 2.1.2 and 2.1.1 */ if (pdata->emac_hw_version_type != EMAC_HW_v2_1_0 && - pdata->emac_hw_version_type != EMAC_HW_v2_1_2) + pdata->emac_hw_version_type != EMAC_HW_v2_1_2 && + pdata->emac_hw_version_type != EMAC_HW_v2_1_1) set_phy_rx_tx_delay(pdata, DISABLE_RX_DELAY, DISABLE_TX_DELAY); } break; @@ -675,9 +679,10 @@ static void configure_phy_rx_tx_delay(struct DWC_ETH_QOS_prv_data *pdata) set_phy_rx_tx_delay(pdata, DISABLE_RX_DELAY, ENABLE_TX_DELAY); } else { /* Settings for RGMII ID mode */ - /* Not applicable for EMAC core version 2.1.0 and 2.1.2 */ + /* Not applicable for EMAC core version 2.1.0, 2.1.2 and 2.1.1 */ if (pdata->emac_hw_version_type != EMAC_HW_v2_1_0 && - pdata->emac_hw_version_type != EMAC_HW_v2_1_2) + pdata->emac_hw_version_type != EMAC_HW_v2_1_2 && + pdata->emac_hw_version_type != EMAC_HW_v2_1_1) set_phy_rx_tx_delay(pdata, DISABLE_RX_DELAY, DISABLE_TX_DELAY); } } |