On Thursday 25 February 2010 11:18:08 am Andriy Gapon wrote:
> on 25/02/2010 15:02 John Baldwin said the following:
> > Hmm, the checksum for the XSDT is bad.  You can try hacking
> > src/usr.sbin/acpi/acpidump/acpi.c to disable the checksum check for the 
> > XSDT.
> > Just look for the 'XSDT is corrupted' string in that source file and comment
> > out the call to acpi_checksum().  Something like this:
> > 
> >             rsdp = (ACPI_TABLE_HEADER 
> > *)acpi_map_sdt(rp->XsdtPhysicalAddress);
> >             if (memcmp(rsdp->Signature, "XSDT", 4) != 0 /* ||
> >                 acpi_checksum(rsdp, rsdp->Length) != 0 */)
> >                     errx(1, "XSDT is corrupted");
> >             addr_size = sizeof(uint64_t);
> > 
> > Then see if acpidump -d -t gets any further.  I would also look for a BIOS
> > update perhaps, and/or complain to your motherboard vendor that their BIOS 
> > is
> > broken.
> 
> BTW, I googled for 'DP45SG XSDT' and addition to this thread it turned up some
> linux boot logs with complaints about invalid XSDT checksums.
> But linux seems to be more forgiving, it's just a warning.
> E.g. see here (search for XSDT):
> http://bugs.gentoo.org/attachment.cgi?id=201949&action=view

Actually, it looks like ACPICA changed to be less forgiving.  In the forum
post below, 6.4 is booted on one of these machines and generates similar
warnings about the XSDT checksum being wrong, but still uses ACPI:

http://forums.freebsd.org/archive/index.php/t-4682.html

Hmm, in theory we set a value in acconfig.h to false to only warn about bad
checksums but not error, but that seems to not be working.

-- 
John Baldwin
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hardware
To unsubscribe, send any mail to "[email protected]"

Reply via email to