[U-Boot] Commit "ARM: CPU: arm926ejs: Consolidate cache routines to common file" breaks u-boot on Dreamplug

Chris Packham judge.packham at gmail.com
Thu Feb 28 08:24:50 UTC 2019


Hi Leigh,

On Thu, Feb 28, 2019 at 1:11 AM Leigh Brown <leigh at solinno.co.uk> wrote:
>
> Hello,
>
> Vagrant Cascadian asked for people to test the version of u-boot
> packaged
> for Debian Buster.  I tested u-boot on my Dreamplug and found it was not
> working correctly.  I raised a bug for Debian[1] but I have also tested
> with the mainline version of u-boot and found the same issues.
>
> The first issue is that the following commit caused u-boot to no longer
> be able to access usb storage on the Dreamplug:
>
> commit 93b283d49f933f95f3a6f40762936f454ac655a8
> Author: Adam Ford <aford173 at gmail.com>
> Date:   Thu Aug 16 13:23:11 2018 -0500
>
>      ARM: CPU: arm926ejs: Consolidate cache routines to common file
>
>      Four different boards had different options for enabling cache
>      that were virtually all the same.  This consolidates these
>      common functions into arch/arm/cpu/arm926ejs/cache.c
>
>      This also has the positive side-effect of enabling cache on
>      the Davinci (da850) boards.
>
>      Signed-off-by: Adam Ford <aford173 at gmail.com>
>      [trini: Add mach-at91 to the list of consolidations]
>      Signed-off-by: Tom Rini <trini at konsulko.com>
>
> I don't have much knowledge of ARM caching, but the following patch
> makes
> it work again on my Dreamplug.
>
> diff --git a/arch/arm/mach-kirkwood/cpu.c b/arch/arm/mach-kirkwood/cpu.c
> index d54de53f31..8a065d73ae 100644
> --- a/arch/arm/mach-kirkwood/cpu.c
> +++ b/arch/arm/mach-kirkwood/cpu.c
> @@ -291,7 +291,6 @@ int arch_misc_init(void)
>         temp |= (1 << 22);
>         writefr_extra_feature_reg(temp);
>
> -       icache_enable();
>         /* Change reset vector to address 0x0 */
>         temp = get_cr();
>         set_cr(temp & ~CR_V);
> diff --git a/include/configs/dreamplug.h b/include/configs/dreamplug.h
> index f4d717213c..6348935c68 100644
> --- a/include/configs/dreamplug.h
> +++ b/include/configs/dreamplug.h
> @@ -79,4 +79,6 @@
>   #define CONFIG_SYS_ATA_IDE0_OFFSET    MV_SATA_PORT0_OFFSET
>   #endif /*CONFIG_MVSATA_IDE*/
>
> +#define CONFIG_SYS_DCACHE_OFF
> +
>   #endif /* _CONFIG_DREAMPLUG_H */
>
> I'd be grateful if someone could take a look.  If you need me to do any
> testing  or provide any more information, please let me know.
>

Thanks for pointing this out. I'd been having a problem like this with
the Ethernet interface. I'd been blaming the hardware I was using but
your change makes things work for me.

> I found another issue (documented in the same bug).  I'll send a
> separate
> email about that.
>
> Regards,
>
> Leigh.
>
> --
> [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=923379_______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot


More information about the U-Boot mailing list