diff mbox

[32/32] ARM: OMAP: RX51: set MMC capabilities and power-saving flag

Message ID 4A6D5E40.7030608@nokia.com (mailing list archive)
State Awaiting Upstream, archived
Headers show

Commit Message

Adrian Hunter July 27, 2009, 7:58 a.m. UTC
Matt Fleming wrote:
> On Fri, Jul 10, 2009 at 03:43:53PM +0300, Adrian Hunter wrote:
>> >From 3865867159f25cf706480236f6d4f0e4adde5dac Mon Sep 17 00:00:00 2001
>> From: Adrian Hunter <adrian.hunter@nokia.com>
>> Date: Fri, 10 Jul 2009 10:32:44 +0300
>> Subject: [PATCH] ARM: OMAP: RX51: set MMC capabilities and power-saving flag
>>
>> Specify MMC capabilities and set the power-saving flag
>> for RX51.
>>
> 
> After the changes to [PATCH 7/32], this becomes,

I think this will leave every other board that uses omap_hsmmc
without any card caps.

What about adding something like this:








> ---
> 
> ARM: OMAP: RX51: set MMC capabilities and power-saving flag
> 
> Specify MMC capabilities and set the power-saving flag for RX51.
> 
> Signed-off-by: Matt Fleming <matt@console-pimps.org>
> Cc: Adrian Hunter <adrian.hunter@nokia.com>
> Cc: Ian Molton <ian@mnementh.co.uk>
> Cc: "Roberto A. Foglietta" <roberto.foglietta@gmail.com>
> Cc: Jarkko Lavinen <jarkko.lavinen@nokia.com>
> Cc: Denis Karpov <ext-denis.2.karpov@nokia.com>
> Cc: Pierre Ossman <pierre@ossman.eu>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> ---
>  arch/arm/mach-omap2/board-rx51-peripherals.c |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/board-rx51-peripherals.c b/arch/arm/mach-omap2/board-rx51-peripherals.c
> index 9a0bf67..d2ce938 100644
> --- a/arch/arm/mach-omap2/board-rx51-peripherals.c
> +++ b/arch/arm/mach-omap2/board-rx51-peripherals.c
> @@ -19,6 +19,7 @@
>  #include <linux/delay.h>
>  #include <linux/regulator/machine.h>
>  #include <linux/gpio.h>
> +#include <linux/mmc/host.h>
>  
>  #include <mach/mcspi.h>
>  #include <mach/mux.h>
> @@ -102,6 +103,8 @@ static struct twl4030_hsmmc_info mmc[] = {
>  		.cover_only	= true,
>  		.gpio_cd	= 160,
>  		.gpio_wp	= -EINVAL,
> +		.power_saving	= true,
> +		.caps		= MMC_CAP_SD,
>  	},
>  	{
>  		.name		= "internal",
> @@ -109,6 +112,8 @@ static struct twl4030_hsmmc_info mmc[] = {
>  		.wires		= 8,
>  		.gpio_cd	= -EINVAL,
>  		.gpio_wp	= -EINVAL,
> +		.power_saving	= true,
> +		.caps		= MMC_CAP_MMC | MMC_CAP_NONREMOVABLE,
>  	},
>  	{}	/* Terminator */
>  };

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

Comments

Matt Fleming July 27, 2009, 8:27 a.m. UTC | #1
On Mon, Jul 27, 2009 at 10:58:56AM +0300, Adrian Hunter wrote:
> Matt Fleming wrote:
>> On Fri, Jul 10, 2009 at 03:43:53PM +0300, Adrian Hunter wrote:
>>> >From 3865867159f25cf706480236f6d4f0e4adde5dac Mon Sep 17 00:00:00 2001
>>> From: Adrian Hunter <adrian.hunter@nokia.com>
>>> Date: Fri, 10 Jul 2009 10:32:44 +0300
>>> Subject: [PATCH] ARM: OMAP: RX51: set MMC capabilities and power-saving flag
>>>
>>> Specify MMC capabilities and set the power-saving flag
>>> for RX51.
>>>
>>
>> After the changes to [PATCH 7/32], this becomes,
>
> I think this will leave every other board that uses omap_hsmmc
> without any card caps.
>

Doh. You're right, good catch!

> What about adding something like this:
>
>
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 8900bae..f2548f1 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1720,6 +1720,11 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> 		mmc->caps |= MMC_CAP_4_BIT_DATA;
>
> 	mmc->caps |= mmc_slot(host).caps;
> +	/* If no card caps specified then assume them all */
> +	if (!((mmc->caps & MMC_CAP_SD) ||
> +	      (mmc->caps & MMC_CAP_MMC) ||
> +	      (mmc->caps & MMC_CAP_SDIO)))
> +		mmc->caps |= MMC_CAP_SD & MMC_CAP_MMC & MMC_CAP_SDIO;
>
> 	omap_hsmmc_conf_bus_power(host);
>

Those & should be |

	/* If no card caps specified then assume them all */
	if (!((mmc->caps & MMC_CAP_SD) ||
	      (mmc->caps & MMC_CAP_MMC) ||
	      (mmc->caps & MMC_CAP_SDIO)))
	        mmc->caps |= MMC_CAP_SD | MMC_CAP_MMC | MMC_CAP_SDIO;

or more compactly,

	/* If no card caps specified then assume them all */
	if (!(mmc->caps & (MMC_CAP_SD | MMC_CAP_SDIO | MMC_CAP_MMC)))
		mmc->caps |= MMC_CAP_SD | MMC_CAP_MMC | MMC_CAP_SDIO;

	
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Adrian Hunter July 27, 2009, 8:58 a.m. UTC | #2
ext Matt Fleming wrote:
> On Mon, Jul 27, 2009 at 10:58:56AM +0300, Adrian Hunter wrote:
>> Matt Fleming wrote:
>>> On Fri, Jul 10, 2009 at 03:43:53PM +0300, Adrian Hunter wrote:
>>>> >From 3865867159f25cf706480236f6d4f0e4adde5dac Mon Sep 17 00:00:00 2001
>>>> From: Adrian Hunter <adrian.hunter@nokia.com>
>>>> Date: Fri, 10 Jul 2009 10:32:44 +0300
>>>> Subject: [PATCH] ARM: OMAP: RX51: set MMC capabilities and power-saving flag
>>>>
>>>> Specify MMC capabilities and set the power-saving flag
>>>> for RX51.
>>>>
>>> After the changes to [PATCH 7/32], this becomes,
>> I think this will leave every other board that uses omap_hsmmc
>> without any card caps.
>>
> 
> Doh. You're right, good catch!
> 
>> What about adding something like this:
>>
>>
>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> index 8900bae..f2548f1 100644
>> --- a/drivers/mmc/host/omap_hsmmc.c
>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> @@ -1720,6 +1720,11 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> 		mmc->caps |= MMC_CAP_4_BIT_DATA;
>>
>> 	mmc->caps |= mmc_slot(host).caps;
>> +	/* If no card caps specified then assume them all */
>> +	if (!((mmc->caps & MMC_CAP_SD) ||
>> +	      (mmc->caps & MMC_CAP_MMC) ||
>> +	      (mmc->caps & MMC_CAP_SDIO)))
>> +		mmc->caps |= MMC_CAP_SD & MMC_CAP_MMC & MMC_CAP_SDIO;
>>
>> 	omap_hsmmc_conf_bus_power(host);
>>
> 
> Those & should be |
> 
> 	/* If no card caps specified then assume them all */
> 	if (!((mmc->caps & MMC_CAP_SD) ||
> 	      (mmc->caps & MMC_CAP_MMC) ||
> 	      (mmc->caps & MMC_CAP_SDIO)))
> 	        mmc->caps |= MMC_CAP_SD | MMC_CAP_MMC | MMC_CAP_SDIO;
> 
> or more compactly,
> 
> 	/* If no card caps specified then assume them all */
> 	if (!(mmc->caps & (MMC_CAP_SD | MMC_CAP_SDIO | MMC_CAP_MMC)))
> 		mmc->caps |= MMC_CAP_SD | MMC_CAP_MMC | MMC_CAP_SDIO;

Yes much nicer.  Will you add it to your patch?
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Matt Fleming July 27, 2009, 9:15 a.m. UTC | #3
On Mon, Jul 27, 2009 at 11:58:22AM +0300, Adrian Hunter wrote:
>
> Yes much nicer.  Will you add it to your patch?

Sure, I'll reply with an updated patch to 07/32 of this series.

Thanks Adrian.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Adrian Hunter July 27, 2009, 11:02 a.m. UTC | #4
Matt Fleming wrote:
> On Mon, Jul 27, 2009 at 10:15:11AM +0100, Matt Fleming wrote:
>> On Mon, Jul 27, 2009 at 11:58:22AM +0300, Adrian Hunter wrote:
>>> Yes much nicer.  Will you add it to your patch?
>> Sure, I'll reply with an updated patch to 07/32 of this series.
>>
>> Thanks Adrian.
> 
> OK, slight problem. If I change omap_hsmmc.c in 07/32 you'll need to
> respin all your patches from [PATCH 08/32] onwards. Is that OK with you?

I'd like to know what Andrew wants to do, as these patches are in mm tree.

In the past I have seen him ask for changes to be patched on top, rather than
make a new patch.

Otherwise I am happy to redo the patch set.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Andrew Morton July 27, 2009, 6:14 p.m. UTC | #5
On Mon, 27 Jul 2009 14:02:47 +0300 Adrian Hunter <adrian.hunter@nokia.com> wrote:

> Matt Fleming wrote:
> > On Mon, Jul 27, 2009 at 10:15:11AM +0100, Matt Fleming wrote:
> >> On Mon, Jul 27, 2009 at 11:58:22AM +0300, Adrian Hunter wrote:
> >>> Yes much nicer.  Will you add it to your patch?
> >> Sure, I'll reply with an updated patch to 07/32 of this series.
> >>
> >> Thanks Adrian.
> > 
> > OK, slight problem. If I change omap_hsmmc.c in 07/32 you'll need to
> > respin all your patches from [PATCH 08/32] onwards. Is that OK with you?
> 
> I'd like to know what Andrew wants to do, as these patches are in mm tree.
> 
> In the past I have seen him ask for changes to be patched on top, rather than
> make a new patch.
> 
> Otherwise I am happy to redo the patch set.

Respinning the patchset produces the nicest result, but if it's just a
matter of one modest fixup patch to be applied after the 32-patch
series then I don't think it'll kill anyone.

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Matt Fleming July 27, 2009, 7:32 p.m. UTC | #6
On Mon, Jul 27, 2009 at 11:14:48AM -0700, Andrew Morton wrote:
> On Mon, 27 Jul 2009 14:02:47 +0300 Adrian Hunter <adrian.hunter@nokia.com> wrote:
> 
> > Matt Fleming wrote:
> > > On Mon, Jul 27, 2009 at 10:15:11AM +0100, Matt Fleming wrote:
> > >> On Mon, Jul 27, 2009 at 11:58:22AM +0300, Adrian Hunter wrote:
> > >>> Yes much nicer.  Will you add it to your patch?
> > >> Sure, I'll reply with an updated patch to 07/32 of this series.
> > >>
> > >> Thanks Adrian.
> > > 
> > > OK, slight problem. If I change omap_hsmmc.c in 07/32 you'll need to
> > > respin all your patches from [PATCH 08/32] onwards. Is that OK with you?
> > 
> > I'd like to know what Andrew wants to do, as these patches are in mm tree.
> > 
> > In the past I have seen him ask for changes to be patched on top, rather than
> > make a new patch.
> > 
> > Otherwise I am happy to redo the patch set.
> 
> Respinning the patchset produces the nicest result, but if it's just a
> matter of one modest fixup patch to be applied after the 32-patch
> series then I don't think it'll kill anyone.

My only worry is that if we have a fixup patch at the end of the series
then we break bisection because the omap_hsmmc driver will not work from
07/32 until the fixup patch. I think the only two options are,

      a) move patch 07/32 to the end of the series (I can do the fix on
      top then, no problems).

      b) respin the all patches from 07/32 onwards.

Adrian, how feasible is option a)?
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 8900bae..f2548f1 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1720,6 +1720,11 @@  static int __init omap_hsmmc_probe(struct platform_device *pdev)
 		mmc->caps |= MMC_CAP_4_BIT_DATA;
 
 	mmc->caps |= mmc_slot(host).caps;
+	/* If no card caps specified then assume them all */
+	if (!((mmc->caps & MMC_CAP_SD) ||
+	      (mmc->caps & MMC_CAP_MMC) ||
+	      (mmc->caps & MMC_CAP_SDIO)))
+		mmc->caps |= MMC_CAP_SD & MMC_CAP_MMC & MMC_CAP_SDIO;
 
 	omap_hsmmc_conf_bus_power(host);