diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-02-08 19:41:20 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-20 04:12:02 -0500 |
commit | 1d2f1f90a1e004b0c1b8a73ed4394a93f09104b3 (patch) | |
tree | 2fcc0840b52218631020311d7b6d785e9a15db6a /include/asm-sparc64/cpudata.h | |
parent | 5b0c0572fcd6204675c5f7ddfa572b5017f817dd (diff) |
[SPARC64]: Sun4v cross-call sending support.
Technically the hypervisor call supports sending in a list
of all cpus to get the cross-call, but I only pass in one
cpu at a time for now.
The multi-cpu support is there, just ifdef'd out so it's easy to
enable or delete it later.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/asm-sparc64/cpudata.h')
-rw-r--r-- | include/asm-sparc64/cpudata.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/include/asm-sparc64/cpudata.h b/include/asm-sparc64/cpudata.h index 7f0a74ec47f6..338b0ca5b519 100644 --- a/include/asm-sparc64/cpudata.h +++ b/include/asm-sparc64/cpudata.h | |||
@@ -65,8 +65,16 @@ struct trap_per_cpu { | |||
65 | unsigned long nonresum_mondo_pa; | 65 | unsigned long nonresum_mondo_pa; |
66 | unsigned long nonresum_kernel_buf_pa; | 66 | unsigned long nonresum_kernel_buf_pa; |
67 | 67 | ||
68 | /* Dcache lines 3 and 4: Hypervisor Fault Status */ | 68 | /* Dcache lines 3, 4, 5, and 6: Hypervisor Fault Status */ |
69 | struct hv_fault_status fault_info; | 69 | struct hv_fault_status fault_info; |
70 | |||
71 | /* Dcache line 7: Physical addresses of CPU send mondo block and CPU list. */ | ||
72 | unsigned long cpu_mondo_block_pa; | ||
73 | unsigned long cpu_list_pa; | ||
74 | unsigned long __pad1[2]; | ||
75 | |||
76 | /* Dcache line 8: Unused, needed to keep trap_block a power-of-2 in size. */ | ||
77 | unsigned long __pad2[4]; | ||
70 | } __attribute__((aligned(64))); | 78 | } __attribute__((aligned(64))); |
71 | extern struct trap_per_cpu trap_block[NR_CPUS]; | 79 | extern struct trap_per_cpu trap_block[NR_CPUS]; |
72 | extern void init_cur_cpu_trap(void); | 80 | extern void init_cur_cpu_trap(void); |
@@ -108,8 +116,10 @@ extern struct sun4v_2insn_patch_entry __sun4v_2insn_patch, | |||
108 | #define TRAP_PER_CPU_NONRESUM_MONDO_PA 0x30 | 116 | #define TRAP_PER_CPU_NONRESUM_MONDO_PA 0x30 |
109 | #define TRAP_PER_CPU_NONRESUM_KBUF_PA 0x38 | 117 | #define TRAP_PER_CPU_NONRESUM_KBUF_PA 0x38 |
110 | #define TRAP_PER_CPU_FAULT_INFO 0x40 | 118 | #define TRAP_PER_CPU_FAULT_INFO 0x40 |
119 | #define TRAP_PER_CPU_CPU_MONDO_BLOCK_PA 0xc0 | ||
120 | #define TRAP_PER_CPU_CPU_LIST_PA 0xc8 | ||
111 | 121 | ||
112 | #define TRAP_BLOCK_SZ_SHIFT 7 | 122 | #define TRAP_BLOCK_SZ_SHIFT 8 |
113 | 123 | ||
114 | #include <asm/scratchpad.h> | 124 | #include <asm/scratchpad.h> |
115 | 125 | ||