aboutsummaryrefslogtreecommitdiff
path: root/sys/boot/ia64
diff options
context:
space:
mode:
authorMarcel Moolenaar <marcel@FreeBSD.org>2006-11-03 04:04:19 +0000
committerMarcel Moolenaar <marcel@FreeBSD.org>2006-11-03 04:04:19 +0000
commit11f8548a0ddfa8c65328ca358479584ba7f6a6ae (patch)
treef0ffd1071cb92bb048b264c0c4da47195d630dbb /sys/boot/ia64
parentf935a26d9f0c9a5d13a3a76eafb4fbb2f3d1a05b (diff)
downloadsrc-11f8548a0ddfa8c65328ca358479584ba7f6a6ae.tar.gz
src-11f8548a0ddfa8c65328ca358479584ba7f6a6ae.zip
Properly calculate the checksum of the APIC table.
Notes
Notes: svn path=/head/; revision=163927
Diffstat (limited to 'sys/boot/ia64')
-rw-r--r--sys/boot/ia64/ski/acpi_stub.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/boot/ia64/ski/acpi_stub.c b/sys/boot/ia64/ski/acpi_stub.c
index caebc7b8d9f9..9b51e2f6b9d3 100644
--- a/sys/boot/ia64/ski/acpi_stub.c
+++ b/sys/boot/ia64/ski/acpi_stub.c
@@ -70,7 +70,7 @@ struct {
APIC_SIG, /* Signature. */
sizeof(apic), /* Length of table. */
0, /* ACPI minor revision. */
- 0, /* XXX checksum. */
+ 0, /* Checksum. */
"FBSD", /* OEM Id. */
"SKI", /* OEM table Id. */
0, /* OEM revision. */
@@ -177,6 +177,7 @@ acpi_stub_init(void)
cksum(&acpi_root, 20, &acpi_root.Checksum);
cksum(&acpi_root, sizeof(acpi_root), &acpi_root.ExtendedChecksum);
+ cksum(&apic, sizeof(apic), &apic.Header.Checksum);
xsdt.apic_tbl = (UINT32)&apic;
cksum(&xsdt, sizeof(xsdt), &xsdt.Header.Checksum);
}