On Tue, 14 Oct 2025 at 21:09, Richard Henderson
<[email protected]> wrote:
>
> So far, just extend the data type and check access; do not yet
> consume the 128-bit table format.
>
> Signed-off-by: Richard Henderson <[email protected]>
> @@ -6196,9 +6244,12 @@ static const ARMCPRegInfo contextidr_el2 = {
> static const ARMCPRegInfo vhe_reginfo[] = {
> { .name = "TTBR1_EL2", .state = ARM_CP_STATE_AA64,
> .opc0 = 3, .opc1 = 4, .crn = 2, .crm = 0, .opc2 = 1,
> - .access = PL2_RW, .writefn = vmsa_tcr_ttbr_el2_write,
> - .raw_writefn = raw_write,
> - .fieldoffset = offsetof(CPUARMState, cp15.ttbr1_el[2]) },
> + .type = ARM_CP_128BIT,
> + .access = PL2_RW, .access128fn = access_d128,
> + .writefn = vmsa_tcr_ttbr_el2_write, .raw_writefn = raw_write,
> + .write128fn = vmsa_tcr_ttbr_el2_write128, .raw_write128fn =
> raw_write128,
> + .fieldoffset = offsetof(CPUARMState, cp15.ttbr1_el[2]),
> + .fieldoffset = offsetof(CPUARMState, cp15.ttbr1_el_hi[2]) },
We set .fieldoffset twice -- one of these should be .fieldoffsethi.
> #ifndef CONFIG_USER_ONLY
> { .name = "CNTHV_CVAL_EL2", .state = ARM_CP_STATE_AA64,
> .opc0 = 3, .opc1 = 4, .crn = 14, .crm = 3, .opc2 = 2,
> --
Otherwise
Reviewed-by: Peter Maydell <[email protected]>
thanks
-- PMM