Message ID | 20240419021325.2880384-1-anshuman.khandual@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64/sysreg: Update ID_AA64MMFR2_EL1 register | expand |
On Fri, Apr 19, 2024 at 07:43:25AM +0530, Anshuman Khandual wrote: > This updates ID_AA64MMFR2_EL1.VARange register fields as per the definition > based on DDI0601 2024-03. > > Cc: Catalin Marinas <catalin.marinas@arm.com> > Cc: Will Deacon <will@kernel.org> > Cc: Mark Brown <broonie@kernel.org> > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-kernel@vger.kernel.org > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> > --- > This applies on v6.9-rc4 > > arch/arm64/tools/sysreg | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm64/tools/sysreg b/arch/arm64/tools/sysreg > index a4c1dd4741a4..6d7213dcbeb5 100644 > --- a/arch/arm64/tools/sysreg > +++ b/arch/arm64/tools/sysreg > @@ -1739,6 +1739,7 @@ EndEnum > UnsignedEnum 19:16 VARange > 0b0000 48 > 0b0001 52 > + 0b0010 56 Is anybody using this? I'm not sure there's a lot of value in adding these fields one-by-one for the sake of completeness. Will
On 4/19/24 19:16, Will Deacon wrote: > On Fri, Apr 19, 2024 at 07:43:25AM +0530, Anshuman Khandual wrote: >> This updates ID_AA64MMFR2_EL1.VARange register fields as per the definition >> based on DDI0601 2024-03. >> >> Cc: Catalin Marinas <catalin.marinas@arm.com> >> Cc: Will Deacon <will@kernel.org> >> Cc: Mark Brown <broonie@kernel.org> >> Cc: linux-arm-kernel@lists.infradead.org >> Cc: linux-kernel@vger.kernel.org >> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> >> --- >> This applies on v6.9-rc4 >> >> arch/arm64/tools/sysreg | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/arch/arm64/tools/sysreg b/arch/arm64/tools/sysreg >> index a4c1dd4741a4..6d7213dcbeb5 100644 >> --- a/arch/arm64/tools/sysreg >> +++ b/arch/arm64/tools/sysreg >> @@ -1739,6 +1739,7 @@ EndEnum >> UnsignedEnum 19:16 VARange >> 0b0000 48 >> 0b0001 52 >> + 0b0010 56 > > Is anybody using this? I'm not sure there's a lot of value in adding > these fields one-by-one for the sake of completeness. This is not being used currently but will be required for upcoming features. I was under the impression that register fields (atleast for the ID registers) should be kept updated, with latest released spec ? Besides lately arch/arm64/tools/sysreg serves as very good reference for all necessary register fields. https://developer.arm.com/documentation/ddi0601/2024-03/AArch64-Registers/ID-AA64MMFR2-EL1--AArch64-Memory-Model-Feature-Register-2
On Mon, Apr 22, 2024 at 08:38:40AM +0530, Anshuman Khandual wrote: > > > On 4/19/24 19:16, Will Deacon wrote: > > On Fri, Apr 19, 2024 at 07:43:25AM +0530, Anshuman Khandual wrote: > >> This updates ID_AA64MMFR2_EL1.VARange register fields as per the definition > >> based on DDI0601 2024-03. > >> > >> Cc: Catalin Marinas <catalin.marinas@arm.com> > >> Cc: Will Deacon <will@kernel.org> > >> Cc: Mark Brown <broonie@kernel.org> > >> Cc: linux-arm-kernel@lists.infradead.org > >> Cc: linux-kernel@vger.kernel.org > >> Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> > >> --- > >> This applies on v6.9-rc4 > >> > >> arch/arm64/tools/sysreg | 1 + > >> 1 file changed, 1 insertion(+) > >> > >> diff --git a/arch/arm64/tools/sysreg b/arch/arm64/tools/sysreg > >> index a4c1dd4741a4..6d7213dcbeb5 100644 > >> --- a/arch/arm64/tools/sysreg > >> +++ b/arch/arm64/tools/sysreg > >> @@ -1739,6 +1739,7 @@ EndEnum > >> UnsignedEnum 19:16 VARange > >> 0b0000 48 > >> 0b0001 52 > >> + 0b0010 56 > > > > Is anybody using this? I'm not sure there's a lot of value in adding > > these fields one-by-one for the sake of completeness. > > This is not being used currently but will be required for upcoming > features. I was under the impression that register fields (atleast > for the ID registers) should be kept updated, with latest released > spec ? Besides lately arch/arm64/tools/sysreg serves as very good > reference for all necessary register fields. Why? The linux headers aren't documenting the architecture. Will
On Mon, Apr 22, 2024 at 06:16:13PM +0100, Will Deacon wrote: > On Mon, Apr 22, 2024 at 08:38:40AM +0530, Anshuman Khandual wrote: > > This is not being used currently but will be required for upcoming > > features. I was under the impression that register fields (atleast > > for the ID registers) should be kept updated, with latest released > > spec ? Besides lately arch/arm64/tools/sysreg serves as very good > > reference for all necessary register fields. > Why? The linux headers aren't documenting the architecture. I don't know that it's something that we should be doing apropos of nothing but if people have done updates and they're not unreasonbly complicated to review it does seem useful to integrate them to avoid duplicated work. There have been some issues with that around the ID registers (which are going to be on the places most prone to this I guess).
On 4/23/24 10:47, Mark Brown wrote: > On Mon, Apr 22, 2024 at 06:16:13PM +0100, Will Deacon wrote: >> On Mon, Apr 22, 2024 at 08:38:40AM +0530, Anshuman Khandual wrote: > >>> This is not being used currently but will be required for upcoming >>> features. I was under the impression that register fields (atleast >>> for the ID registers) should be kept updated, with latest released >>> spec ? Besides lately arch/arm64/tools/sysreg serves as very good >>> reference for all necessary register fields. > >> Why? The linux headers aren't documenting the architecture. > > I don't know that it's something that we should be doing apropos of > nothing but if people have done updates and they're not unreasonbly > complicated to review it does seem useful to integrate them to avoid > duplicated work. There have been some issues with that around the ID > registers (which are going to be on the places most prone to this I > guess). The other problem is by not updating the individual register fields with the latest spec, it also gives an wrong impression about that field, and also might create confusion.
diff --git a/arch/arm64/tools/sysreg b/arch/arm64/tools/sysreg index a4c1dd4741a4..6d7213dcbeb5 100644 --- a/arch/arm64/tools/sysreg +++ b/arch/arm64/tools/sysreg @@ -1739,6 +1739,7 @@ EndEnum UnsignedEnum 19:16 VARange 0b0000 48 0b0001 52 + 0b0010 56 EndEnum UnsignedEnum 15:12 IESB 0b0000 NI
This updates ID_AA64MMFR2_EL1.VARange register fields as per the definition based on DDI0601 2024-03. Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Mark Brown <broonie@kernel.org> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- This applies on v6.9-rc4 arch/arm64/tools/sysreg | 1 + 1 file changed, 1 insertion(+)