Message ID | 20250115134259.1864060-6-james.clark@linaro.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | arm64/sysreg: Sort sysreg by encoding | expand |
On Wed, Jan 15, 2025 at 01:42:57PM +0000, James Clark wrote: > Make an unsorted sysreg file a build error so it stays sorted. Reviewed-by: Mark Brown <broonie@kernel.org>
diff --git a/arch/arm64/tools/gen-sysreg.awk b/arch/arm64/tools/gen-sysreg.awk index 7f578216dc68..00a8391f373d 100755 --- a/arch/arm64/tools/gen-sysreg.awk +++ b/arch/arm64/tools/gen-sysreg.awk @@ -98,6 +98,7 @@ BEGIN { __current_block_depth = 0 __current_block[__current_block_depth] = "Root" + __last_sysreg_sort_val = 0 } END { @@ -156,6 +157,12 @@ $1 == "Sysreg" && block_current() == "Root" { crm = $6 op2 = $7 + sort_val = sprintf("%02d", $3) sprintf("%02d", $4) sprintf("%02d", $5) \ + sprintf("%02d", $6) sprintf("%02d", $7) + if (sort_val < __last_sysreg_sort_val) + fatal($2 ": Sysregs should be sorted by encoding") + __last_sysreg_sort_val = sort_val + res0 = "UL(0)" res1 = "UL(0)" unkn = "UL(0)"
Make an unsorted sysreg file a build error so it stays sorted. Signed-off-by: James Clark <james.clark@linaro.org> --- arch/arm64/tools/gen-sysreg.awk | 7 +++++++ 1 file changed, 7 insertions(+)