mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
[HVMLOADER] Clean up makefile, change TPM detection.
Signed-off-by: Keir Fraser <keir@xensource.com>
This commit is contained in:
1 parent
74517de104
commit
72941f1998
2 files changed
+9
-8
No files matched your search
@@ -18,12 +18,10 @@
|
||||
# Place - Suite 330, Boston, MA 02111-1307 USA.
|
||||
#
|
||||
|
||||
# External CFLAGS can do more harm than good.
|
||||
CFLAGS :=
|
||||
|
||||
override XEN_TARGET_ARCH = x86_32
|
||||
XEN_ROOT = ../../..
|
||||
include $(XEN_ROOT)/Config.mk
|
||||
CFLAGS := -I$(XEN_ROOT)/tools/libxc -I.
|
||||
include $(XEN_ROOT)/tools/Rules.mk
|
||||
|
||||
# The HVM loader is started in 32-bit mode at the address below:
|
||||
LOADADDR = 0x100000
|
||||
@@ -34,7 +32,7 @@ CFLAGS += $(call cc-option,$(CC),-fno-stack-protector,)
|
||||
CFLAGS += $(call cc-option,$(CC),-fno-stack-protector-all,)
|
||||
|
||||
OBJCOPY = objcopy
|
||||
CFLAGS += -I$(XEN_ROOT)/tools/libxc -I. -fno-builtin -O2 -msoft-float
|
||||
CFLAGS += -fno-builtin -O2 -msoft-float
|
||||
LDFLAGS = -nostdlib -Wl,-N -Wl,-Ttext -Wl,$(LOADADDR)
|
||||
|
||||
SRCS = hvmloader.c mp_tables.c util.c smbios.c
|
||||
|
||||
@@ -115,7 +115,8 @@ int construct_secondary_tables(uint8_t *buf, unsigned long *table_ptrs)
|
||||
int offset = 0, nr_tables = 0;
|
||||
struct acpi_20_madt *madt;
|
||||
struct acpi_20_tcpa *tcpa;
|
||||
static const uint16_t tis_did_vid_rid[] = {0x0001, 0x0001, 0x0001};
|
||||
static const uint16_t tis_signature[] = {0x0001, 0x0001, 0x0001};
|
||||
uint16_t *tis_hdr;
|
||||
|
||||
/* MADT. */
|
||||
if ( (get_vcpu_nr() > 1) || get_apic_mode() )
|
||||
@@ -126,8 +127,10 @@ int construct_secondary_tables(uint8_t *buf, unsigned long *table_ptrs)
|
||||
}
|
||||
|
||||
/* TPM TCPA and SSDT. */
|
||||
if ( memcmp((char *)0xFED40F00, tis_did_vid_rid,
|
||||
sizeof(tis_did_vid_rid)) == 0 ) /* Probe for TIS interface. */
|
||||
tis_hdr = (uint16_t *)0xFED40F00;
|
||||
if ( (tis_hdr[0] == tis_signature[0]) &&
|
||||
(tis_hdr[1] == tis_signature[1]) &&
|
||||
(tis_hdr[2] == tis_signature[2]) )
|
||||
{
|
||||
memcpy(&buf[offset], AmlCode_TPM, sizeof(AmlCode_TPM));
|
||||
table_ptrs[nr_tables++] = (unsigned long)&buf[offset];
|
||||
|
||||