target/arm: Implement Neoverse N2 CPU model
commitdfff1000fef24f6686e0be5e6472613985a363dc
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 15 Sep 2023 18:54:53 +0000 (15 19:54 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 27 Oct 2023 10:41:13 +0000 (27 11:41 +0100)
tree9fd94af197b25523fb6d52db395f3c669840a2b1
parent3bcc53980b05dbcdc9bc70fc7ec3bc37320edcbd
target/arm: Implement Neoverse N2 CPU model

Implement a model of the Neoverse N2 CPU. This is an Armv9.0-A
processor very similar to the Cortex-A710. The differences are:
 * no FEAT_EVT
 * FEAT_DGH (data gathering hint)
 * FEAT_NV (not yet implemented in QEMU)
 * Statistical Profiling Extension (not implemented in QEMU)
 * 48 bit physical address range, not 40
 * CTR_EL0.DIC = 1 (no explicit icache cleaning needed)
 * PMCR_EL0.N = 6 (always 6 PMU counters, not 20)

Because it has 48-bit physical address support, we can use
this CPU in the sbsa-ref board as well as the virt board.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Tested-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 20230915185453.1871167-3-peter.maydell@linaro.org
docs/system/arm/virt.rst
hw/arm/sbsa-ref.c
hw/arm/virt.c
target/arm/tcg/cpu64.c