Home | History | Annotate | Download | only in include
History log of /src/sys/arch/aarch64/include/db_machdep.h
RevisionDateAuthorComments
 1.16  31-Oct-2021  skrll Fix crash(8) build
 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  30-Apr-2021  skrll Make the ddb for pmap / pte information pmap agnostic
 1.13  11-Mar-2021  ryo branches: 1.13.4;
- fixed a problem where hardware {break,watch}points other than #0 could not be cleared
- hardware {break,watch}point addresses are now strictly checked
 1.12  09-Mar-2021  ryo Add support hardware breakpoint and watchpoint again.

Limited support for hardware watchpoint has been available for some time, but it
has not been working properly. In addition, it stopped working at the time of
the PTRACE support commit on 2018-12-13. This has been fixed to work correctly,
and also fixed to be practical by sharing hardware watchpoints and breakpoints
between CPUs on MULTIPROCESSOR.

Also fixed a bug that causes a malfunction when switching CPUs with
"machine cpu N" when entering ddb mode from other than cpu_Debugger().

I have confirmed that the CPU can be switched by "machine cpu N" and return from
ddb properly in each case where ddb is called triggered by ddb break/watchpoint,
hardware break/watchpoint, and cpu_Debugger().
 1.11  14-Sep-2020  ryo branches: 1.11.2;
sprinkle LE32TOH to fetch instructions on aarch64eb
 1.10  08-Jul-2020  ryo Determination of A64,A32,T32 for disasm is now done in strrdisasm() instead of the caller.
correctly disassemble by processor state if defined DEBUG_DUMP_ON_USERFAULT or DEBUG_DDB_ON_USERFAULT.
 1.9  22-May-2020  ryo fix to do backtrace properly for running LWPs and cpu_lwp_fork().
when dump of pcb_tf, only the switchframe part is now displayed instead of the whole trapframe.
 1.8  12-Oct-2018  ryo add initial support of COMPAT_NETBSD32 on AArch64.
arm ELF32 EABI binaries could be execute in AArch32 state on AArch64. A32 THUMB mode is not supported yet.
 1.7  15-Sep-2018  jakllsch make kernel-groveling crash(8) work on aarch64
 1.6  17-Jul-2018  ryo use panic() instead of some printf to show fault status.
useful for ddb "show panic" command.
 1.5  28-Apr-2018  ryo branches: 1.5.2;
Oops, my previous commit is totally wrong. recast mask/pattern list.
pointed out by David Binderman in PR/53224, thanks.
 1.4  27-Apr-2018  ryo remove suspicious compare, and cleanup complex conditionals.
pointed out PR/53159 by dcb314, thanks.
 1.3  01-Apr-2018  ryo Add initial support for ARMv8 (AARCH64) (by nisimura@ and ryo@)

- sys/arch/evbarm64 is gone and integrated into sys/arch/evbarm. (by skrll@)
- add support fdt. evbarm/conf/GENERIC64 fdt (bcm2837,sunxi,tegra) based generic 64bit kernel config. (by skrll@, jmcneill@)
 1.2  11-Jan-2016  skrll branches: 1.2.16;
PR port-arm/50641: src/sys/arch/aarch64/include/db_machdep.h:67: possible bad if test ?

Fix the bl instruction test.
 1.1  10-Aug-2014  matt branches: 1.1.4; 1.1.6;
Preliminary files for AARCH64 (64-bit ARM) support.
Enough for a distribution build.
 1.1.6.1  19-Mar-2016  skrll Sync with HEAD
 1.1.4.3  03-Dec-2017  jdolecek update from HEAD
 1.1.4.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.4.1  10-Aug-2014  tls file db_machdep.h was added on branch tls-maxphys on 2014-08-20 00:02:39 +0000
 1.2.16.5  20-Oct-2018  pgoyette Sync with head
 1.2.16.4  30-Sep-2018  pgoyette Ssync with HEAD
 1.2.16.3  28-Jul-2018  pgoyette Sync with HEAD
 1.2.16.2  02-May-2018  pgoyette Synch with HEAD
 1.2.16.1  07-Apr-2018  pgoyette Sync with HEAD. 77 conflicts resolved - all of them $NetBSD$
 1.5.2.1  10-Jun-2019  christos Sync with HEAD
 1.11.2.1  03-Apr-2021  thorpej Sync with HEAD.
 1.13.4.1  13-May-2021  thorpej Sync with HEAD.

RSS XML Feed