Home | History | Annotate | Download | only in include
History log of /src/sys/arch/arm/include/undefined.h
RevisionDateAuthorComments
 1.16  05-Dec-2021  msaitoh s/existance/existence/ in comment.
 1.15  31-Oct-2021  skrll Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.

The AP initialisation code in cpu_init_secondary_processor will read and
initialise the required system registers and state for the BP to attach
and report.

Rework the interrupt handler code for this new sequence. Thankfully,
this removes a bunch of code for bcm2836mp.

The VFP detection handler on <= armv7 relies on the global undefined
handler being in place until the BP attaches vfp. That is, after the
APs have been spun up.

gicv3_its.c has a serialisation issue which is protected against in
the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin
lock. The serialisation issue needs addressing more completely.

Tested on RPI3, Apple M1, QEMU, and lx2k

Fixes PR port-arm/56264:
diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
 1.14  27-Aug-2021  skrll KNF a comment
 1.13  17-Mar-2019  skrll Trailing whitespace
 1.12  14-Mar-2009  dsl branches: 1.12.64;
Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.11  15-Mar-2008  rearnsha branches: 1.11.4; 1.11.12; 1.11.18;
VFP support.
 1.10  11-Dec-2005  christos branches: 1.10.50; 1.10.52; 1.10.72; 1.10.76;
merge ktrace-lwp.
 1.9  21-Aug-2004  rearnsha branches: 1.9.12;
Convert the coprocessor defines into an enum to avoid excessive
preprocessor hackery. If supporting Thumb add an 18th undefined
handler for undefined instruction traps taken in Thumb state. Kill
MAX_COPROCS and use NUM_UNKNOWN_HANDLERS instead.

Add support for breakpoints set in Thumb code and hand them off to
GDB as required.
 1.8  07-Aug-2004  rearnsha Bah! Fix tyop CORE_UNKOWN_HANDLER -> CORE_UNKNOWN_HANDLER
 1.7  07-Aug-2004  rearnsha Add SYSTEM_COPROC (cp15).
 1.6  07-Aug-2004  rearnsha FP_COPROC* ->FPA_COPROC*
 1.5  07-Aug-2004  rearnsha Don't overload the unknown instruction handling for the core onto CP0.
Instead, add a seventeenth 'co-processor' specifically for the core.
Add support for ARMv5 unknown instructions in the 'NV' space.
 1.4  20-Dec-2001  thorpej branches: 1.4.18;
* Share a common vector page between arm26 and arm32.
* Use a common set of exception handlers for all arm32 platforms.
* New FIQ framework based on discussions with Ben Harris, shared
between arm26 and arm32.
 1.3  16-Nov-2001  bjh21 Add prototypes for undefinedinstruction() and resethandler().
 1.2  11-Mar-2001  bjh21 branches: 1.2.2; 1.2.4; 1.2.10;
Change undefined instruction handler to use a linked list for each
co-processor. This is necessary so we can have several handlers for
CP0 (used as a catch-all for non-CP instructions).

Handlers are now removed using remove_coproc_handler(), rather than by calling
install_coproc_handler() with a NULL handler.

Because install_coproc_handler() can now allocate memory, there's a version
for use at boot time that doesn't.
 1.1  23-Feb-2001  reinoud branches: 1.1.2;
Big patch for merging common include files of the new hpcarm tree and the old arm32
tree into the new arm substree. All moved files are relinked with a stub that included
the file from the new location; this might be done better later.
 1.1.2.1  09-Apr-2001  nathanw Catch up with -current.
 1.2.10.2  08-Jan-2002  nathanw Catch up to -current.
 1.2.10.1  11-Mar-2001  nathanw file undefined.h was added on branch nathanw_sa on 2002-01-08 00:23:12 +0000
 1.2.4.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.2.2  12-Mar-2001  bouyer Sync with HEAD.
 1.2.2.1  11-Mar-2001  bouyer file undefined.h was added on branch thorpej_scsipi on 2001-03-12 13:27:24 +0000
 1.4.18.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.4.18.3  18-Sep-2004  skrll Sync with HEAD.
 1.4.18.2  25-Aug-2004  skrll Sync with HEAD.
 1.4.18.1  12-Aug-2004  skrll Sync with HEAD.
 1.9.12.1  17-Mar-2008  yamt sync with head.
 1.10.76.1  03-Apr-2008  mjf Sync with HEAD.
 1.10.72.1  24-Mar-2008  keiichi sync with head.
 1.10.52.1  23-Mar-2008  matt sync with HEAD
 1.10.50.1  21-Mar-2008  chris Sync with head.
 1.11.18.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.11.12.1  28-Apr-2009  skrll Sync with HEAD.
 1.11.4.1  04-May-2009  yamt sync with head.
 1.12.64.1  10-Jun-2019  christos Sync with HEAD

RSS XML Feed