On 2016/8/9 9:49, Shawn Lin wrote:
Hi,
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?
No.
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
rockchip,power-invert
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(-)
--
Best Regards
Shawn Lin
--
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