All of lore.kernel.org
 help / color / mirror / Atom feed
* mmc : sdhci_do_start_signal_voltage_switch
@ 2015-09-24 12:21 Muni Sekhar
  2015-10-05 10:56 ` Ulf Hansson
  0 siblings, 1 reply; 6+ messages in thread
From: Muni Sekhar @ 2015-09-24 12:21 UTC (permalink / raw)
  To: linux-mmc

Hi ,

We planned to use the standard Linux MMC driver for our FPGA based SD
Host controller hardware.

I am having couple of doubts regarding SDIO voltage change
(sdhci_do_start_signal_voltage_switch()), please clarify me on this.

The MMC driver sets and clears bit 3 of the HOST_CONTROL_2 register,
when an IO voltage change is required (1=1.8v, 0=3.3v).

Our hardware detects a change in this bit value, and generates a new
interrupt when a change is seen.  This interrupt will be controlled by
some new registers, outside of the standard Host Controller register
set.

The interrupt handling routine shall, when seeing this interrupt,
program the desired SDIO IO voltage change.

MMC driver expects the voltage change to complete within 5ms - there
is a fixed 5ms wait in the MMC driver’s
sdhci_do_start_signal_voltage_switch() function. But our hardware is
nowhere near capable of conducting a voltage change in 5ms.  Instead
it’s of the order of ~300ms.  Does it causes any issues later during
testing? If so what should be the best possible solution?


--
Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mmc : sdhci_do_start_signal_voltage_switch
  2015-09-24 12:21 mmc : sdhci_do_start_signal_voltage_switch Muni Sekhar
@ 2015-10-05 10:56 ` Ulf Hansson
  2015-10-06  6:32   ` Muni Sekhar
  0 siblings, 1 reply; 6+ messages in thread
From: Ulf Hansson @ 2015-10-05 10:56 UTC (permalink / raw)
  To: Muni Sekhar; +Cc: linux-mmc

On 24 September 2015 at 14:21, Muni Sekhar <munisekharrms@gmail.com> wrote:
> Hi ,
>
> We planned to use the standard Linux MMC driver for our FPGA based SD
> Host controller hardware.
>
> I am having couple of doubts regarding SDIO voltage change
> (sdhci_do_start_signal_voltage_switch()), please clarify me on this.
>
> The MMC driver sets and clears bit 3 of the HOST_CONTROL_2 register,
> when an IO voltage change is required (1=1.8v, 0=3.3v).
>
> Our hardware detects a change in this bit value, and generates a new
> interrupt when a change is seen.  This interrupt will be controlled by
> some new registers, outside of the standard Host Controller register
> set.
>
> The interrupt handling routine shall, when seeing this interrupt,
> program the desired SDIO IO voltage change.
>
> MMC driver expects the voltage change to complete within 5ms - there
> is a fixed 5ms wait in the MMC driver’s
> sdhci_do_start_signal_voltage_switch() function. But our hardware is
> nowhere near capable of conducting a voltage change in 5ms.  Instead
> it’s of the order of ~300ms.  Does it causes any issues later during
> testing? If so what should be the best possible solution?

I guess this is related to a regulator ramp up time somehow.
I would advise you to model this IO voltage through a regulator and
thus you can take care of the ramp up time within the regulator
implementation. If that's not possible, we need a way to add a time
suitable for your case.

Kind regards
Uffe

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mmc : sdhci_do_start_signal_voltage_switch
  2015-10-05 10:56 ` Ulf Hansson
@ 2015-10-06  6:32   ` Muni Sekhar
  2015-10-06  7:39     ` Ulf Hansson
  0 siblings, 1 reply; 6+ messages in thread
From: Muni Sekhar @ 2015-10-06  6:32 UTC (permalink / raw)
  To: Ulf Hansson; +Cc: linux-mmc

Hi Uffe,
Could you please explain about the way to add a time suitable for my case?


On Mon, Oct 5, 2015 at 4:26 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> On 24 September 2015 at 14:21, Muni Sekhar <munisekharrms@gmail.com> wrote:
>> Hi ,
>>
>> We planned to use the standard Linux MMC driver for our FPGA based SD
>> Host controller hardware.
>>
>> I am having couple of doubts regarding SDIO voltage change
>> (sdhci_do_start_signal_voltage_switch()), please clarify me on this.
>>
>> The MMC driver sets and clears bit 3 of the HOST_CONTROL_2 register,
>> when an IO voltage change is required (1=1.8v, 0=3.3v).
>>
>> Our hardware detects a change in this bit value, and generates a new
>> interrupt when a change is seen.  This interrupt will be controlled by
>> some new registers, outside of the standard Host Controller register
>> set.
>>
>> The interrupt handling routine shall, when seeing this interrupt,
>> program the desired SDIO IO voltage change.
>>
>> MMC driver expects the voltage change to complete within 5ms - there
>> is a fixed 5ms wait in the MMC driver’s
>> sdhci_do_start_signal_voltage_switch() function. But our hardware is
>> nowhere near capable of conducting a voltage change in 5ms.  Instead
>> it’s of the order of ~300ms.  Does it causes any issues later during
>> testing? If so what should be the best possible solution?
>
> I guess this is related to a regulator ramp up time somehow.
> I would advise you to model this IO voltage through a regulator and
> thus you can take care of the ramp up time within the regulator
> implementation. If that's not possible, we need a way to add a time
> suitable for your case.
>
> Kind regards
> Uffe



-- 
Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mmc : sdhci_do_start_signal_voltage_switch
  2015-10-06  6:32   ` Muni Sekhar
@ 2015-10-06  7:39     ` Ulf Hansson
  2015-10-06 10:24       ` Muni Sekhar
  0 siblings, 1 reply; 6+ messages in thread
From: Ulf Hansson @ 2015-10-06  7:39 UTC (permalink / raw)
  To: Muni Sekhar; +Cc: linux-mmc

On 6 October 2015 at 08:32, Muni Sekhar <munisekharrms@gmail.com> wrote:
> Hi Uffe,
> Could you please explain about the way to add a time suitable for my case?
>

Please, don't top-post!

Did you consider the regulator option?

Regarding how to add a suitable time, I haven't yet figured out how to
easiest solve do that, but there are a few options.

Kind regards
Uffe

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mmc : sdhci_do_start_signal_voltage_switch
  2015-10-06  7:39     ` Ulf Hansson
@ 2015-10-06 10:24       ` Muni Sekhar
  2015-10-09  9:51         ` Muni Sekhar
  0 siblings, 1 reply; 6+ messages in thread
From: Muni Sekhar @ 2015-10-06 10:24 UTC (permalink / raw)
  To: Ulf Hansson; +Cc: linux-mmc

On Tue, Oct 6, 2015 at 1:09 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
>
> On 6 October 2015 at 08:32, Muni Sekhar <munisekharrms@gmail.com> wrote:
> > Hi Uffe,
> > Could you please explain about the way to add a time suitable for my case?
> >
>
> Please, don't top-post!
>
> Did you consider the regulator option?
I noticed the “no vqmmc regulator found” message.

[    2.143556] mmc0: no vqmmc regulator found
[    2.143559] mmc0: no vmmc regulator found

I don’t know how to model this IO voltage through a regulator. Does it
need any additional hardware?
>
>
> Regarding how to add a suitable time, I haven't yet figured out how to
> easiest solve do that, but there are a few options.
>
> Kind regards
> Uffe




--
Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mmc : sdhci_do_start_signal_voltage_switch
  2015-10-06 10:24       ` Muni Sekhar
@ 2015-10-09  9:51         ` Muni Sekhar
  0 siblings, 0 replies; 6+ messages in thread
From: Muni Sekhar @ 2015-10-09  9:51 UTC (permalink / raw)
  To: Ulf Hansson; +Cc: linux-mmc

On Tue, Oct 6, 2015 at 3:54 PM, Muni Sekhar <munisekharrms@gmail.com> wrote:
> On Tue, Oct 6, 2015 at 1:09 PM, Ulf Hansson <ulf.hansson@linaro.org> wrote:
>>
>> On 6 October 2015 at 08:32, Muni Sekhar <munisekharrms@gmail.com> wrote:
>> > Hi Uffe,
>> > Could you please explain about the way to add a time suitable for my case?
>> >
>>
>> Please, don't top-post!
>>
>> Did you consider the regulator option?
> I noticed the “no vqmmc regulator found” message.
>
> [    2.143556] mmc0: no vqmmc regulator found
> [    2.143559] mmc0: no vmmc regulator found
>
> I don’t know how to model this IO voltage through a regulator. Does it
> need any additional hardware?
>>
>>
>> Regarding how to add a suitable time, I haven't yet figured out how to
>> easiest solve do that, but there are a few options.
If you have figured out then could you please share that option? I
would like to try that.

>>
>> Kind regards
>> Uffe
>
>
>
>
> --
> Thanks,
> Sekhar



--
Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-10-09  9:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-24 12:21 mmc : sdhci_do_start_signal_voltage_switch Muni Sekhar
2015-10-05 10:56 ` Ulf Hansson
2015-10-06  6:32   ` Muni Sekhar
2015-10-06  7:39     ` Ulf Hansson
2015-10-06 10:24       ` Muni Sekhar
2015-10-09  9:51         ` Muni Sekhar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.