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" |