]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
net: ravb: Drop reset GPIO handling in favor of common code
authorMarek Vasut <marek.vasut+renesas@mailbox.org>
Tue, 30 May 2023 22:51:28 +0000 (00:51 +0200)
committerMarek Vasut <marek.vasut+renesas@mailbox.org>
Sat, 10 Jun 2023 11:34:05 +0000 (13:34 +0200)
The common code is now capable of handling reset GPIO associated
with PHY. Drop the local ad-hoc code in favor of common code.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
drivers/net/Kconfig
drivers/net/ravb.c

index 09039a283eb530eb7aee6d75436daaa07c951d97..48f9efcc94f3069324f2cd527e2ec6c89aad8208 100644 (file)
@@ -764,6 +764,7 @@ config RENESAS_RAVB
        bool "Renesas Ethernet AVB MAC"
        depends on RCAR_64
        select PHYLIB
+       select PHY_ETHERNET_ID
        help
          This driver implements support for the Ethernet AVB block in
          Renesas M3 and H3 SoCs.
index c74c8a81f9426a8630181f3868a1a35ef14b7b03..0bcd6cfd3f35907e8e3a36895c079c2dec85ed09 100644 (file)
@@ -131,7 +131,6 @@ struct ravb_priv {
        struct mii_dev          *bus;
        void __iomem            *iobase;
        struct clk_bulk         clks;
-       struct gpio_desc        reset_gpio;
 };
 
 static inline void ravb_flush_dcache(u32 addr, u32 len)
@@ -312,13 +311,6 @@ static int ravb_phy_config(struct udevice *dev)
        struct phy_device *phydev;
        int reg;
 
-       if (dm_gpio_is_valid(&eth->reset_gpio)) {
-               dm_gpio_set_value(&eth->reset_gpio, 1);
-               mdelay(20);
-               dm_gpio_set_value(&eth->reset_gpio, 0);
-               mdelay(1);
-       }
-
        phydev = phy_connect(eth->bus, -1, dev, pdata->phy_interface);
        if (!phydev)
                return -ENODEV;
@@ -503,7 +495,6 @@ static int ravb_probe(struct udevice *dev)
 {
        struct eth_pdata *pdata = dev_get_plat(dev);
        struct ravb_priv *eth = dev_get_priv(dev);
-       struct ofnode_phandle_args phandle_args;
        struct mii_dev *mdiodev;
        void __iomem *iobase;
        int ret;
@@ -515,17 +506,6 @@ static int ravb_probe(struct udevice *dev)
        if (ret < 0)
                goto err_mdio_alloc;
 
-       ret = dev_read_phandle_with_args(dev, "phy-handle", NULL, 0, 0, &phandle_args);
-       if (!ret) {
-               gpio_request_by_name_nodev(phandle_args.node, "reset-gpios", 0,
-                                          &eth->reset_gpio, GPIOD_IS_OUT);
-       }
-
-       if (!dm_gpio_is_valid(&eth->reset_gpio)) {
-               gpio_request_by_name(dev, "reset-gpios", 0, &eth->reset_gpio,
-                                    GPIOD_IS_OUT);
-       }
-
        mdiodev = mdio_alloc();
        if (!mdiodev) {
                ret = -ENOMEM;
@@ -576,8 +556,6 @@ static int ravb_remove(struct udevice *dev)
        free(eth->phydev);
        mdio_unregister(eth->bus);
        mdio_free(eth->bus);
-       if (dm_gpio_is_valid(&eth->reset_gpio))
-               dm_gpio_free(dev, &eth->reset_gpio);
        unmap_physmem(eth->iobase, MAP_NOCACHE);
 
        return 0;