On 27/04/2021 10:35, Michal Orzel wrote:
AArch64 registers are 64bit whereas AArch32 registers are 32bit or 64bit. MSR/MRS are expecting 64bit values thus we should get rid of helpers READ/WRITE_SYSREG32 in favour of using READ/WRITE_SYSREG. We should also use register_t type when reading sysregs which can correspond to uint64_t or uint32_t. Even though many AArch64 registers have upper 32bit reserved it does not mean that they can't be widen in the future. Modify type of vtimer structure's member: ctl to register_t. Add macro CNTFRQ_MASK containing mask for timer clock frequency field of CNTFRQ_EL0 register. Modify CNTx_CTL_MASK to return unsigned long instead of unsigned int as ctl is now of type register_t.
You modify all the CTX_CTL_* macros. This can be fixed on commit.
Signed-off-by: Michal Orzel <michal.or...@arm.com>
Acked-by: Julien Grall <jgr...@amazon.com> Cheers, -- Julien Grall