2021-05-11 04:41:06

by Oleksij Rempel

[permalink] [raw]
Subject: [PATCH v3 7/7] ARM: imx7d: remove Atheros AR8031 PHY fixup

This fixup configures the IO voltage and disables the SmartEEE
functionality.

If this patch breaks your system, enable AT803X_PHY driver and configure
the PHY by the device tree:

phy-connection-type = "rgmii-id";
ethernet-phy@X {
reg = <0xX>;

qca,smarteee-tw-us-1g = <24>;

vddio-supply = <&vddh>;

vddio: vddio-regulator {
regulator-name = "VDDIO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};

vddh: vddh-regulator {
regulator-name = "VDDH";
};
};

Signed-off-by: Oleksij Rempel <[email protected]>
---
arch/arm/mach-imx/mach-imx7d.c | 22 ----------------------
1 file changed, 22 deletions(-)

diff --git a/arch/arm/mach-imx/mach-imx7d.c b/arch/arm/mach-imx/mach-imx7d.c
index 879c35929a13..ccf64ddf8b7e 100644
--- a/arch/arm/mach-imx/mach-imx7d.c
+++ b/arch/arm/mach-imx/mach-imx7d.c
@@ -14,25 +14,6 @@

#include "common.h"

-static int ar8031_phy_fixup(struct phy_device *dev)
-{
- u16 val;
-
- /* Set RGMII IO voltage to 1.8V */
- phy_write(dev, 0x1d, 0x1f);
- phy_write(dev, 0x1e, 0x8);
-
- /* disable phy AR8031 SmartEEE function. */
- phy_write(dev, 0xd, 0x3);
- phy_write(dev, 0xe, 0x805d);
- phy_write(dev, 0xd, 0x4003);
- val = phy_read(dev, 0xe);
- val &= ~(0x1 << 8);
- phy_write(dev, 0xe, val);
-
- return 0;
-}
-
static int bcm54220_phy_fixup(struct phy_device *dev)
{
/* enable RXC skew select RGMII copper mode */
@@ -44,14 +25,11 @@ static int bcm54220_phy_fixup(struct phy_device *dev)
return 0;
}

-#define PHY_ID_AR8031 0x004dd074
#define PHY_ID_BCM54220 0x600d8589

static void __init imx7d_enet_phy_init(void)
{
if (IS_BUILTIN(CONFIG_PHYLIB)) {
- phy_register_fixup_for_uid(PHY_ID_AR8031, 0xffffffff,
- ar8031_phy_fixup);
phy_register_fixup_for_uid(PHY_ID_BCM54220, 0xffffffff,
bcm54220_phy_fixup);
}
--
2.29.2


2021-05-11 12:54:18

by Andrew Lunn

[permalink] [raw]
Subject: Re: [PATCH v3 7/7] ARM: imx7d: remove Atheros AR8031 PHY fixup

On Tue, May 11, 2021 at 06:37:35AM +0200, Oleksij Rempel wrote:
> This fixup configures the IO voltage and disables the SmartEEE
> functionality.
>
> If this patch breaks your system, enable AT803X_PHY driver and configure
> the PHY by the device tree:
>
> phy-connection-type = "rgmii-id";
> ethernet-phy@X {
> reg = <0xX>;
>
> qca,smarteee-tw-us-1g = <24>;
>
> vddio-supply = <&vddh>;
>
> vddio: vddio-regulator {
> regulator-name = "VDDIO";
> regulator-min-microvolt = <1800000>;
> regulator-max-microvolt = <1800000>;
> };
>
> vddh: vddh-regulator {
> regulator-name = "VDDH";
> };
> };
>
> Signed-off-by: Oleksij Rempel <[email protected]>

Reviewed-by: Andrew Lunn <[email protected]>

Andrew