Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Feb 2010 16:57:37 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        Andriy Gapon <avg@icyb.net.ua>
Cc:        kochetkov.andrew@gmail.com, Randy Chou <randychou@yahoo.com>, agh@coolrhaug.com, freebsd-hardware@freebsd.org
Subject:   Re: Intel DP45SG motherboard problem (amd64)
Message-ID:  <201002261657.37687.jhb@freebsd.org>
In-Reply-To: <4B86A2C0.10502@icyb.net.ua>
References:  <201002212231.12018.agh@coolrhaug.com> <201002250802.58434.jhb@freebsd.org> <4B86A2C0.10502@icyb.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002261657.37687.jhb>