Re: [Linux-kernel] [RFC PATCH 5/7] mmc: sh_mobile_sdhi: Add UHS-I mode support

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

 




On 6 May 2015 at 03:38, Ben Hutchings <ben.hutchings@xxxxxxxxxxxxxxx> wrote:
> On Tue, 2015-05-05 at 10:47 +0200, Ulf Hansson wrote:
>> On 5 May 2015 at 10:35, Ben Dooks <ben.dooks@xxxxxxxxxxxxxxx> wrote:
>> > On 05/05/15 10:56, Ulf Hansson wrote:
>> >> On 30 April 2015 at 14:32, Ben Hutchings <ben.hutchings@xxxxxxxxxxxxxxx> wrote:
>> >>> Implement voltage switch, supporting modes up to SDR-50.
>> >>>
>> >>> Based on work by Shinobu Uehara, Rob Taylor, William Towle and Ian Molton.
>> >>>
>> >>> This uses two voltage regulators, one external and one on the pfc.
>> >>
>> >> Why two? If there is a parent child relation ship, that should be
>> >> handled through the regulator tree, right!? Please elaborate.
>> >
>> > The card main power is separate from the IO line voltages.
>> >
>> > To get to the high-speed, card power is left at 3.3V and the IO
>> > voltage is changed to 1.8V.
>> >
>> > In the systems we have the power gate is separate from the controls
>> > for the IO but not integrated into the MMC controller itself.
>
> In this case, there are *three* regulators:
>
> 1. External regulator for card power (VDD pin): "vmmc"
> 2. External regulator for pull-up voltage for the data pins: "vqmmc"

Is this really a regulator and not just about changing a pinctrl setting?

The reason why I wonder, is because there are several other mmc host
driver's the use a specific pinctrl state for this.

> 3. Internal regulator for input(?) level on the data pins:
>    "vqmmc_ref" (I'm open to suggestions of a better name)
>
>> Okay, that's what I was expecting and hoping for :-)
>>
>> Then you need to rework $subject patch according to below.
>>
>> 1) Use mmc_regulator_get_supply() to fetch both the I/O voltage
>> regulator (vqmmc) and the main power regulator (vmmc).
>
> We already do that.

Okay, great!

>
>> Your "vqmmc_ref" regulator should thus be renamed to "vmmc".
>
> No, we have one of those already.
>
>> 2) The vmmc regulator should not be handled from the
>> ->start_signal_voltage_switch() callback, since it's only vqmmc
>> voltage levels that should be changed from there.
>
> It isn't.
>
>> 3) The voltage levels changes for vmmc shall be handled via the
>> ->set_ios() callback.
>
> We don't support UHS-II so we never change the voltage of this
> regulator.

That's not related to UHS-II. Voltage level negotiation for vmmc is
done even for legacy mode cards.

Kind regards
Uffe
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux