On Mon, Jul 23, 2012 at 3:48 AM, Doug Anderson <diand...@chromium.org> wrote:
> On Sat, Jul 21, 2012 at 3:40 AM, Will Newton <will.new...@gmail.com> wrote:
>>>  static void dw_mci_enable_sdio_irq(struct mmc_host *mmc, int enb)
>>>  {
>>>         struct dw_mci_slot *slot = mmc_priv(mmc);
>>> @@ -871,6 +896,14 @@ static void dw_mci_enable_sdio_irq(struct mmc_host 
>>> *mmc, int enb)
>>>         /* Enable/disable Slot Specific SDIO interrupt */
>>>         int_mask = mci_readl(host, INTMASK);
>>>         if (enb) {
>>> +               /*
>>> +                * Turn off low power mode if it was enabled.  This is a 
>>> bit of
>>> +                * a heavy operation and we disable / enable IRQs a lot, so
>>> +                * we'll leave them disabled; they will get re-enabled 
>>> again in
>>> +                * dw_mci_setup_bus().
>>> +                */
>>> +               dw_mci_disable_low_power(mmc);
>>> +
>>
>> Is it safe to just disable low power here or could the setting be
>> overwritten in setup_bus?
>
> Very good question.  In my current setup I don't see setup_bus()
> called during normal operation.  If it were, my kernel messages would
> be constantly spammed with messages like:
>     Bus speed (slot %d) = %dHz (slot req %dHz, actual %dHZ div = %d)
>
> ...and they're not.  Things may be different with different SDIO cards 
> perhaps?

Yeah I think setup_bus should only setup the card clock once at
startup but it may also be required on resume?

I should probably mention I have not tested this driver with any SDIO
devices, although I believe there are other people out there who do!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to