Home | History | Annotate | Download | only in include
History log of /src/sys/arch/prep/include/cpu.h
RevisionDateAuthorComments
 1.10  20-Jun-2011  matt Don't expose port-specific if _MODULE is defined.
Don't _MACHINE_CPU_H_, _<PORT>_CPU_H_
 1.9  17-Oct-2007  garbled branches: 1.9.52;
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.8  16-Mar-2006  garbled branches: 1.8.20; 1.8.28; 1.8.38; 1.8.40; 1.8.42; 1.8.44;
More changes to prep port:
1) Add the NVRAM device. This device allows us to speak with the nvram on
prep-based machines and read/write to it. Also add a simple IOCTL
interface for speaking with the nvram from userland. This hasn't been
tested yet, but eventually I plan to support it with the sparc eeprom
command.
2) Change the root device detection to use the nvram device to attempt to
guess the boot device. Most machines should now correctly guess thier
boot device, though I expect a few devices to still not work quite right yet.
3) change the default IRQ to level rather than edge in the pnpbus if the
flags are invalid or empty. (based on output from a PowerStack E1)
4) correctly handle older machines in pnpbus that have FixedIOPorts
rather than variable ones.

Still have much to do.
 1.7  26-Aug-2001  matt branches: 1.7.6; 1.7.38; 1.7.52; 1.7.54; 1.7.56; 1.7.58;
Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.6  14-Jun-2001  thorpej branches: 1.6.2;
Don't need to prototype child_return() here, it's in <sys/proc.h>.
 1.5  30-May-2001  mrg use _KERNEL_OPT
 1.4  14-Dec-2000  mycroft branches: 1.4.2;
Partial syscall cleanup, as per other ports.
 1.3  25-Aug-2000  thorpej branches: 1.3.2;
Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity. Its use in
roundrobin() still needs some work.
 1.2  26-May-2000  thorpej First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

- Global state: sched_qs (run queues), sched_whichqs (bitmap
of non-empty run queues), sched_slpque (sleep queues).
NOTE: These may collectively move into a struct schedstate
at some point in the future.

- Per-CPU state, struct schedstate_percpu: spc_runtime
(time process on this CPU started running), spc_flags
(replaces struct proc's p_schedflags), and
spc_curpriority (usrpri of processes on this CPU).

- Every platform must now supply a struct cpu_info and
a curcpu() macro. Simplify existing cpu_info declarations
where appropriate.

- All references to per-CPU scheduler state now made through
curcpu(). NOTE: this will likely be adjusted in the future
after further changes to struct proc are made.

Tested on i386 and Alpha. Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
 1.1  29-Feb-2000  nonaka Initial import prep port.
 1.3.2.3  05-Jan-2001  bouyer Sync with HEAD
 1.3.2.2  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.3.2.1  25-Aug-2000  bouyer file cpu.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.4.2.1  21-Jun-2001  nathanw Catch up to -current.
 1.6.2.1  13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.7.58.1  19-Apr-2006  elad sync with head - hopefully this will work
 1.7.56.1  01-Apr-2006  yamt sync with head.
 1.7.54.1  22-Apr-2006  simonb Sync with head.
 1.7.52.1  09-Sep-2006  rpaulo sync with head
 1.7.38.2  27-Oct-2007  yamt sync with head.
 1.7.38.1  21-Jun-2006  yamt sync with head.
 1.7.6.2  26-Aug-2001  matt Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.7.6.1  26-Aug-2001  matt file cpu.h was added on branch nathanw_sa on 2001-08-26 02:47:35 +0000
 1.8.44.1  25-Oct-2007  bouyer Sync with HEAD.
 1.8.42.1  18-Oct-2007  yamt sync with head.
 1.8.40.1  06-Nov-2007  matt sync with HEAD
 1.8.38.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.8.28.1  11-Oct-2007  garbled Move a bunch of the macppc SMP code out of macppc, and down into the
generic OEA code. Add a set of md callbacks into these shared routines,
that any oeappc SMP machine needs to provide. This allows for generally
shared SMP startup code, but still allows for machine-specific
differences in the setup and kicking of the new CPU.

Convert macppc to this new layout. Tested by Macallan.

Add an initial attempt at SMP to prep. Tested on UP machine only,
untested on SMP yet.
 1.8.20.1  23-Oct-2007  ad Sync with head.
 1.9.52.1  23-Jun-2011  cherry Catchup with rmind-uvmplock merge.

RSS XML Feed