smp.h 747 B

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