diff options
author | Frans Kaashoek <[email protected]> | 2011-08-09 23:22:48 -0400 |
---|---|---|
committer | Frans Kaashoek <[email protected]> | 2011-08-09 23:22:48 -0400 |
commit | 673b739d314b77532f0c60d0eaed4b518b912694 (patch) | |
tree | 6d4e8848d87afd7859728c16959e1aac58f6b81c | |
parent | 8a9933a20031bcdc34f360d23a29c87f8335fd12 (diff) | |
download | xv6-labs-673b739d314b77532f0c60d0eaed4b518b912694.tar.gz xv6-labs-673b739d314b77532f0c60d0eaed4b518b912694.tar.bz2 xv6-labs-673b739d314b77532f0c60d0eaed4b518b912694.zip |
One more low address
-rw-r--r-- | lapic.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -3,6 +3,7 @@ #include "types.h" #include "defs.h" +#include "memlayout.h" #include "traps.h" #include "mmu.h" #include "x86.h" @@ -135,6 +136,7 @@ microdelay(int us) // Start additional processor running bootstrap code at addr. // See Appendix B of MultiProcessor Specification. void + lapicstartap(uchar apicid, uint addr) { int i; @@ -145,7 +147,7 @@ lapicstartap(uchar apicid, uint addr) // the AP startup code prior to the [universal startup algorithm]." outb(IO_RTC, 0xF); // offset 0xF is shutdown code outb(IO_RTC+1, 0x0A); - wrv = (ushort*)(0x40<<4 | 0x67); // Warm reset vector + wrv = (ushort*)P2V((0x40<<4 | 0x67)); // Warm reset vector wrv[0] = 0; wrv[1] = addr >> 4; |