Rev 1903 | Rev 1906 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1903 | Rev 1905 | ||
---|---|---|---|
Line 78... | Line 78... | ||
78 | /* |
78 | /* |
79 | * Copy the bootinfo structure passed from the boot loader |
79 | * Copy the bootinfo structure passed from the boot loader |
80 | * to the kernel bootinfo structure. |
80 | * to the kernel bootinfo structure. |
81 | */ |
81 | */ |
82 | brz %l7, 0f ! skip if you are not the bootstrap CPU |
82 | brz %l7, 0f ! skip if you are not the bootstrap CPU |
- | 83 | nop |
|
- | 84 | ||
83 | sethi %hi(bootinfo), %o0 |
85 | sethi %hi(bootinfo), %o0 |
84 | call memcpy |
86 | call memcpy |
85 | or %o0, %lo(bootinfo), %o0 |
87 | or %o0, %lo(bootinfo), %o0 |
86 | 0: |
88 | 0: |
87 | 89 | ||
Line 253... | Line 255... | ||
253 | 1: |
255 | 1: |
254 | ldxa [%g0] ASI_UPA_CONFIG, %g1 |
256 | ldxa [%g0] ASI_UPA_CONFIG, %g1 |
255 | srlx %g1, UPA_CONFIG_MID_SHIFT, %g1 |
257 | srlx %g1, UPA_CONFIG_MID_SHIFT, %g1 |
256 | and %g1, UPA_CONFIG_MID_MASK, %g1 |
258 | and %g1, UPA_CONFIG_MID_MASK, %g1 |
257 | 259 | ||
- | 260 | #ifdef CONFIG_SMP |
|
258 | /* |
261 | /* |
259 | * Active loop for APs until the BSP picks them up. |
262 | * Active loop for APs until the BSP picks them up. |
260 | * A processor cannot leave the loop until the |
263 | * A processor cannot leave the loop until the |
261 | * global variable 'waking_up_mid' equals its |
264 | * global variable 'waking_up_mid' equals its |
262 | * MID. |
265 | * MID. |
Line 266... | Line 269... | ||
266 | ldx [%g2], %g3 |
269 | ldx [%g2], %g3 |
267 | cmp %g3, %g1 |
270 | cmp %g3, %g1 |
268 | bne 2b |
271 | bne 2b |
269 | nop |
272 | nop |
270 | 273 | ||
271 | #ifdef CONFIG_SMP |
- | |
- | 274 | ||
272 | /* |
275 | /* |
273 | * Configure stack for the AP. |
276 | * Configure stack for the AP. |
274 | * The AP is expected to use the stack saved |
277 | * The AP is expected to use the stack saved |
275 | * in the ctx global variable. |
278 | * in the ctx global variable. |
276 | */ |
279 | */ |
Line 278... | Line 281... | ||
278 | add %g1, OFFSET_SP, %g1 |
281 | add %g1, OFFSET_SP, %g1 |
279 | ldx [%g1], %o6 |
282 | ldx [%g1], %o6 |
280 | 283 | ||
281 | call main_ap |
284 | call main_ap |
282 | nop |
285 | nop |
283 | #endif |
- | |
284 | 286 | ||
285 | /* Not reached. */ |
287 | /* Not reached. */ |
- | 288 | #endif |
|
286 | 289 | ||
287 | 0: |
290 | 0: |
288 | ba 0b |
291 | ba 0b |
289 | nop |
292 | nop |