aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71-e3000/0009-amd-xgbe-Always-attempt-link-training-in-KR-mode.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71-e3000/0009-amd-xgbe-Always-attempt-link-training-in-KR-mode.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71-e3000/0009-amd-xgbe-Always-attempt-link-training-in-KR-mode.patch161
1 files changed, 0 insertions, 161 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71-e3000/0009-amd-xgbe-Always-attempt-link-training-in-KR-mode.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71-e3000/0009-amd-xgbe-Always-attempt-link-training-in-KR-mode.patch
deleted file mode 100644
index 0a31f7c1..00000000
--- a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71-e3000/0009-amd-xgbe-Always-attempt-link-training-in-KR-mode.patch
+++ /dev/null
@@ -1,161 +0,0 @@
-From d95e49eb961bace4a0e4499fc0c8931a078656c0 Mon Sep 17 00:00:00 2001
-From: Tom Lendacky <thomas.lendacky@amd.com>
-Date: Wed, 23 May 2018 11:39:21 -0500
-Subject: [PATCH 09/95] amd-xgbe: Always attempt link training in KR mode
-
-Link training is always attempted when in KR mode, but the code is
-structured to check if link training has been enabled before attempting
-to perform it. Since that check will always be true, simplify the code
-to always enable and start link training during KR auto-negotiation.
-
-Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
-Signed-off-by: Sudheesh Mavila <sudheesh.mavila@amd.com>
----
- drivers/net/ethernet/amd/xgbe/xgbe-mdio.c | 69 +++++++------------------------
- 1 file changed, 16 insertions(+), 53 deletions(-)
-
-diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c b/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c
-index 36fddc2..eba757e 100644
---- a/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c
-+++ b/drivers/net/ethernet/amd/xgbe/xgbe-mdio.c
-@@ -216,31 +216,8 @@ static void xgbe_an_clear_interrupts_all(struct xgbe_prv_data *pdata)
- xgbe_an37_clear_interrupts(pdata);
- }
-
--static void xgbe_an73_enable_kr_training(struct xgbe_prv_data *pdata)
--{
-- unsigned int reg;
--
-- reg = XMDIO_READ(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL);
--
-- reg |= XGBE_KR_TRAINING_ENABLE;
-- XMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL, reg);
--}
--
--static void xgbe_an73_disable_kr_training(struct xgbe_prv_data *pdata)
--{
-- unsigned int reg;
--
-- reg = XMDIO_READ(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL);
--
-- reg &= ~XGBE_KR_TRAINING_ENABLE;
-- XMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL, reg);
--}
--
- static void xgbe_kr_mode(struct xgbe_prv_data *pdata)
- {
-- /* Enable KR training */
-- xgbe_an73_enable_kr_training(pdata);
--
- /* Set MAC to 10G speed */
- pdata->hw_if.set_speed(pdata, SPEED_10000);
-
-@@ -250,9 +227,6 @@ static void xgbe_kr_mode(struct xgbe_prv_data *pdata)
-
- static void xgbe_kx_2500_mode(struct xgbe_prv_data *pdata)
- {
-- /* Disable KR training */
-- xgbe_an73_disable_kr_training(pdata);
--
- /* Set MAC to 2.5G speed */
- pdata->hw_if.set_speed(pdata, SPEED_2500);
-
-@@ -262,9 +236,6 @@ static void xgbe_kx_2500_mode(struct xgbe_prv_data *pdata)
-
- static void xgbe_kx_1000_mode(struct xgbe_prv_data *pdata)
- {
-- /* Disable KR training */
-- xgbe_an73_disable_kr_training(pdata);
--
- /* Set MAC to 1G speed */
- pdata->hw_if.set_speed(pdata, SPEED_1000);
-
-@@ -278,9 +249,6 @@ static void xgbe_sfi_mode(struct xgbe_prv_data *pdata)
- if (pdata->kr_redrv)
- return xgbe_kr_mode(pdata);
-
-- /* Disable KR training */
-- xgbe_an73_disable_kr_training(pdata);
--
- /* Set MAC to 10G speed */
- pdata->hw_if.set_speed(pdata, SPEED_10000);
-
-@@ -290,9 +258,6 @@ static void xgbe_sfi_mode(struct xgbe_prv_data *pdata)
-
- static void xgbe_x_mode(struct xgbe_prv_data *pdata)
- {
-- /* Disable KR training */
-- xgbe_an73_disable_kr_training(pdata);
--
- /* Set MAC to 1G speed */
- pdata->hw_if.set_speed(pdata, SPEED_1000);
-
-@@ -302,9 +267,6 @@ static void xgbe_x_mode(struct xgbe_prv_data *pdata)
-
- static void xgbe_sgmii_1000_mode(struct xgbe_prv_data *pdata)
- {
-- /* Disable KR training */
-- xgbe_an73_disable_kr_training(pdata);
--
- /* Set MAC to 1G speed */
- pdata->hw_if.set_speed(pdata, SPEED_1000);
-
-@@ -314,9 +276,6 @@ static void xgbe_sgmii_1000_mode(struct xgbe_prv_data *pdata)
-
- static void xgbe_sgmii_100_mode(struct xgbe_prv_data *pdata)
- {
-- /* Disable KR training */
-- xgbe_an73_disable_kr_training(pdata);
--
- /* Set MAC to 1G speed */
- pdata->hw_if.set_speed(pdata, SPEED_1000);
-
-@@ -425,6 +384,12 @@ static void xgbe_an73_set(struct xgbe_prv_data *pdata, bool enable,
- {
- unsigned int reg;
-
-+ /* Disable KR training for now */
-+ reg = XMDIO_READ(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL);
-+ reg &= ~XGBE_KR_TRAINING_ENABLE;
-+ XMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL, reg);
-+
-+ /* Update AN settings */
- reg = XMDIO_READ(pdata, MDIO_MMD_AN, MDIO_CTRL1);
- reg &= ~MDIO_AN_CTRL1_ENABLE;
-
-@@ -522,21 +487,19 @@ static enum xgbe_an xgbe_an73_tx_training(struct xgbe_prv_data *pdata,
- XMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_FECCTRL, reg);
-
- /* Start KR training */
-- reg = XMDIO_READ(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL);
-- if (reg & XGBE_KR_TRAINING_ENABLE) {
-- if (pdata->phy_if.phy_impl.kr_training_pre)
-- pdata->phy_if.phy_impl.kr_training_pre(pdata);
-+ if (pdata->phy_if.phy_impl.kr_training_pre)
-+ pdata->phy_if.phy_impl.kr_training_pre(pdata);
-
-- reg |= XGBE_KR_TRAINING_START;
-- XMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL,
-- reg);
-+ reg = XMDIO_READ(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL);
-+ reg |= XGBE_KR_TRAINING_ENABLE;
-+ reg |= XGBE_KR_TRAINING_START;
-+ XMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL, reg);
-
-- netif_dbg(pdata, link, pdata->netdev,
-- "KR training initiated\n");
-+ netif_dbg(pdata, link, pdata->netdev,
-+ "KR training initiated\n");
-
-- if (pdata->phy_if.phy_impl.kr_training_post)
-- pdata->phy_if.phy_impl.kr_training_post(pdata);
-- }
-+ if (pdata->phy_if.phy_impl.kr_training_post)
-+ pdata->phy_if.phy_impl.kr_training_post(pdata);
-
- return XGBE_AN_PAGE_RECEIVED;
- }
---
-2.7.4
-