Home | History | Annotate | Download | only in include
History log of /src/sys/arch/powerpc/include/openpicreg.h
RevisionDateAuthorComments
 1.8  17-Jan-2008  garbled Add support to ofppc for the IBM 7044-270 machine. This is a POWER3-II
based machine. Currently the kernel to run on this machine is
incompatible with the standard GENERIC kernel, so for now, we have a
separate GENERIC_B64. Eventually, I hope to combine the two.

Please note, this is a port of 32bit ofppc, not a powerpc64 port.

Thanks to Matt Thomas and Kevin Bowling for helping to make this port
possible.

Summary of changes:

Change ofwpci to use the ofmethod config for configuring the PCI bus,
rather than indirect configuration.
Move the wiring of the interrupt controllers from at the start of the
boot, into the configuration of the first PCI bus.
Rewrite the map_isa_ioregs() hack to work on a machine without BATs
Fix a ton of bugs in the genofw_find_pics routine, and in the map_space code.
Split the pic_openpic into openpic_common and pic_openpic.
Create a new pic_distopenpic driver, for the distributed openpic found on
some newer IBM machines.
Fix a bad panic in pmap_extract on 64bit bridge mode
 1.7  17-Oct-2007  garbled branches: 1.7.2; 1.7.8;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.6  11-Dec-2005  christos branches: 1.6.30; 1.6.38; 1.6.48; 1.6.50; 1.6.52; 1.6.54;
merge ktrace-lwp.
 1.5  13-Feb-2004  wiz branches: 1.5.16;
Uppercase CPU, plural is CPUs.
 1.4  06-Aug-2002  chs branches: 1.4.6;
fix the calculation of the address of the IPI dispatch register.
 1.3  30-Aug-2001  briggs branches: 1.3.6; 1.3.14;
defines for OPENPIC_ICR / serial mode.
 1.2  05-Feb-2001  briggs branches: 1.2.2; 1.2.6;
Tsubai has convinced me that openpic_init() should remain machine-dependant
as the details might differ between archs, and passing the various options
leads to some clutter.
 1.1  02-Feb-2001  briggs Split OpenPIC support into powerpc so ports only need minimal custom
configuration. openpic_init() now takes a single argument that is the
base of the OpenPIC register space.
 1.2.6.2  06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.2.6.1  13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.2.2.2  11-Feb-2001  bouyer Sync with HEAD.
 1.2.2.1  05-Feb-2001  bouyer file openpicreg.h was added on branch thorpej_scsipi on 2001-02-11 19:11:35 +0000
 1.3.14.1  31-Aug-2002  gehenna catch up with -current.
 1.3.6.2  06-Aug-2002  nathanw Catch up with powerpc rototilling.
 1.3.6.1  30-Aug-2001  nathanw file openpicreg.h was added on branch nathanw_sa on 2002-08-06 22:47:09 +0000
 1.4.6.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.4.6.2  18-Sep-2004  skrll Sync with HEAD.
 1.4.6.1  03-Aug-2004  skrll Sync with HEAD
 1.5.16.2  21-Jan-2008  yamt sync with head
 1.5.16.1  27-Oct-2007  yamt sync with head.
 1.6.54.1  25-Oct-2007  bouyer Sync with HEAD.
 1.6.52.1  18-Oct-2007  yamt sync with head.
 1.6.50.2  23-Mar-2008  matt sync with HEAD
 1.6.50.1  06-Nov-2007  matt sync with HEAD
 1.6.48.1  26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.6.38.1  10-Oct-2007  garbled Change pic_prepivr around a bit. Handle the default IRQ 7 from the 8259
better, and add a new motivr_get_irq(). The motorola machines require an
actual read from the 8259 for PCI irqs, so in that case, we read the
8259, and then read the IVR to ack the irq.

Move i8259_get_irq() to i8259_common.c for above.

Fix some minor typos in the chip id's for prep residual.

Fix ibmnws and prep to properly initialize the prep ivr depending on if
the machine is motorola, or IBM based.

Tested on a 7043 and an MTX604
 1.6.30.1  23-Oct-2007  ad Sync with head.
 1.7.8.1  19-Jan-2008  bouyer Sync with HEAD
 1.7.2.1  18-Feb-2008  mjf Sync with HEAD.

RSS XML Feed