* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-14 13:22 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2011-12-14 13:22 UTC (permalink / raw)
To: linux-arm-kernel; +Cc: Tony Lindgren, linux-omap, linux-mmc, Daniel Mack
External circuitry like level shifters may limit the maximum operation
speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
so boards can adjust the setting on demand.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Tony Lindgren <tony@atomide.com>
---
arch/arm/mach-omap2/hsmmc.c | 1 +
arch/arm/mach-omap2/hsmmc.h | 2 ++
drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
index f4a1020..4c7bc36 100644
--- a/arch/arm/mach-omap2/hsmmc.c
+++ b/arch/arm/mach-omap2/hsmmc.c
@@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
mmc->slots[0].caps = c->caps;
mmc->slots[0].internal_clock = !c->ext_clock;
mmc->dma_mask = 0xffffffff;
+ mmc->max_freq = c->max_freq;
if (cpu_is_omap44xx())
mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
else
diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
index f757e78..65a8c12 100644
--- a/arch/arm/mach-omap2/hsmmc.h
+++ b/arch/arm/mach-omap2/hsmmc.h
@@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
char *name; /* or NULL for default */
struct device *dev; /* returned: pointer to mmc adapter */
int ocr_mask; /* temporary HACK */
+ int max_freq; /* maximum clock, if constrained by external
+ * circuitry, or 0 for default */
/* Remux (pad configuration) when powering on/off */
void (*remux)(struct device *dev, int slot, int power_on);
/* init some special card */
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 101cd31..8215ef9 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
if (mmc_slot(host).vcc_aux_disable_is_sleep)
mmc_slot(host).no_off = 1;
- mmc->f_min = OMAP_MMC_MIN_CLOCK;
- mmc->f_max = OMAP_MMC_MAX_CLOCK;
+ mmc->f_min = OMAP_MMC_MIN_CLOCK;
+
+ if (pdata->max_freq > 0)
+ mmc->f_max = pdata->max_freq;
+ else
+ mmc->f_max = OMAP_MMC_MAX_CLOCK;
spin_lock_init(&host->irq_lock);
--
1.7.7.4
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-14 13:22 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2011-12-14 13:22 UTC (permalink / raw)
To: linux-arm-kernel
External circuitry like level shifters may limit the maximum operation
speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
so boards can adjust the setting on demand.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Tony Lindgren <tony@atomide.com>
---
arch/arm/mach-omap2/hsmmc.c | 1 +
arch/arm/mach-omap2/hsmmc.h | 2 ++
drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
index f4a1020..4c7bc36 100644
--- a/arch/arm/mach-omap2/hsmmc.c
+++ b/arch/arm/mach-omap2/hsmmc.c
@@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
mmc->slots[0].caps = c->caps;
mmc->slots[0].internal_clock = !c->ext_clock;
mmc->dma_mask = 0xffffffff;
+ mmc->max_freq = c->max_freq;
if (cpu_is_omap44xx())
mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
else
diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
index f757e78..65a8c12 100644
--- a/arch/arm/mach-omap2/hsmmc.h
+++ b/arch/arm/mach-omap2/hsmmc.h
@@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
char *name; /* or NULL for default */
struct device *dev; /* returned: pointer to mmc adapter */
int ocr_mask; /* temporary HACK */
+ int max_freq; /* maximum clock, if constrained by external
+ * circuitry, or 0 for default */
/* Remux (pad configuration) when powering on/off */
void (*remux)(struct device *dev, int slot, int power_on);
/* init some special card */
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 101cd31..8215ef9 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
if (mmc_slot(host).vcc_aux_disable_is_sleep)
mmc_slot(host).no_off = 1;
- mmc->f_min = OMAP_MMC_MIN_CLOCK;
- mmc->f_max = OMAP_MMC_MAX_CLOCK;
+ mmc->f_min = OMAP_MMC_MIN_CLOCK;
+
+ if (pdata->max_freq > 0)
+ mmc->f_max = pdata->max_freq;
+ else
+ mmc->f_max = OMAP_MMC_MAX_CLOCK;
spin_lock_init(&host->irq_lock);
--
1.7.7.4
^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2011-12-14 13:22 ` Daniel Mack
@ 2011-12-22 18:51 ` Tony Lindgren
-1 siblings, 0 replies; 26+ messages in thread
From: Tony Lindgren @ 2011-12-22 18:51 UTC (permalink / raw)
To: Daniel Mack; +Cc: linux-arm-kernel, linux-mmc, linux-omap
* Daniel Mack <zonque@gmail.com> [111214 04:51]:
> External circuitry like level shifters may limit the maximum operation
> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
> so boards can adjust the setting on demand.
>
> Signed-off-by: Daniel Mack <zonque@gmail.com>
> Cc: Tony Lindgren <tony@atomide.com>
Acked-by: Tony Lindgren <tony@atomide.com>
> ---
> arch/arm/mach-omap2/hsmmc.c | 1 +
> arch/arm/mach-omap2/hsmmc.h | 2 ++
> drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
> 3 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
> index f4a1020..4c7bc36 100644
> --- a/arch/arm/mach-omap2/hsmmc.c
> +++ b/arch/arm/mach-omap2/hsmmc.c
> @@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
> mmc->slots[0].caps = c->caps;
> mmc->slots[0].internal_clock = !c->ext_clock;
> mmc->dma_mask = 0xffffffff;
> + mmc->max_freq = c->max_freq;
> if (cpu_is_omap44xx())
> mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
> else
> diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
> index f757e78..65a8c12 100644
> --- a/arch/arm/mach-omap2/hsmmc.h
> +++ b/arch/arm/mach-omap2/hsmmc.h
> @@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
> char *name; /* or NULL for default */
> struct device *dev; /* returned: pointer to mmc adapter */
> int ocr_mask; /* temporary HACK */
> + int max_freq; /* maximum clock, if constrained by external
> + * circuitry, or 0 for default */
> /* Remux (pad configuration) when powering on/off */
> void (*remux)(struct device *dev, int slot, int power_on);
> /* init some special card */
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 101cd31..8215ef9 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> if (mmc_slot(host).vcc_aux_disable_is_sleep)
> mmc_slot(host).no_off = 1;
>
> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
> +
> + if (pdata->max_freq > 0)
> + mmc->f_max = pdata->max_freq;
> + else
> + mmc->f_max = OMAP_MMC_MAX_CLOCK;
>
> spin_lock_init(&host->irq_lock);
>
> --
> 1.7.7.4
>
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-22 18:51 ` Tony Lindgren
0 siblings, 0 replies; 26+ messages in thread
From: Tony Lindgren @ 2011-12-22 18:51 UTC (permalink / raw)
To: linux-arm-kernel
* Daniel Mack <zonque@gmail.com> [111214 04:51]:
> External circuitry like level shifters may limit the maximum operation
> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
> so boards can adjust the setting on demand.
>
> Signed-off-by: Daniel Mack <zonque@gmail.com>
> Cc: Tony Lindgren <tony@atomide.com>
Acked-by: Tony Lindgren <tony@atomide.com>
> ---
> arch/arm/mach-omap2/hsmmc.c | 1 +
> arch/arm/mach-omap2/hsmmc.h | 2 ++
> drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
> 3 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
> index f4a1020..4c7bc36 100644
> --- a/arch/arm/mach-omap2/hsmmc.c
> +++ b/arch/arm/mach-omap2/hsmmc.c
> @@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
> mmc->slots[0].caps = c->caps;
> mmc->slots[0].internal_clock = !c->ext_clock;
> mmc->dma_mask = 0xffffffff;
> + mmc->max_freq = c->max_freq;
> if (cpu_is_omap44xx())
> mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
> else
> diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
> index f757e78..65a8c12 100644
> --- a/arch/arm/mach-omap2/hsmmc.h
> +++ b/arch/arm/mach-omap2/hsmmc.h
> @@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
> char *name; /* or NULL for default */
> struct device *dev; /* returned: pointer to mmc adapter */
> int ocr_mask; /* temporary HACK */
> + int max_freq; /* maximum clock, if constrained by external
> + * circuitry, or 0 for default */
> /* Remux (pad configuration) when powering on/off */
> void (*remux)(struct device *dev, int slot, int power_on);
> /* init some special card */
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 101cd31..8215ef9 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> if (mmc_slot(host).vcc_aux_disable_is_sleep)
> mmc_slot(host).no_off = 1;
>
> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
> +
> + if (pdata->max_freq > 0)
> + mmc->f_max = pdata->max_freq;
> + else
> + mmc->f_max = OMAP_MMC_MAX_CLOCK;
>
> spin_lock_init(&host->irq_lock);
>
> --
> 1.7.7.4
>
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2011-12-14 13:22 ` Daniel Mack
@ 2011-12-22 19:37 ` Kishore Kadiyala
-1 siblings, 0 replies; 26+ messages in thread
From: Kishore Kadiyala @ 2011-12-22 19:37 UTC (permalink / raw)
To: Daniel Mack; +Cc: linux-arm-kernel, linux-mmc, linux-omap, Tony Lindgren
On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
> External circuitry like level shifters may limit the maximum operation
> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
> so boards can adjust the setting on demand.
>
> Signed-off-by: Daniel Mack <zonque@gmail.com>
> Cc: Tony Lindgren <tony@atomide.com>
> ---
> arch/arm/mach-omap2/hsmmc.c | 1 +
> arch/arm/mach-omap2/hsmmc.h | 2 ++
> drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
> 3 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
> index f4a1020..4c7bc36 100644
> --- a/arch/arm/mach-omap2/hsmmc.c
> +++ b/arch/arm/mach-omap2/hsmmc.c
> @@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
> mmc->slots[0].caps = c->caps;
> mmc->slots[0].internal_clock = !c->ext_clock;
> mmc->dma_mask = 0xffffffff;
> + mmc->max_freq = c->max_freq;
> if (cpu_is_omap44xx())
> mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
> else
> diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
> index f757e78..65a8c12 100644
> --- a/arch/arm/mach-omap2/hsmmc.h
> +++ b/arch/arm/mach-omap2/hsmmc.h
> @@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
> char *name; /* or NULL for default */
> struct device *dev; /* returned: pointer to mmc adapter */
> int ocr_mask; /* temporary HACK */
> + int max_freq; /* maximum clock, if constrained by external
> + * circuitry, or 0 for default */
> /* Remux (pad configuration) when powering on/off */
> void (*remux)(struct device *dev, int slot, int power_on);
> /* init some special card */
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 101cd31..8215ef9 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> if (mmc_slot(host).vcc_aux_disable_is_sleep)
> mmc_slot(host).no_off = 1;
>
> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
> +
> + if (pdata->max_freq > 0)
What about having check as below:
if (pdata->max_freq > 0 && pdata->max_freq < OMAP_MMC_MAX_CLOCK)
> + mmc->f_max = pdata->max_freq;
> + else
> + mmc->f_max = OMAP_MMC_MAX_CLOCK;
>
> spin_lock_init(&host->irq_lock);
>
> --
> 1.7.7.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-22 19:37 ` Kishore Kadiyala
0 siblings, 0 replies; 26+ messages in thread
From: Kishore Kadiyala @ 2011-12-22 19:37 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
> External circuitry like level shifters may limit the maximum operation
> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
> so boards can adjust the setting on demand.
>
> Signed-off-by: Daniel Mack <zonque@gmail.com>
> Cc: Tony Lindgren <tony@atomide.com>
> ---
> ?arch/arm/mach-omap2/hsmmc.c ? | ? ?1 +
> ?arch/arm/mach-omap2/hsmmc.h ? | ? ?2 ++
> ?drivers/mmc/host/omap_hsmmc.c | ? ?8 ++++++--
> ?3 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
> index f4a1020..4c7bc36 100644
> --- a/arch/arm/mach-omap2/hsmmc.c
> +++ b/arch/arm/mach-omap2/hsmmc.c
> @@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
> ? ? ? ?mmc->slots[0].caps = c->caps;
> ? ? ? ?mmc->slots[0].internal_clock = !c->ext_clock;
> ? ? ? ?mmc->dma_mask = 0xffffffff;
> + ? ? ? mmc->max_freq = c->max_freq;
> ? ? ? ?if (cpu_is_omap44xx())
> ? ? ? ? ? ? ? ?mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
> ? ? ? ?else
> diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
> index f757e78..65a8c12 100644
> --- a/arch/arm/mach-omap2/hsmmc.h
> +++ b/arch/arm/mach-omap2/hsmmc.h
> @@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
> ? ? ? ?char ? ?*name; ? ? ? ? ?/* or NULL for default */
> ? ? ? ?struct device *dev; ? ? /* returned: pointer to mmc adapter */
> ? ? ? ?int ? ? ocr_mask; ? ? ? /* temporary HACK */
> + ? ? ? int ? ? max_freq; ? ? ? /* maximum clock, if constrained by external
> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?* circuitry, or 0 for default */
> ? ? ? ?/* Remux (pad configuration) when powering on/off */
> ? ? ? ?void (*remux)(struct device *dev, int slot, int power_on);
> ? ? ? ?/* init some special card */
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 101cd31..8215ef9 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> ? ? ? ?if (mmc_slot(host).vcc_aux_disable_is_sleep)
> ? ? ? ? ? ? ? ?mmc_slot(host).no_off = 1;
>
> - ? ? ? mmc->f_min ? ? ?= OMAP_MMC_MIN_CLOCK;
> - ? ? ? mmc->f_max ? ? ?= OMAP_MMC_MAX_CLOCK;
> + ? ? ? mmc->f_min = OMAP_MMC_MIN_CLOCK;
> +
> + ? ? ? if (pdata->max_freq > 0)
What about having check as below:
if (pdata->max_freq > 0 && pdata->max_freq < OMAP_MMC_MAX_CLOCK)
> + ? ? ? ? ? ? ? mmc->f_max = pdata->max_freq;
> + ? ? ? else
> + ? ? ? ? ? ? ? mmc->f_max = OMAP_MMC_MAX_CLOCK;
>
> ? ? ? ?spin_lock_init(&host->irq_lock);
>
> --
> 1.7.7.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2011-12-22 19:37 ` Kishore Kadiyala
@ 2011-12-22 23:02 ` Daniel Mack
-1 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2011-12-22 23:02 UTC (permalink / raw)
To: Kishore Kadiyala; +Cc: linux-arm-kernel, linux-mmc, linux-omap, Tony Lindgren
On 12/22/2011 08:37 PM, Kishore Kadiyala wrote:
> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>> External circuitry like level shifters may limit the maximum operation
>> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
>> so boards can adjust the setting on demand.
>>
>> Signed-off-by: Daniel Mack <zonque@gmail.com>
>> Cc: Tony Lindgren <tony@atomide.com>
>> ---
>> arch/arm/mach-omap2/hsmmc.c | 1 +
>> arch/arm/mach-omap2/hsmmc.h | 2 ++
>> drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
>> 3 files changed, 9 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
>> index f4a1020..4c7bc36 100644
>> --- a/arch/arm/mach-omap2/hsmmc.c
>> +++ b/arch/arm/mach-omap2/hsmmc.c
>> @@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
>> mmc->slots[0].caps = c->caps;
>> mmc->slots[0].internal_clock = !c->ext_clock;
>> mmc->dma_mask = 0xffffffff;
>> + mmc->max_freq = c->max_freq;
>> if (cpu_is_omap44xx())
>> mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
>> else
>> diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
>> index f757e78..65a8c12 100644
>> --- a/arch/arm/mach-omap2/hsmmc.h
>> +++ b/arch/arm/mach-omap2/hsmmc.h
>> @@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
>> char *name; /* or NULL for default */
>> struct device *dev; /* returned: pointer to mmc adapter */
>> int ocr_mask; /* temporary HACK */
>> + int max_freq; /* maximum clock, if constrained by external
>> + * circuitry, or 0 for default */
>> /* Remux (pad configuration) when powering on/off */
>> void (*remux)(struct device *dev, int slot, int power_on);
>> /* init some special card */
>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> index 101cd31..8215ef9 100644
>> --- a/drivers/mmc/host/omap_hsmmc.c
>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>> mmc_slot(host).no_off = 1;
>>
>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> +
>> + if (pdata->max_freq > 0)
>
> What about having check as below:
> if (pdata->max_freq > 0 && pdata->max_freq < OMAP_MMC_MAX_CLOCK)
I can quickly do that if Tony agrees on it. Any opinions?
Thanks,
Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-22 23:02 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2011-12-22 23:02 UTC (permalink / raw)
To: linux-arm-kernel
On 12/22/2011 08:37 PM, Kishore Kadiyala wrote:
> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>> External circuitry like level shifters may limit the maximum operation
>> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
>> so boards can adjust the setting on demand.
>>
>> Signed-off-by: Daniel Mack <zonque@gmail.com>
>> Cc: Tony Lindgren <tony@atomide.com>
>> ---
>> arch/arm/mach-omap2/hsmmc.c | 1 +
>> arch/arm/mach-omap2/hsmmc.h | 2 ++
>> drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
>> 3 files changed, 9 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
>> index f4a1020..4c7bc36 100644
>> --- a/arch/arm/mach-omap2/hsmmc.c
>> +++ b/arch/arm/mach-omap2/hsmmc.c
>> @@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
>> mmc->slots[0].caps = c->caps;
>> mmc->slots[0].internal_clock = !c->ext_clock;
>> mmc->dma_mask = 0xffffffff;
>> + mmc->max_freq = c->max_freq;
>> if (cpu_is_omap44xx())
>> mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
>> else
>> diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
>> index f757e78..65a8c12 100644
>> --- a/arch/arm/mach-omap2/hsmmc.h
>> +++ b/arch/arm/mach-omap2/hsmmc.h
>> @@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
>> char *name; /* or NULL for default */
>> struct device *dev; /* returned: pointer to mmc adapter */
>> int ocr_mask; /* temporary HACK */
>> + int max_freq; /* maximum clock, if constrained by external
>> + * circuitry, or 0 for default */
>> /* Remux (pad configuration) when powering on/off */
>> void (*remux)(struct device *dev, int slot, int power_on);
>> /* init some special card */
>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> index 101cd31..8215ef9 100644
>> --- a/drivers/mmc/host/omap_hsmmc.c
>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>> mmc_slot(host).no_off = 1;
>>
>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> +
>> + if (pdata->max_freq > 0)
>
> What about having check as below:
> if (pdata->max_freq > 0 && pdata->max_freq < OMAP_MMC_MAX_CLOCK)
I can quickly do that if Tony agrees on it. Any opinions?
Thanks,
Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2011-12-14 13:22 ` Daniel Mack
@ 2011-12-23 15:40 ` T Krishnamoorthy, Balaji
-1 siblings, 0 replies; 26+ messages in thread
From: T Krishnamoorthy, Balaji @ 2011-12-23 15:40 UTC (permalink / raw)
To: Daniel Mack; +Cc: linux-arm-kernel, linux-mmc, linux-omap, Tony Lindgren
On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 101cd31..8215ef9 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> if (mmc_slot(host).vcc_aux_disable_is_sleep)
> mmc_slot(host).no_off = 1;
>
> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
Stray change for f_min ?
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-23 15:40 ` T Krishnamoorthy, Balaji
0 siblings, 0 replies; 26+ messages in thread
From: T Krishnamoorthy, Balaji @ 2011-12-23 15:40 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> index 101cd31..8215ef9 100644
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> ? ? ? ?if (mmc_slot(host).vcc_aux_disable_is_sleep)
> ? ? ? ? ? ? ? ?mmc_slot(host).no_off = 1;
>
> - ? ? ? mmc->f_min ? ? ?= OMAP_MMC_MIN_CLOCK;
> - ? ? ? mmc->f_max ? ? ?= OMAP_MMC_MAX_CLOCK;
> + ? ? ? mmc->f_min = OMAP_MMC_MIN_CLOCK;
Stray change for f_min ?
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2011-12-23 15:40 ` T Krishnamoorthy, Balaji
@ 2011-12-29 13:22 ` Daniel Mack
-1 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2011-12-29 13:22 UTC (permalink / raw)
To: T Krishnamoorthy, Balaji
Cc: linux-arm-kernel, linux-mmc, linux-omap, Tony Lindgren
On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> index 101cd31..8215ef9 100644
>> --- a/drivers/mmc/host/omap_hsmmc.c
>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>> mmc_slot(host).no_off = 1;
>>
>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>
> Stray change for f_min ?
No, this was intended. The indentation doesn't make sense anymore when
not grouped with the f_max assignment.
Other than that, what is necessary to get this picked? Tony? :)
Thanks,
Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2011-12-29 13:22 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2011-12-29 13:22 UTC (permalink / raw)
To: linux-arm-kernel
On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> index 101cd31..8215ef9 100644
>> --- a/drivers/mmc/host/omap_hsmmc.c
>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>> mmc_slot(host).no_off = 1;
>>
>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>
> Stray change for f_min ?
No, this was intended. The indentation doesn't make sense anymore when
not grouped with the f_max assignment.
Other than that, what is necessary to get this picked? Tony? :)
Thanks,
Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2011-12-29 13:22 ` Daniel Mack
@ 2012-02-17 13:44 ` Daniel Mack
-1 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2012-02-17 13:44 UTC (permalink / raw)
To: T Krishnamoorthy, Balaji
Cc: linux-arm-kernel, linux-mmc, linux-omap, Tony Lindgren
ping? Could anyone care for queueing this please?
On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
> On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
>> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>>> index 101cd31..8215ef9 100644
>>> --- a/drivers/mmc/host/omap_hsmmc.c
>>> +++ b/drivers/mmc/host/omap_hsmmc.c
>>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>>> mmc_slot(host).no_off = 1;
>>>
>>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>>
>> Stray change for f_min ?
>
> No, this was intended. The indentation doesn't make sense anymore when
> not grouped with the f_max assignment.
>
> Other than that, what is necessary to get this picked? Tony? :)
>
>
> Thanks,
> Daniel
--
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
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-02-17 13:44 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2012-02-17 13:44 UTC (permalink / raw)
To: linux-arm-kernel
ping? Could anyone care for queueing this please?
On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
> On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
>> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>>> index 101cd31..8215ef9 100644
>>> --- a/drivers/mmc/host/omap_hsmmc.c
>>> +++ b/drivers/mmc/host/omap_hsmmc.c
>>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>>> ? ? ? ?if (mmc_slot(host).vcc_aux_disable_is_sleep)
>>> ? ? ? ? ? ? ? ?mmc_slot(host).no_off = 1;
>>>
>>> - ? ? ? mmc->f_min ? ? ?= OMAP_MMC_MIN_CLOCK;
>>> - ? ? ? mmc->f_max ? ? ?= OMAP_MMC_MAX_CLOCK;
>>> + ? ? ? mmc->f_min = OMAP_MMC_MIN_CLOCK;
>>
>> Stray change for f_min ?
>
> No, this was intended. The indentation doesn't make sense anymore when
> not grouped with the f_max assignment.
>
> Other than that, what is necessary to get this picked? Tony? :)
>
>
> Thanks,
> Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2012-02-17 13:44 ` Daniel Mack
@ 2012-02-17 17:09 ` Cousson, Benoit
-1 siblings, 0 replies; 26+ messages in thread
From: Cousson, Benoit @ 2012-02-17 17:09 UTC (permalink / raw)
To: Daniel Mack
Cc: T Krishnamoorthy, Balaji, linux-arm-kernel, linux-mmc,
linux-omap, Tony Lindgren
On 2/17/2012 2:44 PM, Daniel Mack wrote:
> ping? Could anyone care for queueing this please?
There is no OMAP HSMMC dedicated maintainer anymore so I guess you should ping
Chris Ball <cjb@laptop.org>.
Regards,
Benoit
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-02-17 17:09 ` Cousson, Benoit
0 siblings, 0 replies; 26+ messages in thread
From: Cousson, Benoit @ 2012-02-17 17:09 UTC (permalink / raw)
To: linux-arm-kernel
On 2/17/2012 2:44 PM, Daniel Mack wrote:
> ping? Could anyone care for queueing this please?
There is no OMAP HSMMC dedicated maintainer anymore so I guess you should ping
Chris Ball <cjb@laptop.org>.
Regards,
Benoit
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2012-02-17 13:44 ` Daniel Mack
@ 2012-03-02 0:11 ` Tony Lindgren
-1 siblings, 0 replies; 26+ messages in thread
From: Tony Lindgren @ 2012-03-02 0:11 UTC (permalink / raw)
To: Daniel Mack, Rajendra Nayak
Cc: T Krishnamoorthy, Balaji, linux-arm-kernel, linux-mmc, linux-omap
Hi,
* Daniel Mack <zonque@gmail.com> [120217 05:13]:
> ping? Could anyone care for queueing this please?
I suggest Rajendra queue up omap_hsmmc.c patches as he's already
patching it.
Regards,
Tony
> On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
> > On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
> >> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
> >>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> >>> index 101cd31..8215ef9 100644
> >>> --- a/drivers/mmc/host/omap_hsmmc.c
> >>> +++ b/drivers/mmc/host/omap_hsmmc.c
> >>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> >>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
> >>> mmc_slot(host).no_off = 1;
> >>>
> >>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
> >>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
> >>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
> >>
> >> Stray change for f_min ?
> >
> > No, this was intended. The indentation doesn't make sense anymore when
> > not grouped with the f_max assignment.
> >
> > Other than that, what is necessary to get this picked? Tony? :)
> >
> >
> > Thanks,
> > Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-03-02 0:11 ` Tony Lindgren
0 siblings, 0 replies; 26+ messages in thread
From: Tony Lindgren @ 2012-03-02 0:11 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
* Daniel Mack <zonque@gmail.com> [120217 05:13]:
> ping? Could anyone care for queueing this please?
I suggest Rajendra queue up omap_hsmmc.c patches as he's already
patching it.
Regards,
Tony
> On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
> > On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
> >> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
> >>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> >>> index 101cd31..8215ef9 100644
> >>> --- a/drivers/mmc/host/omap_hsmmc.c
> >>> +++ b/drivers/mmc/host/omap_hsmmc.c
> >>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
> >>> ? ? ? ?if (mmc_slot(host).vcc_aux_disable_is_sleep)
> >>> ? ? ? ? ? ? ? ?mmc_slot(host).no_off = 1;
> >>>
> >>> - ? ? ? mmc->f_min ? ? ?= OMAP_MMC_MIN_CLOCK;
> >>> - ? ? ? mmc->f_max ? ? ?= OMAP_MMC_MAX_CLOCK;
> >>> + ? ? ? mmc->f_min = OMAP_MMC_MIN_CLOCK;
> >>
> >> Stray change for f_min ?
> >
> > No, this was intended. The indentation doesn't make sense anymore when
> > not grouped with the f_max assignment.
> >
> > Other than that, what is necessary to get this picked? Tony? :)
> >
> >
> > Thanks,
> > Daniel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2012-03-02 0:11 ` Tony Lindgren
@ 2012-03-02 7:11 ` S, Venkatraman
-1 siblings, 0 replies; 26+ messages in thread
From: S, Venkatraman @ 2012-03-02 7:11 UTC (permalink / raw)
To: Tony Lindgren, Chris Ball
Cc: Daniel Mack, Rajendra Nayak, T Krishnamoorthy, Balaji,
linux-arm-kernel, linux-mmc, linux-omap
+Chris queues all MMC patches including omap_hsmmc.
Ping ?
On Fri, Mar 2, 2012 at 5:41 AM, Tony Lindgren <tony@atomide.com> wrote:
> Hi,
>
> * Daniel Mack <zonque@gmail.com> [120217 05:13]:
>> ping? Could anyone care for queueing this please?
>
> I suggest Rajendra queue up omap_hsmmc.c patches as he's already
> patching it.
>
> Regards,
>
> Tony
>
>
>> On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
>> > On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
>> >> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>> >>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> >>> index 101cd31..8215ef9 100644
>> >>> --- a/drivers/mmc/host/omap_hsmmc.c
>> >>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> >>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> >>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>> >>> mmc_slot(host).no_off = 1;
>> >>>
>> >>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> >>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>> >>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> >>
>> >> Stray change for f_min ?
>> >
>> > No, this was intended. The indentation doesn't make sense anymore when
>> > not grouped with the f_max assignment.
>> >
>> > Other than that, what is necessary to get this picked? Tony? :)
>> >
>> >
>> > Thanks,
>> > Daniel
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-03-02 7:11 ` S, Venkatraman
0 siblings, 0 replies; 26+ messages in thread
From: S, Venkatraman @ 2012-03-02 7:11 UTC (permalink / raw)
To: linux-arm-kernel
+Chris queues all MMC patches including omap_hsmmc.
Ping ?
On Fri, Mar 2, 2012 at 5:41 AM, Tony Lindgren <tony@atomide.com> wrote:
> Hi,
>
> * Daniel Mack <zonque@gmail.com> [120217 05:13]:
>> ping? Could anyone care for queueing this please?
>
> I suggest Rajendra queue up omap_hsmmc.c patches as he's already
> patching it.
>
> Regards,
>
> Tony
>
>
>> On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
>> > On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
>> >> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>> >>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>> >>> index 101cd31..8215ef9 100644
>> >>> --- a/drivers/mmc/host/omap_hsmmc.c
>> >>> +++ b/drivers/mmc/host/omap_hsmmc.c
>> >>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>> >>> ? ? ? ?if (mmc_slot(host).vcc_aux_disable_is_sleep)
>> >>> ? ? ? ? ? ? ? ?mmc_slot(host).no_off = 1;
>> >>>
>> >>> - ? ? ? mmc->f_min ? ? ?= OMAP_MMC_MIN_CLOCK;
>> >>> - ? ? ? mmc->f_max ? ? ?= OMAP_MMC_MAX_CLOCK;
>> >>> + ? ? ? mmc->f_min = OMAP_MMC_MIN_CLOCK;
>> >>
>> >> Stray change for f_min ?
>> >
>> > No, this was intended. The indentation doesn't make sense anymore when
>> > not grouped with the f_max assignment.
>> >
>> > Other than that, what is necessary to get this picked? Tony? :)
>> >
>> >
>> > Thanks,
>> > Daniel
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2012-03-02 7:11 ` S, Venkatraman
@ 2012-03-02 9:14 ` S, Venkatraman
-1 siblings, 0 replies; 26+ messages in thread
From: S, Venkatraman @ 2012-03-02 9:14 UTC (permalink / raw)
To: Tony Lindgren, Chris Ball
Cc: Daniel Mack, Rajendra Nayak, T Krishnamoorthy, Balaji,
linux-arm-kernel, linux-mmc, linux-omap
On Fri, Mar 2, 2012 at 12:41 PM, S, Venkatraman <svenkatr@ti.com> wrote:
> +Chris queues all MMC patches including omap_hsmmc.
> Ping ?
>
Just realized that it's already queued in mmc-next
http://git.kernel.org/?p=linux/kernel/git/cjb/mmc.git;a=commitdiff;h=25d6ba8171995230b3757c78c7470fa76a931b98
>
> On Fri, Mar 2, 2012 at 5:41 AM, Tony Lindgren <tony@atomide.com> wrote:
>> Hi,
>>
>> * Daniel Mack <zonque@gmail.com> [120217 05:13]:
>>> ping? Could anyone care for queueing this please?
>>
>> I suggest Rajendra queue up omap_hsmmc.c patches as he's already
>> patching it.
>>
>> Regards,
>>
>> Tony
>>
>>
>>> On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
>>> > On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
>>> >> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>>> >>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>>> >>> index 101cd31..8215ef9 100644
>>> >>> --- a/drivers/mmc/host/omap_hsmmc.c
>>> >>> +++ b/drivers/mmc/host/omap_hsmmc.c
>>> >>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>>> >>> if (mmc_slot(host).vcc_aux_disable_is_sleep)
>>> >>> mmc_slot(host).no_off = 1;
>>> >>>
>>> >>> - mmc->f_min = OMAP_MMC_MIN_CLOCK;
>>> >>> - mmc->f_max = OMAP_MMC_MAX_CLOCK;
>>> >>> + mmc->f_min = OMAP_MMC_MIN_CLOCK;
>>> >>
>>> >> Stray change for f_min ?
>>> >
>>> > No, this was intended. The indentation doesn't make sense anymore when
>>> > not grouped with the f_max assignment.
>>> >
>>> > Other than that, what is necessary to get this picked? Tony? :)
>>> >
>>> >
>>> > Thanks,
>>> > Daniel
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-03-02 9:14 ` S, Venkatraman
0 siblings, 0 replies; 26+ messages in thread
From: S, Venkatraman @ 2012-03-02 9:14 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Mar 2, 2012 at 12:41 PM, S, Venkatraman <svenkatr@ti.com> wrote:
> +Chris queues all MMC patches including omap_hsmmc.
> Ping ?
>
Just realized that it's already queued in mmc-next
http://git.kernel.org/?p=linux/kernel/git/cjb/mmc.git;a=commitdiff;h=25d6ba8171995230b3757c78c7470fa76a931b98
>
> On Fri, Mar 2, 2012 at 5:41 AM, Tony Lindgren <tony@atomide.com> wrote:
>> Hi,
>>
>> * Daniel Mack <zonque@gmail.com> [120217 05:13]:
>>> ping? Could anyone care for queueing this please?
>>
>> I suggest Rajendra queue up omap_hsmmc.c patches as he's already
>> patching it.
>>
>> Regards,
>>
>> Tony
>>
>>
>>> On Thu, Dec 29, 2011 at 2:22 PM, Daniel Mack <zonque@gmail.com> wrote:
>>> > On 12/23/2011 04:40 PM, T Krishnamoorthy, Balaji wrote:
>>> >> On Wed, Dec 14, 2011 at 6:52 PM, Daniel Mack <zonque@gmail.com> wrote:
>>> >>> diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
>>> >>> index 101cd31..8215ef9 100644
>>> >>> --- a/drivers/mmc/host/omap_hsmmc.c
>>> >>> +++ b/drivers/mmc/host/omap_hsmmc.c
>>> >>> @@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
>>> >>> ? ? ? ?if (mmc_slot(host).vcc_aux_disable_is_sleep)
>>> >>> ? ? ? ? ? ? ? ?mmc_slot(host).no_off = 1;
>>> >>>
>>> >>> - ? ? ? mmc->f_min ? ? ?= OMAP_MMC_MIN_CLOCK;
>>> >>> - ? ? ? mmc->f_max ? ? ?= OMAP_MMC_MAX_CLOCK;
>>> >>> + ? ? ? mmc->f_min = OMAP_MMC_MIN_CLOCK;
>>> >>
>>> >> Stray change for f_min ?
>>> >
>>> > No, this was intended. The indentation doesn't make sense anymore when
>>> > not grouped with the f_max assignment.
>>> >
>>> > Other than that, what is necessary to get this picked? Tony? :)
>>> >
>>> >
>>> > Thanks,
>>> > Daniel
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
>> the body of a message to majordomo at vger.kernel.org
>> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] ARM: OMAP: hsmmc: add max_freq field
2012-02-19 12:20 ` Daniel Mack
@ 2012-02-19 16:16 ` Chris Ball
-1 siblings, 0 replies; 26+ messages in thread
From: Chris Ball @ 2012-02-19 16:16 UTC (permalink / raw)
To: Daniel Mack; +Cc: linux-arm-kernel, linux-mmc, linux-omap, Cousson, Benoit
Hi,
On Sun, Feb 19 2012, Daniel Mack wrote:
> External circuitry like level shifters may limit the maximum operation
> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
> so boards can adjust the setting on demand.
>
> Signed-off-by: Daniel Mack <zonque@gmail.com>
> Acked-by: Tony Lindgren <tony@atomide.com>
> Cc: Chris Ball <cjb@laptop.org>
> Cc: Cousson, Benoit <b-cousson@ti.com>
> ---
>
> This trivial patch is in my queue for some time already, and Tony acked
> on it awhile back. I was told to take Chris Ball in the loop as there
> is currently no OMAP MMC maintainer.
>
> This still applies cleanly to 3.3-rc4. Chris, can you queue this?
Thanks, queued in mmc-next now. (The arch/arm/mach-omap2/hsmmc.c
change did not apply cleanly, though; I fixed that.)
- Chris.
--
Chris Ball <cjb@laptop.org> <http://printf.net/>
One Laptop Per Child
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-02-19 16:16 ` Chris Ball
0 siblings, 0 replies; 26+ messages in thread
From: Chris Ball @ 2012-02-19 16:16 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On Sun, Feb 19 2012, Daniel Mack wrote:
> External circuitry like level shifters may limit the maximum operation
> speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
> so boards can adjust the setting on demand.
>
> Signed-off-by: Daniel Mack <zonque@gmail.com>
> Acked-by: Tony Lindgren <tony@atomide.com>
> Cc: Chris Ball <cjb@laptop.org>
> Cc: Cousson, Benoit <b-cousson@ti.com>
> ---
>
> This trivial patch is in my queue for some time already, and Tony acked
> on it awhile back. I was told to take Chris Ball in the loop as there
> is currently no OMAP MMC maintainer.
>
> This still applies cleanly to 3.3-rc4. Chris, can you queue this?
Thanks, queued in mmc-next now. (The arch/arm/mach-omap2/hsmmc.c
change did not apply cleanly, though; I fixed that.)
- Chris.
--
Chris Ball <cjb@laptop.org> <http://printf.net/>
One Laptop Per Child
^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-02-19 12:20 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2012-02-19 12:20 UTC (permalink / raw)
To: linux-arm-kernel
Cc: Cousson, Benoit, linux-omap, linux-mmc, Chris Ball, Daniel Mack
External circuitry like level shifters may limit the maximum operation
speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
so boards can adjust the setting on demand.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Cc: Chris Ball <cjb@laptop.org>
Cc: Cousson, Benoit <b-cousson@ti.com>
---
This trivial patch is in my queue for some time already, and Tony acked
on it awhile back. I was told to take Chris Ball in the loop as there
is currently no OMAP MMC maintainer.
This still applies cleanly to 3.3-rc4. Chris, can you queue this?
arch/arm/mach-omap2/hsmmc.c | 1 +
arch/arm/mach-omap2/hsmmc.h | 2 ++
drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
index f4a1020..4c7bc36 100644
--- a/arch/arm/mach-omap2/hsmmc.c
+++ b/arch/arm/mach-omap2/hsmmc.c
@@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
mmc->slots[0].caps = c->caps;
mmc->slots[0].internal_clock = !c->ext_clock;
mmc->dma_mask = 0xffffffff;
+ mmc->max_freq = c->max_freq;
if (cpu_is_omap44xx())
mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
else
diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
index f757e78..65a8c12 100644
--- a/arch/arm/mach-omap2/hsmmc.h
+++ b/arch/arm/mach-omap2/hsmmc.h
@@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
char *name; /* or NULL for default */
struct device *dev; /* returned: pointer to mmc adapter */
int ocr_mask; /* temporary HACK */
+ int max_freq; /* maximum clock, if constrained by external
+ * circuitry, or 0 for default */
/* Remux (pad configuration) when powering on/off */
void (*remux)(struct device *dev, int slot, int power_on);
/* init some special card */
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 101cd31..8215ef9 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
if (mmc_slot(host).vcc_aux_disable_is_sleep)
mmc_slot(host).no_off = 1;
- mmc->f_min = OMAP_MMC_MIN_CLOCK;
- mmc->f_max = OMAP_MMC_MAX_CLOCK;
+ mmc->f_min = OMAP_MMC_MIN_CLOCK;
+
+ if (pdata->max_freq > 0)
+ mmc->f_max = pdata->max_freq;
+ else
+ mmc->f_max = OMAP_MMC_MAX_CLOCK;
spin_lock_init(&host->irq_lock);
--
1.7.7.4
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH] ARM: OMAP: hsmmc: add max_freq field
@ 2012-02-19 12:20 ` Daniel Mack
0 siblings, 0 replies; 26+ messages in thread
From: Daniel Mack @ 2012-02-19 12:20 UTC (permalink / raw)
To: linux-arm-kernel
External circuitry like level shifters may limit the maximum operation
speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info
so boards can adjust the setting on demand.
Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Cc: Chris Ball <cjb@laptop.org>
Cc: Cousson, Benoit <b-cousson@ti.com>
---
This trivial patch is in my queue for some time already, and Tony acked
on it awhile back. I was told to take Chris Ball in the loop as there
is currently no OMAP MMC maintainer.
This still applies cleanly to 3.3-rc4. Chris, can you queue this?
arch/arm/mach-omap2/hsmmc.c | 1 +
arch/arm/mach-omap2/hsmmc.h | 2 ++
drivers/mmc/host/omap_hsmmc.c | 8 ++++++--
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
index f4a1020..4c7bc36 100644
--- a/arch/arm/mach-omap2/hsmmc.c
+++ b/arch/arm/mach-omap2/hsmmc.c
@@ -298,6 +298,7 @@ static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
mmc->slots[0].caps = c->caps;
mmc->slots[0].internal_clock = !c->ext_clock;
mmc->dma_mask = 0xffffffff;
+ mmc->max_freq = c->max_freq;
if (cpu_is_omap44xx())
mmc->reg_offset = OMAP4_MMC_REG_OFFSET;
else
diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
index f757e78..65a8c12 100644
--- a/arch/arm/mach-omap2/hsmmc.h
+++ b/arch/arm/mach-omap2/hsmmc.h
@@ -25,6 +25,8 @@ struct omap2_hsmmc_info {
char *name; /* or NULL for default */
struct device *dev; /* returned: pointer to mmc adapter */
int ocr_mask; /* temporary HACK */
+ int max_freq; /* maximum clock, if constrained by external
+ * circuitry, or 0 for default */
/* Remux (pad configuration) when powering on/off */
void (*remux)(struct device *dev, int slot, int power_on);
/* init some special card */
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 101cd31..8215ef9 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1927,8 +1927,12 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev)
if (mmc_slot(host).vcc_aux_disable_is_sleep)
mmc_slot(host).no_off = 1;
- mmc->f_min = OMAP_MMC_MIN_CLOCK;
- mmc->f_max = OMAP_MMC_MAX_CLOCK;
+ mmc->f_min = OMAP_MMC_MIN_CLOCK;
+
+ if (pdata->max_freq > 0)
+ mmc->f_max = pdata->max_freq;
+ else
+ mmc->f_max = OMAP_MMC_MAX_CLOCK;
spin_lock_init(&host->irq_lock);
--
1.7.7.4
^ permalink raw reply related [flat|nested] 26+ messages in thread
end of thread, other threads:[~2012-03-02 9:14 UTC | newest]
Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-14 13:22 [PATCH] ARM: OMAP: hsmmc: add max_freq field Daniel Mack
2011-12-14 13:22 ` Daniel Mack
2011-12-22 18:51 ` Tony Lindgren
2011-12-22 18:51 ` Tony Lindgren
2011-12-22 19:37 ` Kishore Kadiyala
2011-12-22 19:37 ` Kishore Kadiyala
2011-12-22 23:02 ` Daniel Mack
2011-12-22 23:02 ` Daniel Mack
2011-12-23 15:40 ` T Krishnamoorthy, Balaji
2011-12-23 15:40 ` T Krishnamoorthy, Balaji
2011-12-29 13:22 ` Daniel Mack
2011-12-29 13:22 ` Daniel Mack
2012-02-17 13:44 ` Daniel Mack
2012-02-17 13:44 ` Daniel Mack
2012-02-17 17:09 ` Cousson, Benoit
2012-02-17 17:09 ` Cousson, Benoit
2012-03-02 0:11 ` Tony Lindgren
2012-03-02 0:11 ` Tony Lindgren
2012-03-02 7:11 ` S, Venkatraman
2012-03-02 7:11 ` S, Venkatraman
2012-03-02 9:14 ` S, Venkatraman
2012-03-02 9:14 ` S, Venkatraman
2012-02-19 12:20 Daniel Mack
2012-02-19 12:20 ` Daniel Mack
2012-02-19 16:16 ` Chris Ball
2012-02-19 16:16 ` Chris Ball
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.