[PATCH] ARM: OMAP: fix erroneous mmc2 clock change on mmc3 setup

Tony Lindgren tony at atomide.com
Thu Jan 26 18:53:27 EST 2012


* Grazvydas Ignotas <notasas at gmail.com> [120126 15:06]:
> On Fri, Jan 27, 2012 at 1:19 AM, Tony Lindgren <tony at atomide.com> wrote:
> > * Grazvydas Ignotas <notasas at gmail.com> [111217 16:03]:
> >> hsmmc23_before_set_reg() can set MMCSDIO2ADPCLKISEL bit, which
> >> enables internal clock for MMC2. Currently this function is also called
> >> by code handling MMC3, and if .internal_clock is set in platform data
> >> (by default it currently is), it will set MMCSDIO2ADPCLKISEL for MMC2
> >> instead of MMC3 (MMC3 doesn't have such bit so nothing actually needs to
> >> be done). This breaks 2nd SD slot on pandora.
> >>
> >> Fix this by changing hsmmc23_before_set_reg() to only handle MMC2.
> >> Note that this removes .remux() call for MMC3, but no board currently
> >> needs it and it's also not called for MMC4 and MMC5.
> >>
> >> Signed-off-by: Grazvydas Ignotas <notasas at gmail.com>
> >> ---
> >> applies both on mainline and hsmmc branch.
> >>
> >>  arch/arm/mach-omap2/hsmmc.c |    7 +++----
> >>  1 files changed, 3 insertions(+), 4 deletions(-)
> >>
> >> diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
> >> index f4a1020..d90ac08 100644
> >> --- a/arch/arm/mach-omap2/hsmmc.c
> >> +++ b/arch/arm/mach-omap2/hsmmc.c
> >> @@ -171,7 +171,7 @@ static void omap4_hsmmc1_after_set_reg(struct device *dev, int slot,
> >>       }
> >>  }
> >>
> >> -static void hsmmc23_before_set_reg(struct device *dev, int slot,
> >> +static void hsmmc2_before_set_reg(struct device *dev, int slot,
> >>                                  int power_on, int vdd)
> >>  {
> >>       struct omap_mmc_platform_data *mmc = dev->platform_data;
> >
> > This hunk above changing the function name seems to be a typo?
> 
> No it's not, this function is changing MMC2 clock source and is no
> longer called for MMC3 after this patch (the call for MMC3 was the
> problem), so it loses hsmmc23 name.

OK thanks, applying into fixes.

Tony



More information about the linux-arm-kernel mailing list