From: Michal Orzel <michal.orzel@arm.com> To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Tamas K Lengyel <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, Petre Pircalabu <ppircalabu@bitdefender.com>, bertrand.marquis@arm.com Subject: [PATCH v2 00/10] Get rid of READ/WRITE_SYSREG32 Date: Tue, 27 Apr 2021 11:35:36 +0200 [thread overview] Message-ID: <20210427093546.30703-1-michal.orzel@arm.com> (raw) The purpose of this patch series is to remove usage of 32bit helper macros READ/WRITE_SYSREG32 on arm64 as the idea of them is not following the latest ARMv8 specification and mrs/msr instructions are expecting 64bit values. According to ARM DDI 0487G.a all the AArch64 system registers are 64bit wide even though many of them have upper 32bit reserved. This does not mean that in the newer versions of ARMv8 or in the next architecture, some of the sysregs will get widen. Also when dealing with system registers we should use register_t type. This patch series removes the use of READ/WRITE_SYSREG32 and replaces these calls with READ/WRITE_SYSREG. The change was splited into several small patches to make the review proces easier. This patch series focuses on removing READ/WRITE_SYSREG32. The next thing to do is to also get rid of vreg_emulate_sysreg32 and other parts related to it like TVM_REG macro. The final part will be to completely remove macros READ/WRITE_SYSREG32. Michal Orzel (10): arm64/vfp: Get rid of READ/WRITE_SYSREG32 arm/domain: Get rid of READ/WRITE_SYSREG32 arm: Modify type of actlr to register_t arm/gic: Remove member hcr of structure gic_v3 arm/gic: Get rid of READ/WRITE_SYSREG32 arm/p2m: Get rid of READ/WRITE_SYSREG32 arm/mm: Get rid of READ/WRITE_SYSREG32 arm/page: Get rid of READ/WRITE_SYSREG32 arm/time,vtimer: Get rid of READ/WRITE_SYSREG32 arm64: Change type of hsr, cpsr, spsr_el1 to uint64_t xen/arch/arm/arm64/entry.S | 4 +- xen/arch/arm/arm64/traps.c | 2 +- xen/arch/arm/arm64/vfp.c | 12 ++-- xen/arch/arm/arm64/vsysreg.c | 3 +- xen/arch/arm/domain.c | 22 +++--- xen/arch/arm/gic-v3-lpi.c | 2 +- xen/arch/arm/gic-v3.c | 98 ++++++++++++++------------- xen/arch/arm/mm.c | 2 +- xen/arch/arm/p2m.c | 8 +-- xen/arch/arm/time.c | 28 ++++---- xen/arch/arm/traps.c | 34 ++++++---- xen/arch/arm/vcpreg.c | 13 ++-- xen/arch/arm/vtimer.c | 10 +-- xen/include/asm-arm/arm64/processor.h | 11 +-- xen/include/asm-arm/arm64/vfp.h | 6 +- xen/include/asm-arm/domain.h | 6 +- xen/include/asm-arm/gic.h | 6 +- xen/include/asm-arm/gic_v3_defs.h | 2 + xen/include/asm-arm/hsr.h | 14 +++- xen/include/asm-arm/page.h | 4 +- xen/include/asm-arm/processor.h | 9 ++- xen/include/public/arch-arm.h | 4 +- xen/include/public/vm_event.h | 4 ++ 23 files changed, 169 insertions(+), 135 deletions(-) -- 2.29.0
next reply other threads:[~2021-04-27 9:36 UTC|newest] Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-27 9:35 Michal Orzel [this message] 2021-04-27 9:35 ` [PATCH v2 01/10] arm64/vfp: " Michal Orzel 2021-04-27 9:35 ` [PATCH v2 02/10] arm/domain: " Michal Orzel 2021-04-27 9:45 ` Julien Grall 2021-04-29 6:58 ` Michal Orzel 2021-04-27 9:35 ` [PATCH v2 03/10] arm: Modify type of actlr to register_t Michal Orzel 2021-04-27 9:47 ` Julien Grall 2021-04-29 7:10 ` Michal Orzel 2021-04-27 9:35 ` [PATCH v2 04/10] arm/gic: Remove member hcr of structure gic_v3 Michal Orzel 2021-04-27 9:48 ` Julien Grall 2021-04-27 9:35 ` [PATCH v2 05/10] arm/gic: Get rid of READ/WRITE_SYSREG32 Michal Orzel 2021-04-27 10:02 ` Julien Grall 2021-04-29 7:14 ` Michal Orzel 2021-04-27 9:35 ` [PATCH v2 06/10] arm/p2m: " Michal Orzel 2021-04-27 9:35 ` [PATCH v2 07/10] arm/mm: " Michal Orzel 2021-04-27 9:59 ` Julien Grall 2021-04-29 7:16 ` Michal Orzel 2021-04-27 9:35 ` [PATCH v2 08/10] arm/page: " Michal Orzel 2021-04-27 9:35 ` [PATCH v2 09/10] arm/time,vtimer: " Michal Orzel 2021-04-27 10:09 ` Julien Grall 2021-04-27 9:35 ` [PATCH v2 10/10] arm64: Change type of hsr, cpsr, spsr_el1 to uint64_t Michal Orzel 2021-04-27 11:09 ` Julien Grall 2021-04-29 8:53 ` Michal Orzel 2021-04-29 10:31 ` Tamas K Lengyel 2021-04-29 10:35 ` Julien Grall
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210427093546.30703-1-michal.orzel@arm.com \ --to=michal.orzel@arm.com \ --cc=Volodymyr_Babchuk@epam.com \ --cc=aisaila@bitdefender.com \ --cc=bertrand.marquis@arm.com \ --cc=julien@xen.org \ --cc=ppircalabu@bitdefender.com \ --cc=sstabellini@kernel.org \ --cc=tamas@tklengyel.com \ --cc=xen-devel@lists.xenproject.org \ --subject='Re: [PATCH v2 00/10] Get rid of READ/WRITE_SYSREG32' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).