[PATCH 4/6] arm64/sysreg: Annotate signed enumerations

Mark Rutland mark.rutland at arm.com
Fri Dec 9 04:42:10 PST 2022


On Thu, Dec 08, 2022 at 04:03:25PM +0000, Mark Brown wrote:
> ID_AA64PFR0_EL1.FP and ID_AA64PFR0_EL1.AdvSIMD are both signed enumerations,
> specify them as such in sysreg. There are other signed enumerations in the
> registers but these are the only ones for which we currently use FTR_SIGNED,
> others can be fixed up incrementally.

Can we please do that in one go (either in one patch or a set of patches in
this series)?

I appreciate that's more work up-front, but doing that will mean that all the
definitions are in a consistent state, which'll be far less error prone going
forwards -- people will *definitely* forget to change the other existing
definitions to be SIGNED if all that is hidden at the point-of-use.

If we do that, we may as well explicitly annotate the UNSIGNED enums (and those
which are purely enums without a sign) at the same time. That'll indicate that
we've reviewed each entry, and it'll make it far more obvious one must do so
when adding new entries in future.

Thanks,
Mark.

> 
> Signed-off-by: Mark Brown <broonie at kernel.org>
> ---
>  arch/arm64/tools/sysreg | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm64/tools/sysreg b/arch/arm64/tools/sysreg
> index e8fb6684d7f3..16488c72827b 100644
> --- a/arch/arm64/tools/sysreg
> +++ b/arch/arm64/tools/sysreg
> @@ -846,12 +846,12 @@ Enum	27:24	GIC
>  	0b0001	IMP
>  	0b0010	V4P1
>  EndEnum
> -Enum	23:20	AdvSIMD
> +SignedEnum	23:20	AdvSIMD
>  	0b0000	IMP
>  	0b0001	FP16
>  	0b1111	NI
>  EndEnum
> -Enum	19:16	FP
> +SignedEnum	19:16	FP
>  	0b0000	IMP
>  	0b0001	FP16
>  	0b1111	NI
> 
> -- 
> 2.30.2
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel



More information about the linux-arm-kernel mailing list