Rev 3578 | Rev 3616 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3578 | Rev 3583 | ||
|---|---|---|---|
| Line 151... | Line 151... | ||
| 151 | #endif |
151 | #endif |
| 152 | int HOSSize = Size; |
152 | int HOSSize = Size; |
| 153 | 153 | ||
| 154 | 154 | ||
| 155 | rArg rSAL; |
155 | rArg rSAL; |
| 156 | //Setup AP's wake up address |
156 | rArg rPAL; |
| 157 | 157 | ||
| - | 158 | //Setup AP's wake up address |
|
| 158 | LibSalProc(0x01000000,2,0x4400200,0,0,0,0,0,&rSAL); |
159 | LibSalProc(0x01000000,2,0x4400200,0,0,0,0,0,&rSAL); |
| 159 | 160 | ||
| 160 | 161 | ||
| - | 162 | //Get System Frequency |
|
| - | 163 | UINT64 sys_freq; |
|
| - | 164 | LibSalProc(0x01000012,0,0,0,0,0,0,0,&rSAL); |
|
| - | 165 | sys_freq=rSAL.p1; |
|
| - | 166 | ||
| - | 167 | ||
| - | 168 | UINT64 freq_scale; |
|
| - | 169 | //Get CPU Frequency to System Frequency ratio |
|
| - | 170 | LibPalProc(14,0,0,0,&rPAL); |
|
| - | 171 | freq_scale=rPAL.p1; |
|
| - | 172 | ||
| - | 173 | ||
| 161 | UINT64 sapic; |
174 | UINT64 sapic; |
| 162 | LibGetSalIpiBlock(&sapic); |
175 | LibGetSalIpiBlock(&sapic); |
| 163 | Print (L"SAPIC:%X\n", sapic); |
176 | Print (L"SAPIC:%X\n", sapic); |
| 164 | bootinfo->sapic=sapic; |
177 | //bootinfo->sapic=sapic; |
| 165 | 178 | ||
| 166 | 179 | ||
| 167 | int wakeup_intno; |
180 | int wakeup_intno; |
| 168 | wakeup_intno=0xf0; |
181 | wakeup_intno=0xf0; |
| 169 | Print (L"WAKEUP INTNO:%X\n", wakeup_intno); |
182 | Print (L"WAKEUP INTNO:%X\n", wakeup_intno); |
| 170 | bootinfo->wakeup_intno=wakeup_intno; |
183 | //bootinfo->wakeup_intno=wakeup_intno; |
| 171 | 184 | ||
| 172 | 185 | ||
| 173 | 186 | ||
| 174 | 187 | ||
| 175 | 188 | ||
| Line 210... | Line 223... | ||
| 210 | for(a=0;a<HOSSize;a++){ |
223 | for(a=0;a<HOSSize;a++){ |
| 211 | ((char *)(0x4400000))[a]=HOS[a]; |
224 | ((char *)(0x4400000))[a]=HOS[a]; |
| 212 | } |
225 | } |
| 213 | bootinfo->sapic=(unsigned long *)sapic; |
226 | bootinfo->sapic=(unsigned long *)sapic; |
| 214 | bootinfo->wakeup_intno=wakeup_intno; |
227 | bootinfo->wakeup_intno=wakeup_intno; |
| - | 228 | bootinfo->sys_freq=sys_freq; |
|
| - | 229 | bootinfo->freq_scale=freq_scale; |
|
| 215 | 230 | ||
| 216 | //Run Kernel |
231 | //Run Kernel |
| 217 | asm volatile( |
232 | asm volatile( |
| 218 | "nop.i 0x00 ;;\n" |
233 | "nop.i 0x00 ;;\n" |
| 219 | "movl r15 = 0x4400000 ;;\n" |
234 | "movl r15 = 0x4400000 ;;\n" |