• Paul Burton's avatar
    MIPS: Store core & VP IDs in GlobalNumber-style variable · 856fbcee
    Paul Burton authored
    This patch modifies the way we store core & VP IDs such that we store
    them in a single 32 bit integer whose format matches that of the MIPSr6
    GlobalNumber register. Whereas we have previously stored core & VP IDs
    in separate fields, storing them in a single GlobalNumber-like field:
    
      1) Reduces the size of struct cpuinfo_mips by 4 bytes, and will allow
         it to not grow when cluster support is added.
    
      2) Gives us a natural place to store cluster number, which matches up
         with what the architecture provides.
    
      3) Will be useful in the future as a parameter to the MIPSr6 GINVI
         instruction to specify a target CPU whose icache that instruction
         should operate on.
    
    The cpu_set*() accessor functions are moved out of the asm/cpu-info.h
    header in order to allow them to use the WARN_ON macro, which is
    unusable in asm/cpu-info.h due to include ordering.
    Signed-off-by: default avatarPaul Burton <paul.burton@imgtec.com>
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/17010/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    856fbcee
cpu-info.h 5.1 KB