[U-Boot] [PATCH RFC 1/7] omap_hsmmc: update struct hsmmc to accommodate omap3 from DT
Vignesh R
vigneshr at ti.com
Tue Apr 11 04:33:26 UTC 2017
On Tuesday 11 April 2017 03:42 AM, Adam Ford wrote:
> I am working on porting an OMAP3630 board to support device tree, and
> I attempted to change enable DM_MMC. Unfortunately, that broke MMC.
>
> I discovered that the base addresses were originally updated to reflect a
> change in the base address when using the device tree for some devices.
>
> This was done in 11e1582506c6 ("omap_hsmmc: update struct hsmmc to accomodate
> base address from DT")
>
> Unfortunately, this breaks the base address on an OMAP3630 (and I assume
> omap34xx) which currently doesn't have OF support yet.
>
> Without this patch, the when driver attemps to write to mmc_base->sysconfig
> at 4809c110 is used instead of mmc_base->sysconfig at 4809c010. This makes any
> attempt to use the mmc fail. With this patch, I am able to read/write to the
> MMC device with DM_MMC enabled with OF support.
>
> If there is a better solution, I am open to ideas. I verified this against
> the OMAP3530 TRM and OMAP3630 TRM. Since AM3359 TRM has the same value,
> it might be helpful for other boards, but I don't have them to test. If there
> is a better solution, I am perfectly open for suggestions.
How about handling this in the same way as handled by Linux kernel
omap_hsmmc driver?
>
> If this gets reviewed and approved, I can push the OMAP3630 (and OMAP3) device
> trees which might let more boards move to DM and OF support.
>
> Signed-off-by: Adam Ford <aford173 at gmail.com>
>
> diff --git a/arch/arm/include/asm/omap_mmc.h b/arch/arm/include/asm/omap_mmc.h
> index f2bf645..fd9b741 100644
> --- a/arch/arm/include/asm/omap_mmc.h
> +++ b/arch/arm/include/asm/omap_mmc.h
> @@ -26,7 +26,7 @@
> #define OMAP_MMC_H_
>
> struct hsmmc {
> -#ifdef CONFIG_DM_MMC
> +#if defined(CONFIG_DM_MMC) && !defined(OMAP34XX)
> unsigned char res0[0x100];
> #endif
> unsigned char res1[0x10];
>
--
Regards
Vignesh
More information about the U-Boot
mailing list