1*6f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2c3617f72SDavid Howells #ifndef _UAPI__ASM_POWERPC_CPUTABLE_H 3c3617f72SDavid Howells #define _UAPI__ASM_POWERPC_CPUTABLE_H 4c3617f72SDavid Howells 5cbbc6f1bSNishanth Aravamudan /* in AT_HWCAP */ 6c3617f72SDavid Howells #define PPC_FEATURE_32 0x80000000 7c3617f72SDavid Howells #define PPC_FEATURE_64 0x40000000 8c3617f72SDavid Howells #define PPC_FEATURE_601_INSTR 0x20000000 9c3617f72SDavid Howells #define PPC_FEATURE_HAS_ALTIVEC 0x10000000 10c3617f72SDavid Howells #define PPC_FEATURE_HAS_FPU 0x08000000 11c3617f72SDavid Howells #define PPC_FEATURE_HAS_MMU 0x04000000 12c3617f72SDavid Howells #define PPC_FEATURE_HAS_4xxMAC 0x02000000 13c3617f72SDavid Howells #define PPC_FEATURE_UNIFIED_CACHE 0x01000000 14c3617f72SDavid Howells #define PPC_FEATURE_HAS_SPE 0x00800000 15c3617f72SDavid Howells #define PPC_FEATURE_HAS_EFP_SINGLE 0x00400000 16c3617f72SDavid Howells #define PPC_FEATURE_HAS_EFP_DOUBLE 0x00200000 17c3617f72SDavid Howells #define PPC_FEATURE_NO_TB 0x00100000 18c3617f72SDavid Howells #define PPC_FEATURE_POWER4 0x00080000 19c3617f72SDavid Howells #define PPC_FEATURE_POWER5 0x00040000 20c3617f72SDavid Howells #define PPC_FEATURE_POWER5_PLUS 0x00020000 21c3617f72SDavid Howells #define PPC_FEATURE_CELL 0x00010000 22c3617f72SDavid Howells #define PPC_FEATURE_BOOKE 0x00008000 23c3617f72SDavid Howells #define PPC_FEATURE_SMT 0x00004000 24c3617f72SDavid Howells #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 25c3617f72SDavid Howells #define PPC_FEATURE_ARCH_2_05 0x00001000 26c3617f72SDavid Howells #define PPC_FEATURE_PA6T 0x00000800 27c3617f72SDavid Howells #define PPC_FEATURE_HAS_DFP 0x00000400 28c3617f72SDavid Howells #define PPC_FEATURE_POWER6_EXT 0x00000200 29c3617f72SDavid Howells #define PPC_FEATURE_ARCH_2_06 0x00000100 30c3617f72SDavid Howells #define PPC_FEATURE_HAS_VSX 0x00000080 31c3617f72SDavid Howells 32c3617f72SDavid Howells #define PPC_FEATURE_PSERIES_PERFMON_COMPAT \ 33c3617f72SDavid Howells 0x00000040 34c3617f72SDavid Howells 356997e57dSAnton Blanchard /* Reserved - do not use 0x00000004 */ 36c3617f72SDavid Howells #define PPC_FEATURE_TRUE_LE 0x00000002 37c3617f72SDavid Howells #define PPC_FEATURE_PPC_LE 0x00000001 38c3617f72SDavid Howells 39cbbc6f1bSNishanth Aravamudan /* in AT_HWCAP2 */ 40cbbc6f1bSNishanth Aravamudan #define PPC_FEATURE2_ARCH_2_07 0x80000000 41cbbc6f1bSNishanth Aravamudan #define PPC_FEATURE2_HTM 0x40000000 42cbbc6f1bSNishanth Aravamudan #define PPC_FEATURE2_DSCR 0x20000000 43cbbc6f1bSNishanth Aravamudan #define PPC_FEATURE2_EBB 0x10000000 44cbbc6f1bSNishanth Aravamudan #define PPC_FEATURE2_ISEL 0x08000000 45cbbc6f1bSNishanth Aravamudan #define PPC_FEATURE2_TAR 0x04000000 46dd58a092SBenjamin Herrenschmidt #define PPC_FEATURE2_VEC_CRYPTO 0x02000000 47b4b56f9eSSam bobroff #define PPC_FEATURE2_HTM_NOSC 0x01000000 48e708c24cSMichael Ellerman #define PPC_FEATURE2_ARCH_3_00 0x00800000 /* ISA 3.00 */ 49e708c24cSMichael Ellerman #define PPC_FEATURE2_HAS_IEEE128 0x00400000 /* VSX IEEE Binary Float 128-bit */ 50a4700a26SNicholas Piggin #define PPC_FEATURE2_DARN 0x00200000 /* darn random number insn */ 51a4700a26SNicholas Piggin #define PPC_FEATURE2_SCV 0x00100000 /* scv syscall */ 52cbbc6f1bSNishanth Aravamudan 535a61ef74SNicholas Piggin /* 545a61ef74SNicholas Piggin * IMPORTANT! 555a61ef74SNicholas Piggin * All future PPC_FEATURE definitions should be allocated in cooperation with 565a61ef74SNicholas Piggin * OPAL / skiboot firmware, in accordance with the ibm,powerpc-cpu-features 575a61ef74SNicholas Piggin * device tree binding. 585a61ef74SNicholas Piggin */ 595a61ef74SNicholas Piggin 60c3617f72SDavid Howells #endif /* _UAPI__ASM_POWERPC_CPUTABLE_H */ 61