[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAD=FV=Vewr5QkNEiBEOXA=FdKHKzg0ag5+Cf4KXuXWjcshSq_g@mail.gmail.com>
Date: Tue, 12 Aug 2014 08:13:41 -0700
From: Doug Anderson <dianders@...omium.org>
To: Ulf Hansson <ulf.hansson@...aro.org>
Cc: Linus Walleij <linus.walleij@...aro.org>,
Heiko Stübner <heiko@...ech.de>,
Mark Brown <broonie@...nel.org>,
Addy Ke <addy.ke@...k-chips.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Yuvaraj Kumar <yuvaraj.cd@...il.com>,
Yuvaraj Kumar C D <yuvaraj.cd@...sung.com>
Subject: Re: io-domain voltages as regulators?
Hi,
On Mon, Aug 11, 2014 at 5:46 AM, Ulf Hansson <ulf.hansson@...aro.org> wrote:
> On 11 August 2014 09:44, Linus Walleij <linus.walleij@...aro.org> wrote:
>> On Mon, Aug 4, 2014 at 12:18 AM, Heiko Stübner <heiko@...ech.de> wrote:
>>
>> [Adding Ulf Hansson to this discussion...]
>>
>>> Hi Mark, Linus,
>>>
>>> I'd like to clarify what the appropriate way to handle pin output voltages is.
>>> On the Rockchip SoCs the voltage for some groups of pins can be set between
>>> 3.3V and 1.8V ... like the MMC/SD pins who need this to support UHS mode
>>> cards.
>>
>> This is called "vqmmc" in the mmc/sd subsystem.
>>
>> grep for mmc_set_signal_voltage() in drivers/mmc/core/*
>>
>> In drivers/mmc/core/core.c, you find:
>>
>> mmc->supply.vqmmc = devm_regulator_get_optional(dev, "vqmmc");
>>
>> Which gets the regulator to set the signal voltage, if such
>> a regulator is specified for the host.
>>
>> Very simple and straight-forward, and handled by the MMC core.
>>
>>> In [0] when talking about something different, Linus Walleij described a
>>> similar case as
>>>
>>> "I think we need to have a discussion with Mark Brown on how to
>>> handle this.
>>> We have previously had the case of MMC/SD level-shifters, where
>>> a certain setting gives a certain level of signals out, and another setting
>>> gives another level. Like two discrete levels.
>>> So we modeled that as a regulator provider inside the pin control
>>> driver eventually, see sh-pfc/pfc-sh73a0.c"
>>>
>>> As this sound like exactly the thing I'm trying to solve, is handling this via
>>> a regulator the correct general way?
>>
>> Ithinkso.
>
> Just to confirm, I fully agree with the above said.
>
> You may also find a good example in the mmci host driver for how to
> make use of the vqmmc regulator.
Yuvaraj also submitted patches for dw_mmc:
4401241 New [1/3] mmc: dw_mmc: use mmc_regulator_get_supply
to handle regulators
4401261 New [2/3] mmc: dw_mmc: Dont cut off vqmmc and vmmc
4401281 New [3/3] mmc: dw_mmc: Support voltage changes
He seems to have dropped these patches on the floor and I had review
feedback on them, but I think they're in the right direction.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists