diff mbox

[0/4] tmio: add support for eMMC with 8 bit bus width

Message ID 20160919080045.GA1409@katana (mailing list archive)
State RFC
Delegated to: Geert Uytterhoeven
Headers show

Commit Message

Wolfram Sang Sept. 19, 2016, 8 a.m. UTC
On Thu, Sep 15, 2016 at 01:52:26PM +0200, Geert Uytterhoeven wrote:
> Hi Wolfram,
> 
> On Wed, Sep 14, 2016 at 7:05 PM, Wolfram Sang
> <wsa+renesas@sang-engineering.com> wrote:
> > The DTS changes for R-Car Gen3 will come via a seperate series. Note that
> > 'non-removable' is not supported yet because of Runtime PM issues. It seems we
> > need to overhaul Runtime PM handling for other reasons as well, so I suggest
> > the basic support goes in like this and DTS do not use 'non-removable' for now.
> 
> DT describes the hardware, not current limitations of the software.
> Hence IMHO you should add the "non-removable" property to the DTS, and
> work around its non-functioning in software.

@Ulf: Would you accept such a workaround for a while?

Comments

Ulf Hansson Sept. 19, 2016, 10 a.m. UTC | #1
On 19 September 2016 at 10:00, Wolfram Sang <wsa@the-dreams.de> wrote:
> On Thu, Sep 15, 2016 at 01:52:26PM +0200, Geert Uytterhoeven wrote:
>> Hi Wolfram,
>>
>> On Wed, Sep 14, 2016 at 7:05 PM, Wolfram Sang
>> <wsa+renesas@sang-engineering.com> wrote:
>> > The DTS changes for R-Car Gen3 will come via a seperate series. Note that
>> > 'non-removable' is not supported yet because of Runtime PM issues. It seems we
>> > need to overhaul Runtime PM handling for other reasons as well, so I suggest
>> > the basic support goes in like this and DTS do not use 'non-removable' for now.
>>
>> DT describes the hardware, not current limitations of the software.
>> Hence IMHO you should add the "non-removable" property to the DTS, and
>> work around its non-functioning in software.
>
> @Ulf: Would you accept such a workaround for a while?

With some comments about why, yes!

Br
Uffe

>
> diff --git a/drivers/mmc/host/tmio_mmc_pio.c b/drivers/mmc/host/tmio_mmc_pio.c
> index f21c92ec7121cc..5ab8af294f7c40 100644
> --- a/drivers/mmc/host/tmio_mmc_pio.c
> +++ b/drivers/mmc/host/tmio_mmc_pio.c
> @@ -1154,6 +1154,10 @@ int tmio_mmc_host_probe(struct tmio_mmc_host *_host,
>                                   !mmc_card_is_removable(mmc) ||
>                                   mmc->slot.cd_irq >= 0);
>
> +       /* Workaround for NONREMOVABLE until we fix RuntimePM handling */
> +       if (pdata->flags & TMIO_MMC_MIN_RCAR2)
> +               _host->native_hotplug = true;
> +
>         if (tmio_mmc_clk_enable(_host) < 0) {
>                 mmc->f_max = pdata->hclk;
>                 mmc->f_min = mmc->f_max / 512;
>
diff mbox

Patch

diff --git a/drivers/mmc/host/tmio_mmc_pio.c b/drivers/mmc/host/tmio_mmc_pio.c
index f21c92ec7121cc..5ab8af294f7c40 100644
--- a/drivers/mmc/host/tmio_mmc_pio.c
+++ b/drivers/mmc/host/tmio_mmc_pio.c
@@ -1154,6 +1154,10 @@  int tmio_mmc_host_probe(struct tmio_mmc_host *_host,
 				  !mmc_card_is_removable(mmc) ||
 				  mmc->slot.cd_irq >= 0);
 
+	/* Workaround for NONREMOVABLE until we fix RuntimePM handling */
+	if (pdata->flags & TMIO_MMC_MIN_RCAR2)
+		_host->native_hotplug = true;
+
 	if (tmio_mmc_clk_enable(_host) < 0) {
 		mmc->f_max = pdata->hclk;
 		mmc->f_min = mmc->f_max / 512;