different ARM CPUS with different cache architectures for example to be
supported in a single kernel.
- All CPU/MMU/TLB specific functions are now held as function
pointers in a cpu_functions structure defined in machine/cpufunc.h
All coproc 15 accesses, TLB flushing, cache cleaning/flushing
and abort correction functions are now defined in this structure.
- cpufuncs is a global structure that is setup during initarm()
that holds all the function pointers for the booted CPU.
- A global variable 'cputype' now defines the probed cputype.
- All the existing functions for manipulating CPU specific features
have been replaced with macros defined in machine/cpufunc.h
that will call the appropriate function in the cpu_functions
structure.
- CPU functions are provided for selected CPU types (config options)
and the appropriate cpu_functions structure is chosen during
booting, based on the probed CPU type.
- All the required functions for existing CPU types (ARM6, ARM7 and
SA110) have been implemented.
cgd's alpha implementation. Bus tags now point to a structure of
function pointers to bus space routines rather than being an index to
one of several I/O methods making it simpler and more efficient in
handling many different busses and mapping schemes.
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:
Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
CPU_SA110 and CPU_LATE_ABORT.
Updated the CLKF_INTR() macro for changes made to the interrupt system.
Updated some of the CPU ID codes.
Added the CPU ID for the ARM8.
Make fp_reg_t a typedef of fp_extended_precision_t.
Rename the fp_state structure to fpe_sp_state as it describes
the single precision FPE state held in the pcb and is internal to the
kernel.
Define a new fp_state structure that is for user access to the fp
state (e.g. via ptrace()).