cpudata_64.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /* cpudata.h: Per-cpu parameters.
  3. *
  4. * Copyright (C) 2003, 2005, 2006 David S. Miller ([email protected])
  5. */
  6. #ifndef _SPARC64_CPUDATA_H
  7. #define _SPARC64_CPUDATA_H
  8. #ifndef __ASSEMBLY__
  9. typedef struct {
  10. /* Dcache line 1 */
  11. unsigned int __softirq_pending; /* must be 1st, see rtrap.S */
  12. unsigned int __nmi_count;
  13. unsigned long clock_tick; /* %tick's per second */
  14. unsigned long __pad;
  15. unsigned int irq0_irqs;
  16. unsigned int __pad2;
  17. /* Dcache line 2, rarely used */
  18. unsigned int dcache_size;
  19. unsigned int dcache_line_size;
  20. unsigned int icache_size;
  21. unsigned int icache_line_size;
  22. unsigned int ecache_size;
  23. unsigned int ecache_line_size;
  24. unsigned short sock_id; /* physical package */
  25. unsigned short core_id;
  26. unsigned short max_cache_id; /* groupings of highest shared cache */
  27. signed short proc_id; /* strand (aka HW thread) id */
  28. } cpuinfo_sparc;
  29. DECLARE_PER_CPU(cpuinfo_sparc, __cpu_data);
  30. #define cpu_data(__cpu) per_cpu(__cpu_data, (__cpu))
  31. #define local_cpu_data() (*this_cpu_ptr(&__cpu_data))
  32. #endif /* !(__ASSEMBLY__) */
  33. #include <asm/trap_block.h>
  34. #endif /* _SPARC64_CPUDATA_H */