1 #ifndef __LOONGSON_SMP_H_ 2 #define __LOONGSON_SMP_H_ 3 4 /* for Loongson-3 smp support */ 5 extern unsigned long long smp_group[4]; 6 7 /* 4 groups(nodes) in maximum in numa case */ 8 #define SMP_CORE_GROUP0_BASE (smp_group[0]) 9 #define SMP_CORE_GROUP1_BASE (smp_group[1]) 10 #define SMP_CORE_GROUP2_BASE (smp_group[2]) 11 #define SMP_CORE_GROUP3_BASE (smp_group[3]) 12 13 /* 4 cores in each group(node) */ 14 #define SMP_CORE0_OFFSET 0x000 15 #define SMP_CORE1_OFFSET 0x100 16 #define SMP_CORE2_OFFSET 0x200 17 #define SMP_CORE3_OFFSET 0x300 18 19 /* ipi registers offsets */ 20 #define STATUS0 0x00 21 #define EN0 0x04 22 #define SET0 0x08 23 #define CLEAR0 0x0c 24 #define STATUS1 0x10 25 #define MASK1 0x14 26 #define SET1 0x18 27 #define CLEAR1 0x1c 28 #define BUF 0x20 29 30 #endif 31