diff options
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.patch | 161 |
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 - |