lkml.org 
[lkml]   [2018]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 7/7] net: phy: Add pm support to Broadcom iProc mdio mux driver
    Date
    Add support for suspend and resume to the Broadcom iProc mdio
    mux driver.

    Signed-off-by: Arun Parameswaran <arun.parameswaran@broadcom.com>
    ---
    drivers/net/phy/mdio-mux-bcm-iproc.c | 28 ++++++++++++++++++++++++++++
    1 file changed, 28 insertions(+)

    diff --git a/drivers/net/phy/mdio-mux-bcm-iproc.c b/drivers/net/phy/mdio-mux-bcm-iproc.c
    index 51d1003..d89dce0 100644
    --- a/drivers/net/phy/mdio-mux-bcm-iproc.c
    +++ b/drivers/net/phy/mdio-mux-bcm-iproc.c
    @@ -290,6 +290,33 @@ static int mdio_mux_iproc_remove(struct platform_device *pdev)
    return 0;
    }

    +#ifdef CONFIG_PM_SLEEP
    +static int mdio_mux_iproc_suspend(struct device *dev)
    +{
    + struct iproc_mdiomux_desc *md = dev_get_drvdata(dev);
    +
    + if (md->core_clk)
    + clk_disable_unprepare(md->core_clk);
    +
    + return 0;
    +}
    +
    +static int mdio_mux_iproc_resume(struct device *dev)
    +{
    + struct iproc_mdiomux_desc *md = dev_get_drvdata(dev);
    +
    + if (md->core_clk)
    + clk_prepare_enable(md->core_clk);
    +
    + mdio_mux_iproc_config(md);
    +
    + return 0;
    +}
    +#endif
    +
    +static SIMPLE_DEV_PM_OPS(mdio_mux_iproc_pm_ops,
    + mdio_mux_iproc_suspend, mdio_mux_iproc_resume);
    +
    static const struct of_device_id mdio_mux_iproc_match[] = {
    {
    .compatible = "brcm,mdio-mux-iproc",
    @@ -302,6 +329,7 @@ static int mdio_mux_iproc_remove(struct platform_device *pdev)
    .driver = {
    .name = "mdio-mux-iproc",
    .of_match_table = mdio_mux_iproc_match,
    + .pm = &mdio_mux_iproc_pm_ops,
    },
    .probe = mdio_mux_iproc_probe,
    .remove = mdio_mux_iproc_remove,
    --
    1.9.1
    \
     
     \ /
      Last update: 2018-07-27 23:24    [W:2.587 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site