ACPI: Make DMAR flags settable

Add a parameter to acpi_create_dmar() for the flags field and define
flags given by the spec [1].

[1] Intel Virtualization Technology for Directed I/O
    Architecture Specification
    Document-Number: D51397

Change-Id: I03ae32f13bb0061bd3b9bef607db175d9b0bc5e1
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: http://review.coreboot.org/12191
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@google.com>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
Nico Huber
2015-10-26 11:51:25 +01:00
committed by Patrick Georgi
parent 50a29f8170
commit e561f35fa5
3 changed files with 9 additions and 4 deletions

View File

@@ -389,7 +389,7 @@ void acpi_create_srat(acpi_srat_t *srat,
header->checksum = acpi_checksum((void *)srat, header->length);
}
void acpi_create_dmar(acpi_dmar_t *dmar,
void acpi_create_dmar(acpi_dmar_t *dmar, enum dmar_flags flags,
unsigned long (*acpi_fill_dmar) (unsigned long))
{
acpi_header_t *header = &(dmar->header);
@@ -407,7 +407,7 @@ void acpi_create_dmar(acpi_dmar_t *dmar,
header->revision = 1;
dmar->host_address_width = 40 - 1; /* FIXME: == MTRR size? */
dmar->flags = 0;
dmar->flags = flags;
current = acpi_fill_dmar(current);