Re: [PATCH 2/4] ravb: Add optional PHY reset during system resume

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hello!

On 10/1/2017 7:34 PM, Florian Fainelli wrote:

If the optional "reset-gpios" property is specified in DT, the generic
MDIO bus code takes care of resetting the PHY during device probe.
However, the PHY may still have to be reset explicitly after system
resume.

This allows to restore Ethernet operation after resume from s2ram on
Salvator-XS, where the enable pin of the regulator providing PHY power
is connected to PRESETn, and PSCI suspend powers down the SoC.

Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
---
   drivers/net/ethernet/renesas/ravb_main.c | 9 +++++++++
   1 file changed, 9 insertions(+)

diff --git a/drivers/net/ethernet/renesas/ravb_main.c
b/drivers/net/ethernet/renesas/ravb_main.c
index fdf30bfa403bf416..96d1d48e302f8c9a 100644
--- a/drivers/net/ethernet/renesas/ravb_main.c
+++ b/drivers/net/ethernet/renesas/ravb_main.c
[...]
@@ -2302,6 +2304,13 @@ static int __maybe_unused ravb_resume(struct
device *dev)he patches
         * reopen device if it was running before system suspended.
         */

+     /* PHY reset */
+     if (bus->reset_gpiod) {
+             gpiod_set_value_cansleep(bus->reset_gpiod, 1);
+             udelay(bus->reset_delay_us);
+             gpiod_set_value_cansleep(bus->reset_gpiod, 0);
+     }

This is a clever hack, but unfortunately this is also misusing the MDIO
bus reset line into a PHY reset line. As commented in patch 3, if this
reset line is tied to the PHY, then this should be a PHY property and

OK.

you cannot (ab)use the MDIO bus GPIO reset logic anymore...

And then I should add reset-gpios support to drivers/net/phy/micrel.c?
Or is there already generic code to handle per-PHY reset? I couldn't
find it.

There is not such a thing unfortunately, but it would presumably be

    It's strange you don't remember about my (abandoned) patches to
handle per=PHY reset GPIOs -- perhaps it's time to unearth them. Here
they are:

http://patchwork.ozlabs.org/patch/616495/
http://patchwork.ozlabs.org/patch/616501/

    I had v3 in the works before abandoning this series -- it doesn't
apply now.

Should Geert pick-up where you left and address the feedback given in
v2, or do you plan to post a rebased v3?

I was going to address the rejects in v3 and give the patchset to Geert... unfortunately, this took so-o-o long. I'm going to do it today, at last.

[...]

MBR, Sergei
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux