<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/amd64/acpica/madt.c, branch release/9.2.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F9.2.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F9.2.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2010-11-08T20:57:02Z</updated>
<entry>
<title>Move the MADT parser for amd64 and i386 to sys/x86/acpica now that it is</title>
<updated>2010-11-08T20:57:02Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2010-11-08T20:57:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=13e25cb7a5a2aacb21ad555089e4a07d0562ec18'/>
<id>urn:sha1:13e25cb7a5a2aacb21ad555089e4a07d0562ec18</id>
<content type='text'>
identical on both platforms.
</content>
</entry>
<entry>
<title>A few small style and whitespace fixes.</title>
<updated>2010-11-08T20:05:22Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2010-11-08T20:05:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f67b4bd367a2795f48f6c7b3aa3a251fdef534bd'/>
<id>urn:sha1:f67b4bd367a2795f48f6c7b3aa3a251fdef534bd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move &lt;machine/apicreg.h&gt; to &lt;x86/apicreg.h&gt;.</title>
<updated>2010-11-01T18:18:46Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2010-11-01T18:18:46Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=32c3d3b6e60033aff39996aa8ae39963156e051c'/>
<id>urn:sha1:32c3d3b6e60033aff39996aa8ae39963156e051c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Update several places that iterate over CPUs to use CPU_FOREACH().</title>
<updated>2010-06-11T18:46:34Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2010-06-11T18:46:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3aa6d94e0c599b7b250f250454bd9414cf0fd46d'/>
<id>urn:sha1:3aa6d94e0c599b7b250f250454bd9414cf0fd46d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Extract the code to find and map the MADT ACPI table during early kernel</title>
<updated>2009-09-23T15:42:35Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-09-23T15:42:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d95e7f5a7a1b87adc6f31e7aa26581f8c6372905'/>
<id>urn:sha1:d95e7f5a7a1b87adc6f31e7aa26581f8c6372905</id>
<content type='text'>
startup and genericize it so it can be reused to map other tables as well:
- Add a routine to walk a list of ACPI subtables such as those used in the
  APIC and SRAT tables in the MI acpi(4) driver.
- Move the routines for mapping and unmapping an ACPI table as well as
  mapping the RSDT or XSDT and searching for a table with a given signature
  out into acpica_machdep.c for both amd64 and i386.
</content>
</entry>
<entry>
<title>Import ACPICA 20090521.</title>
<updated>2009-06-05T18:44:36Z</updated>
<author>
<name>Jung-uk Kim</name>
<email>jkim@FreeBSD.org</email>
</author>
<published>2009-06-05T18:44:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=129d3046ef0427d3b22b78a71f3494854d817fba'/>
<id>urn:sha1:129d3046ef0427d3b22b78a71f3494854d817fba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>At least one BIOS bogusly includes duplicate entries for I/O APICs.  The</title>
<updated>2009-03-05T16:03:44Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-03-05T16:03:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b25fc07f530e8426306a652b574e372ccb64de56'/>
<id>urn:sha1:b25fc07f530e8426306a652b574e372ccb64de56</id>
<content type='text'>
bogus entries have a starting IRQ that is invalid (&gt; 255, so won't fit
into a PCI intline config register).  It had the side effect of breaking
MSI by "claiming" several IRQs in the MSI range.  Fix this by ignoring such
I/O APICs.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>In keeping with style(9)'s recommendations on macros, use a ';'</title>
<updated>2008-03-16T10:58:09Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2008-03-16T10:58:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=237fdd787b20699fc2c01387011b06a9ce746cfa'/>
<id>urn:sha1:237fdd787b20699fc2c01387011b06a9ce746cfa</id>
<content type='text'>
after each SYSINIT() macro invocation.  This makes a number of
lightweight C parsers much happier with the FreeBSD kernel
source, including cflow's prcc and lxr.

MFC after:	1 month
Discussed with:	imp, rink
</content>
</entry>
<entry>
<title>For no good reason I had assumed that ACPI table headers would be page</title>
<updated>2008-01-31T16:51:43Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-01-31T16:51:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=7157eae462b94ce5305a9d2611be2ecb6b8f917d'/>
<id>urn:sha1:7157eae462b94ce5305a9d2611be2ecb6b8f917d</id>
<content type='text'>
aligned (or at least not cross a page boundary).  However, it turns out
that on at least one machine one table header does cross a page boundary.
This caused problems with the MADT early probe as it uses the crash dump
map to load ACPI tables by loading the RSDT/XSDT into pages 1 ... N and
loading the header of each ACPI table header into page 0 looking for the
MADT.  However, if a table header crossed a page boundary, then page 1
would get trashed resulting in a panic.  Fix this by reserving the first
2 pages for ACPI table headers (headers are less than a page in size,
so 2 pages will be sufficient) and use pages 2 .. N for the RSDT and XSDT.

Note: amd64 should probably be simplified to just use pmap_mapbios()
for all these tables which will use the direct map and not need the
crash dump hack.

MFC after:	5 days
Tested on:	i386
Reported by:	Pete French  petefrench of ticketswitch.com
</content>
</entry>
<entry>
<title>Handle CPUs with APIC IDs higher than 32 (at least one IBM server uses</title>
<updated>2007-05-08T22:01:04Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2007-05-08T22:01:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=2e025791ce34cee3572808ac197cf47ddbbbc1a7'/>
<id>urn:sha1:2e025791ce34cee3572808ac197cf47ddbbbc1a7</id>
<content type='text'>
an APIC ID of 38 for its second CPU):
- Add a new MAX_APIC_ID constant for the highest valid APIC ID for modern
  systems.
- Size the various arrays in the MADT, MP Table, and SMP code that are
  indexed by APIC IDs to allow for up to MAX_APIC_ID.
- Explicitly go through and assign logical cpu ids to local APICs before
  starting any of the APs up rather than doing it while starting up the
  APs.  This step is now where we honor MAXCPU.

MFC after:	1 week
</content>
</entry>
</feed>
