diff options
Diffstat (limited to 'target/linux/generic/backport-4.9/076-v4.11-0005-net-phy-broadcom-use-auxctl-reading-helper-in-BCM546.patch')
-rw-r--r-- | target/linux/generic/backport-4.9/076-v4.11-0005-net-phy-broadcom-use-auxctl-reading-helper-in-BCM546.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/target/linux/generic/backport-4.9/076-v4.11-0005-net-phy-broadcom-use-auxctl-reading-helper-in-BCM546.patch b/target/linux/generic/backport-4.9/076-v4.11-0005-net-phy-broadcom-use-auxctl-reading-helper-in-BCM546.patch new file mode 100644 index 0000000000..554e3117d8 --- /dev/null +++ b/target/linux/generic/backport-4.9/076-v4.11-0005-net-phy-broadcom-use-auxctl-reading-helper-in-BCM546.patch @@ -0,0 +1,45 @@ +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> +Date: Wed, 25 Jan 2017 21:00:25 +0100 +Subject: [PATCH] net: phy: broadcom: use auxctl reading helper in BCM54612E + code +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Starting with commit 5b4e29005123 ("net: phy: broadcom: add +bcm54xx_auxctl_read") we have a reading helper so use it and avoid code +duplication. +It also means we don't need MII_BCM54XX_AUXCTL_SHDWSEL_MISC define as +it's the same as MII_BCM54XX_AUXCTL_SHDWSEL_MISC just for reading needs +(same value shifted by 12 bits). + +Signed-off-by: Rafał Miłecki <rafal@milecki.pl> +Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + +--- a/drivers/net/phy/broadcom.c ++++ b/drivers/net/phy/broadcom.c +@@ -395,10 +395,8 @@ static int bcm54612e_config_aneg(struct + (phydev->interface != PHY_INTERFACE_MODE_RGMII_RXID)) { + u16 reg; + +- /* Errata: reads require filling in the write selector field */ +- bcm54xx_auxctl_write(phydev, MII_BCM54XX_AUXCTL_SHDWSEL_MISC, +- MII_BCM54XX_AUXCTL_MISC_RDSEL_MISC); +- reg = phy_read(phydev, MII_BCM54XX_AUX_CTL); ++ reg = bcm54xx_auxctl_read(phydev, ++ MII_BCM54XX_AUXCTL_SHDWSEL_MISC); + /* Disable RXD to RXC delay (default set) */ + reg &= ~MII_BCM54XX_AUXCTL_MISC_RXD_RXC_SKEW; + /* Clear shadow selector field */ +--- a/include/linux/brcmphy.h ++++ b/include/linux/brcmphy.h +@@ -111,7 +111,6 @@ + + #define MII_BCM54XX_AUXCTL_MISC_WREN 0x8000 + #define MII_BCM54XX_AUXCTL_MISC_FORCE_AMDIX 0x0200 +-#define MII_BCM54XX_AUXCTL_MISC_RDSEL_MISC 0x7000 + #define MII_BCM54XX_AUXCTL_SHDWSEL_MISC 0x0007 + #define MII_BCM54XX_AUXCTL_SHDWSEL_READ_SHIFT 12 + #define MII_BCM54XX_AUXCTL_SHDWSEL_MISC_RGMII_SKEW_EN (1 << 8) |