[PATCH v2 0/6] Add support of inverting power control and some minor cleanup
shawn.lin at rock-chips.com
Mon Aug 8 19:12:15 PDT 2016
On 2016/8/9 9:49, Shawn Lin wrote:
> On 2016/8/8 18:24, Jaehoon Chung wrote:
>> Hi Shawn,
>> On 08/07/2016 10:33 AM, Shawn Lin wrote:
>>> By default, dw_mmc outputs high level voltage to indicate powering
>>> up the card and outputs low level vcltage to indicate powering
>>> off the card. But that is not always correct. The power io should
>>> be able to control different kind of hw components to supply or
>>> cutoff power to the card. We have boards that need this patchset
>>> to make the power control correct. Meanwhile let's expose it to
>>> DT for board-specific usage.
>> I have a question for this patch-set. Does DWMMC IP support to invert
>> ON/OFF at Power Enable register?
>> Hmm..Well, if use the DW_MMC_CARD_PWR_INVERT, it should also be the
>> similar behavior with Quirks.
> yup, it makes the power control more complicated than before. :(
>> Other flags are related with dwmmc IP. But this flag
>> (DW_MMC_CARD_PWR_INVERT) is not related with IP side.
>> I understood why you needs to add this flag..Is rockchip designed to
>> invert the power controlling?
> We don't invert the power controlling but our customers do.
> The HW componet looks like some discrete LDOs which enable the related
> power supply when outputing low voltage from pwren..
>> But it's not general case. We can discuss about this.
> I have a solution which is to add gpio power control for slot-gpio of
> mmc core. once finished, we could add pwr_cap_invert just like what we
> did for cd/wp invert control..
> Then we could remove PWREN from the default state of
> pinctrl inside the sdmmc dt node, and let dwmmc request gpio power
> control stuff after paring the property for pwr_cap_invert..
> More over, it well fit for all mmc host's requirement of gpio
> power control and inverted control if they want it. :)
> That should be legit for us?
> If it sounds ok to you and Ulf, I will come up with a RFC one for
> community to comment it.:)
one more, maybe pwrseq is also a choice for us.
But I'm not sure if it deserves a pwerseq_sd.c ?
>> Best Regards,
>> Jaehoon Chung
>>> Changes in v2:
>>> - fix copy-paste err and typo
>>> Shawn Lin (6):
>>> dt-bindings: rockchip-dw-mshc: add description of
>>> mmc: dw_mmc: cleanup power setting of set_ios callback
>>> mmc: dw_mmc: split out dw_mci_set_power
>>> mmc: dw_mmc: split out dw_mci_set_power_reg
>>> mmc: dw_mmc: support inverted power control
>>> mmc: dw_mmc-rockchip: add parsing of power control from DT
>>> .../devicetree/bindings/mmc/rockchip-dw-mshc.txt | 6 +
>>> drivers/mmc/host/dw_mmc-rockchip.c | 8 ++
>>> drivers/mmc/host/dw_mmc.c | 134
>>> drivers/mmc/host/dw_mmc.h | 1 +
>>> 4 files changed, 90 insertions(+), 59 deletions(-)
More information about the Linux-rockchip