powerpc/booke: Replace a logical equivalent of pmap_kextract() with a real call
No sense in reinventing the wheel here. AP bringup is not a time-critical point.
This commit is contained in:
parent
f71d2bdf0c
commit
b73b2f43ff
@ -347,7 +347,7 @@ mpc85xx_smp_start_cpu_epapr(platform_t plat, struct pcpu *pc)
|
||||
rel_va = rel_page + (rel_pa & PAGE_MASK);
|
||||
pmap_kenter(rel_page, rel_pa & ~PAGE_MASK);
|
||||
rel = (struct cpu_release *)rel_va;
|
||||
bptr = ((vm_paddr_t)(uintptr_t)__boot_page - __startkernel) + kernload;
|
||||
bptr = pmap_kextract((uintptr_t)__boot_page);
|
||||
cpu_flush_dcache(__DEVOLATILE(struct cpu_release *,rel), sizeof(*rel));
|
||||
rel->pir = pc->pc_cpuid; __asm __volatile("sync");
|
||||
rel->entry_h = (bptr >> 32);
|
||||
@ -416,7 +416,7 @@ mpc85xx_smp_start_cpu(platform_t plat, struct pcpu *pc)
|
||||
/* Flush caches to have our changes hit DRAM. */
|
||||
cpu_flush_dcache(__boot_page, 4096);
|
||||
|
||||
bptr = ((vm_paddr_t)(uintptr_t)__boot_page - __startkernel) + kernload;
|
||||
bptr = pmap_kextract((uintptr_t)__boot_page);
|
||||
KASSERT((bptr & 0xfff) == 0,
|
||||
("%s: boot page is not aligned (%#jx)", __func__, (uintmax_t)bptr));
|
||||
if (mpc85xx_is_qoriq()) {
|
||||
|
Loading…
Reference in New Issue
Block a user