• WANG Xuerui's avatar
    MIPS: Expose Loongson CPUCFG availability via HWCAP · f06da27e
    WANG Xuerui authored
    The point is to allow userspace to probe for CPUCFG without possibly
    triggering invalid instructions. In addition to that, future Loongson
    feature bits could all be stuffed into CPUCFG bit fields (or "leaves"
    in x86-speak) if Loongson does not make mistakes, so ELF HWCAP bits are
    conserved.
    
    Userspace can determine native CPUCFG availability by checking the LCSRP
    (Loongson CSR Present) bit in CPUCFG output after seeing CPUCFG bit in
    HWCAP. Native CPUCFG always sets the LCSRP bit, as CPUCFG is part of the
    Loongson CSR ASE, while the emulation intentionally leaves this bit
    clear.
    
    The other existing Loongson-specific HWCAP bits are, to my best
    knowledge, unused, as
    
    (1) they are fairly recent additions,
    (2) Loongson never back-ported the patch into their kernel fork, and
    (3) Loongson's existing installed base rarely upgrade, if ever;
    
    However, they are still considered userspace ABI, hence unfortunately
    unremovable. But hopefully at least we could stop adding new Loongson
    HWCAP bits in the future.
    
    Cc: Paul Burton <paulburton@kernel.org>
    Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>
    Cc: Huacai Chen <chenhc@lemote.com>
    Signed-off-by: default avatarWANG Xuerui <git@xen0n.name>
    Reviewed-by: default avatarHuacai Chen <chenhc@lemote.com>
    Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
    f06da27e
hwcap.h 715 Bytes