diff options
Diffstat (limited to 'src/cpu/x86')
-rw-r--r-- | src/cpu/x86/lapic/lapic_cpu_init.c | 1 | ||||
-rw-r--r-- | src/cpu/x86/mp_init.c | 1 | ||||
-rw-r--r-- | src/cpu/x86/smm/smm.ld | 4 | ||||
-rw-r--r-- | src/cpu/x86/smm/smm_tseg.ld | 2 |
4 files changed, 7 insertions, 1 deletions
diff --git a/src/cpu/x86/lapic/lapic_cpu_init.c b/src/cpu/x86/lapic/lapic_cpu_init.c index 472d6edf60..d4a9884fad 100644 --- a/src/cpu/x86/lapic/lapic_cpu_init.c +++ b/src/cpu/x86/lapic/lapic_cpu_init.c @@ -27,6 +27,7 @@ #include <halt.h> #include <lib.h> #include <string.h> +#include <symbols.h> #include <console/console.h> #include <device/device.h> #include <device/path.h> diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c index 3e293f60c4..a5bbb98520 100644 --- a/src/cpu/x86/mp_init.c +++ b/src/cpu/x86/mp_init.c @@ -39,6 +39,7 @@ #include <lib.h> #include <smp/atomic.h> #include <smp/spinlock.h> +#include <symbols.h> #include <thread.h> #define MAX_APIC_IDS 256 diff --git a/src/cpu/x86/smm/smm.ld b/src/cpu/x86/smm/smm.ld index c1981610b8..6d33fbe984 100644 --- a/src/cpu/x86/smm/smm.ld +++ b/src/cpu/x86/smm/smm.ld @@ -11,6 +11,7 @@ SECTIONS */ . = 0xa0000; .handler (.): { + _program = .; /* Assembler stub */ *(.handler) @@ -35,9 +36,10 @@ SECTIONS *(.sbss) *(.sbss.*) - /* What is this? */ + /* What is this? (Something we don't need with -fno-common.) */ *(COMMON) . = ALIGN(4); + _eprogram = .; } /* We are using the ASEG interleaved to stuff the SMM handlers diff --git a/src/cpu/x86/smm/smm_tseg.ld b/src/cpu/x86/smm/smm_tseg.ld index b57461caa0..4dedd2c436 100644 --- a/src/cpu/x86/smm/smm_tseg.ld +++ b/src/cpu/x86/smm/smm_tseg.ld @@ -31,6 +31,7 @@ SECTIONS /* 16KB for the heap at 64KB */ . = 0x10000; .heap : { + _program = .; _heap = .; . = 0x4000; _eheap = .; @@ -65,6 +66,7 @@ SECTIONS . = ALIGN(4); _smm_c_handler_end = .; + _eprogram = .; } /DISCARD/ : { |