This is required if type C driver needs to hold
global reset on J7ES to perform LN10 swap.

Signed-off-by: Roger Quadros <[email protected]>
Signed-off-by: Sekhar Nori <[email protected]>
---
 drivers/phy/cadence/phy-cadence-sierra.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/phy/cadence/phy-cadence-sierra.c 
b/drivers/phy/cadence/phy-cadence-sierra.c
index affede8c4368..e6d27bdec22a 100644
--- a/drivers/phy/cadence/phy-cadence-sierra.c
+++ b/drivers/phy/cadence/phy-cadence-sierra.c
@@ -339,10 +339,20 @@ static int cdns_sierra_phy_off(struct phy *gphy)
        return reset_control_assert(ins->lnk_rst);
 }
 
+static int cdns_sierra_phy_reset(struct phy *gphy)
+{
+       struct cdns_sierra_phy *sp = dev_get_drvdata(gphy->dev.parent);
+
+       reset_control_assert(sp->phy_rst);
+       reset_control_deassert(sp->phy_rst);
+       return 0;
+};
+
 static const struct phy_ops ops = {
        .init           = cdns_sierra_phy_init,
        .power_on       = cdns_sierra_phy_on,
        .power_off      = cdns_sierra_phy_off,
+       .reset          = cdns_sierra_phy_reset,
        .owner          = THIS_MODULE,
 };
 
-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

Reply via email to