diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2014-02-01 10:23:17 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2014-02-01 10:23:17 +0100 |
commit | 28ad4e661610353efec655fdf147a46e156bf46e (patch) | |
tree | e830a6f8cfa91507114c1bc52f3c45356d235b15 /sys/src/9/pc/archmp.c | |
parent | 06bc19c28f3bd1528f669626eb9826226decabd9 (diff) |
pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64
Diffstat (limited to 'sys/src/9/pc/archmp.c')
-rw-r--r-- | sys/src/9/pc/archmp.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/sys/src/9/pc/archmp.c b/sys/src/9/pc/archmp.c index b5eb89805..8fb269569 100644 --- a/sys/src/9/pc/archmp.c +++ b/sys/src/9/pc/archmp.c @@ -41,7 +41,6 @@ mpgetbus(int busno) return bus; print("mpgetbus: can't find bus %d\n", busno); - return 0; } @@ -292,11 +291,12 @@ pcmpinit(void) * Map the local APIC. */ va = vmap(pcmp->lapicbase, 1024); - print("LAPIC: %.8lux %.8lux\n", pcmp->lapicbase, (ulong)va); + + print("LAPIC: %.8lux %#p\n", pcmp->lapicbase, va); if(va == nil) panic("pcmpinit: cannot map lapic %.8lux", pcmp->lapicbase); - p = ((uchar*)pcmp)+sizeof(PCMP); + p = ((uchar*)pcmp)+PCMPsz; e = ((uchar*)pcmp)+pcmp->length; if(getconf("*dumpmp") != nil) dumpmp(p, e); @@ -323,28 +323,28 @@ pcmpinit(void) apic->addr = va; apic->paddr = pcmp->lapicbase; } - p += sizeof(PCMPprocessor); + p += PCMPprocessorsz; continue; case PcmpBUS: mkbus((PCMPbus*)p); - p += sizeof(PCMPbus); + p += PCMPbussz; continue; case PcmpIOAPIC: if(apic = mkioapic((PCMPioapic*)p)) ioapicinit(apic, apic->apicno); - p += sizeof(PCMPioapic); + p += PCMPioapicsz; continue; case PcmpIOINTR: mkiointr((PCMPintr*)p); - p += sizeof(PCMPintr); + p += PCMPintrsz; continue; case PcmpLINTR: mklintr((PCMPintr*)p); - p += sizeof(PCMPintr); + p += PCMPintrsz; continue; } @@ -384,7 +384,7 @@ identify(void) * if correct, check the version. * To do: check extended table checksum. */ - if((_mp_ = sigsearch("_MP_")) == 0 || checksum(_mp_, sizeof(_MP_)) || + if((_mp_ = sigsearch("_MP_")) == 0 || checksum(_mp_, _MP_sz) || (_mp_->physaddr == 0)) return 1; |