diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-02-17 11:38:06 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-20 04:13:24 -0500 |
commit | ebd8c56c5ae154e2c6cfb7453a76a4e7265b2377 (patch) | |
tree | 155df85100a1316ac103dcaed140d20ddc72c855 /include/asm-sparc64/cpudata.h | |
parent | 101d5c18a928ef82b6c7bf99a9eaa536b5ccf593 (diff) |
[SPARC64]: Fix uniprocessor IRQ targetting on SUN4V.
We need to use the real hardware processor ID when
targetting interrupts, not the "define to 0" thing
the uniprocessor build gives us.
Also, fill in the Node-ID and Agent-ID fields properly
on sun4u/Safari.
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 | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/include/asm-sparc64/cpudata.h b/include/asm-sparc64/cpudata.h index 771aa94dfd95..84656f1895cd 100644 --- a/include/asm-sparc64/cpudata.h +++ b/include/asm-sparc64/cpudata.h | |||
@@ -80,7 +80,6 @@ extern struct trap_per_cpu trap_block[NR_CPUS]; | |||
80 | extern void init_cur_cpu_trap(struct thread_info *); | 80 | extern void init_cur_cpu_trap(struct thread_info *); |
81 | extern void setup_tba(void); | 81 | extern void setup_tba(void); |
82 | 82 | ||
83 | #ifdef CONFIG_SMP | ||
84 | struct cpuid_patch_entry { | 83 | struct cpuid_patch_entry { |
85 | unsigned int addr; | 84 | unsigned int addr; |
86 | unsigned int cheetah_safari[4]; | 85 | unsigned int cheetah_safari[4]; |
@@ -89,7 +88,6 @@ struct cpuid_patch_entry { | |||
89 | unsigned int sun4v[4]; | 88 | unsigned int sun4v[4]; |
90 | }; | 89 | }; |
91 | extern struct cpuid_patch_entry __cpuid_patch, __cpuid_patch_end; | 90 | extern struct cpuid_patch_entry __cpuid_patch, __cpuid_patch_end; |
92 | #endif | ||
93 | 91 | ||
94 | struct sun4v_1insn_patch_entry { | 92 | struct sun4v_1insn_patch_entry { |
95 | unsigned int addr; | 93 | unsigned int addr; |
@@ -123,8 +121,6 @@ extern struct sun4v_2insn_patch_entry __sun4v_2insn_patch, | |||
123 | 121 | ||
124 | #include <asm/scratchpad.h> | 122 | #include <asm/scratchpad.h> |
125 | 123 | ||
126 | #ifdef CONFIG_SMP | ||
127 | |||
128 | #define __GET_CPUID(REG) \ | 124 | #define __GET_CPUID(REG) \ |
129 | /* Spitfire implementation (default). */ \ | 125 | /* Spitfire implementation (default). */ \ |
130 | 661: ldxa [%g0] ASI_UPA_CONFIG, REG; \ | 126 | 661: ldxa [%g0] ASI_UPA_CONFIG, REG; \ |
@@ -156,6 +152,8 @@ extern struct sun4v_2insn_patch_entry __sun4v_2insn_patch, | |||
156 | nop; \ | 152 | nop; \ |
157 | .previous; | 153 | .previous; |
158 | 154 | ||
155 | #ifdef CONFIG_SMP | ||
156 | |||
159 | #define TRAP_LOAD_TRAP_BLOCK(DEST, TMP) \ | 157 | #define TRAP_LOAD_TRAP_BLOCK(DEST, TMP) \ |
160 | __GET_CPUID(TMP) \ | 158 | __GET_CPUID(TMP) \ |
161 | sethi %hi(trap_block), DEST; \ | 159 | sethi %hi(trap_block), DEST; \ |