On Fri, May 08, 2020 at 12:19:23AM +0300, Serge Semin wrote:
> On Thu, May 07, 2020 at 01:17:35PM +0200, Thomas Bogendoerfer wrote:
> > P5600 is CPU_MIPS_R5 so can't you select it here and drop all the || 
> > CPU_5600
> > above/below ?
> 
> Alas, We can't do this so easy. CONFIG_CPU_MIPS32_{R2,R5,R6} and any other
> CONFIG_CPU_* configs is something that kernel config-file is supposed to 
> select.
> Their availability is enabled by the CONFIG_SYS_HAS_CPU_* configs. 
> CONFIG_CPU_*
> is supposed to activate CPU-specific features and there is only one
> CONFIG_CPU_x can be enabled at a time seeing it's a part of the "CPU type"
> choice kconfig menu. In addition the CPU config also tunes a compiler to 
> activate
> the arch-specific ISA and optimizations in the arch/mips/Makefile by setting
> -march=cpu-name (where cpu-name can be p5600, mips32r5, etc).
> 
> Yes, P5600 is based on the MIPS32r5, but it also has got some specific 
> features
> (see config CPU_P5600 and config MIPS32_R5), which makes it to be different 
> from
> the ancestor. So In addition to the difficulties described above IMHO 
> converting
> CPU_P5600 to a set of features activated on top of the CPU_MIPS32_R5 config
> would contradict the design of the CPU-support configs implemented in the MIPS
> arch subsystem.

maybe I wasn't clear enough, my suggestion is

use 

config CPU_P5600
        bool "MIPS Warrior P5600"
        depends on SYS_HAS_CPU_P5600
        select CPU_MIPS32_R5
        select CPU_SUPPORTS_UNCACHED_ACCELERATED
        select CPU_SUPPORTS_CPUFREQ
        select CPU_MIPSR2_IRQ_VI
        select CPU_MIPSR2_IRQ_EI

That way you don't need to any "|| CPU_P5600" where CPU_MIPS32_R5 is
already there. Or are there cases, where this would be wrong ?

Thomas.


-- 
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea.                                                [ RFC1925, 2.3 ]

Reply via email to