Re: [PATCH 7/8] MIPS: BCM63XX: remove !RUNTIME_DETECT in cpu-feature-overrides

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jul 8, 2014 at 7:53 AM, Jonas Gorski <jogo@xxxxxxxxxxx> wrote:
> All three SoCs have in common they have a BMIPS32/BMIPS3300 CPU, so
> we can replace this as no SoC with BMIPS4350 support enabled.
>
> Signed-off-by: Jonas Gorski <jogo@xxxxxxxxxxx>
> ---
>  arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h b/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h
> index e9c408e..bc1167d 100644
> --- a/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h
> +++ b/arch/mips/include/asm/mach-bcm63xx/cpu-feature-overrides.h
> @@ -24,7 +24,7 @@
>  #define cpu_has_smartmips              0
>  #define cpu_has_vtag_icache            0
>
> -#if !defined(BCMCPU_RUNTIME_DETECT) && (defined(CONFIG_BCM63XX_CPU_6348) || defined(CONFIG_BCM63XX_CPU_6345) || defined(CONFIG_BCM63XX_CPU_6338))
> +#if !defined(CONFIG_SYS_HAS_CPU_BMIPS4350)
>  #define cpu_has_dc_aliases             0
>  #endif

Note that BCM6318 uses a 40nm BMIPS3300 with a 32kB D$.  I haven't
actually booted one of these myself but I would assume the way size is
either 16kB or 8kB.

I'm seeing another issue with the generic cpu_has_dc_aliases
implementation (cpu_data[0].dcache.flags & MIPS_CACHE_ALIASES).  The
HIGHMEM check in paging_init() runs before cpu_cache_init(), so
cpu_data[0].dcache.flags is still 0 and cpu_has_dc_aliases will never
be true at this point unless it was defined at compile time.

There seem to be some other problems with the way the HIGHMEM check is
handled, and I'm tempted to just move it after cpu_cache_init() and
make it a fatal error condition.  Then it can be removed entirely when
imgtec finalizes the "cache aliases + HIGHMEM" patch series.

Any opinions?





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux