Re: [PATCH] mmc: core: move suspend/resume to dev_pm_ops and add hibernation support

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

 



Hi Barry,

On Wed, Jan 11, 2012 at 8:24 AM, Barry Song <21cnbao@xxxxxxxxx> wrote:
> 2012/1/9 Shubhrajyoti Datta <omaplinuxkernel@xxxxxxxxx>:
>> Hi Bin,
>>
>> On Mon, Jan 9, 2012 at 11:52 AM, Barry Song <Barry.Song@xxxxxxx> wrote:
>>> From: Bin Shi <Bin.Shi@xxxxxxx>
>>>
>>> This patch moves suspend/resume to dev_pm_ops and add hibernation support.
>>> It was tested on CSR SiRFprimaII cortex-a9 platform. A sd partition is used
>>> as swsusp partition.
>>>
>>> Signed-off-by: Bin Shi <Bin.Shi@xxxxxxx>
>>> Signed-off-by: Barry Song <Barry.Song@xxxxxxx>
>>> ---
>>>  drivers/mmc/core/bus.c |   38 +++++++++++++++++++++++++-------------
>>>  1 files changed, 25 insertions(+), 13 deletions(-)
>>>
>>> diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c
>>> index 6be4924..bab50f7 100644
>>> --- a/drivers/mmc/core/bus.c
>>> +++ b/drivers/mmc/core/bus.c
>>> @@ -122,14 +122,14 @@ static int mmc_bus_remove(struct device *dev)
>>>        return 0;
>>>  }
>>>
>>> -static int mmc_bus_suspend(struct device *dev, pm_message_t state)
>>> +static int mmc_bus_suspend(struct device *dev)
>>>  {
>>>        struct mmc_driver *drv = to_mmc_driver(dev->driver);
>>>        struct mmc_card *card = mmc_dev_to_card(dev);
>>>        int ret = 0;
>>>
>>>        if (dev->driver && drv->suspend)
>>> -               ret = drv->suspend(card, state);
>>> +               ret = drv->suspend(card, PMSG_SUSPEND);
>>>        return ret;
>>>  }
>>>
>>> @@ -144,6 +144,17 @@ static int mmc_bus_resume(struct device *dev)
>>>        return ret;
>>>  }
>>>
>>> +static int mmc_bus_freeze(struct device *dev)
>>> +{
>>> +       struct mmc_driver *drv = to_mmc_driver(dev->driver);
>>> +       struct mmc_card *card = mmc_dev_to_card(dev);
>>> +       int ret = 0;
>>> +
>>> +       if (dev->driver && drv->suspend)
>>> +               ret = drv->suspend(card, PMSG_FREEZE);
>>
>> Not a comment , rather a doubt
>>
>> Any particular reason to differenciate freeze and  suspend?
>
>
> Shubhrajyoti,
> there is no real difference for our system. this is just to keep
> back-compatible with old mmc_driver.suspend() since the function
> accepts a PMSG_xxx as param.
> i think all things go well if we add freeze/thaw/restore in Dmitry
> Shmidt's "[PATCH V4] mmc: Set suspend/resume bus operations if
> CONFIG_PM_RUNTIME is used"
>
Thanks for the explanation.

> -barry
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux