On Tue, Apr 24, 2018 at 06:24:46PM +0530, Lokesh Vutla wrote:

> Add a Kconfig entry for MMU and imply for all platforms
> using cache-cp15.c. Using imply instead of select so that
> MMU can be disabled by defconfigs when not needed.
> 
> Signed-off-by: Lokesh Vutla <lokeshvu...@ti.com>
> ---
>  arch/arm/Kconfig      | 15 +++++++++++++++
>  arch/arm/lib/Makefile |  6 +-----
>  2 files changed, 16 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index de36ab6701..fe5bff097d 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -74,6 +74,12 @@ config ARM_ASM_UNIFIED
>  config THUMB2_KERNEL
>       bool
>  
> +config MMU
> +     bool "MMU-based Paged Memory Management Support"
> +     help
> +       Select if you want MMU-based virtualised addressing space
> +       support by paged memory management.
> +
>  # If set, the workarounds for these ARM errata are applied early during 
> U-Boot
>  # startup. Note that in general these options force the workarounds to be
>  # applied; no CPU-type/version detection exists, unlike the similar options 
> in
> @@ -158,33 +164,40 @@ config ARM_ERRATA_855873
>  config CPU_ARM720T
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_ARM920T
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_ARM926EJS
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_ARM946ES
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_ARM1136
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_ARM1176
>       bool
>       select HAS_VBAR
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_V7
>       bool
>       select HAS_VBAR
>       select HAS_THUMB2
>       select SYS_CACHE_SHIFT_6
> +     imply MMU
>  
>  config CPU_V7M
>       bool
> @@ -200,10 +213,12 @@ config CPU_V7R
>  config CPU_PXA
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config CPU_SA1100
>       bool
>       select SYS_CACHE_SHIFT_5
> +     imply MMU
>  
>  config SYS_CPU
>       default "arm720t" if CPU_ARM720T
> diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile
> index 3d3085e917..f907adc161 100644
> --- a/arch/arm/lib/Makefile
> +++ b/arch/arm/lib/Makefile
> @@ -63,11 +63,7 @@ obj-y      += reset.o
>  endif
>  
>  obj-y        += cache.o
> -ifndef CONFIG_ARM64
> -ifndef CONFIG_CPU_V7M
> -obj-y        += cache-cp15.o
> -endif
> -endif
> +obj-$(CONFIG_MMU)    += cache-cp15.o
>  
>  obj-y        += psci-dt.o

So, funny enough.  We have CONFIG_MMU code in ARM today that I bet
doesn't work and is just copy/pasted from the kernel and we should drop.

For right here, I think I'd rather see some CONFIG flag about
CONFIG_SYS_ARM_CACHE_CP15 instead.

-- 
Tom

Attachment: signature.asc
Description: PGP signature

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to