* [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1
@ 2024-09-17 16:13 Peter Maydell
2024-09-18 14:22 ` Richard Henderson
2024-09-20 8:10 ` Marcin Juszkiewicz
0 siblings, 2 replies; 4+ messages in thread
From: Peter Maydell @ 2024-09-17 16:13 UTC (permalink / raw)
To: qemu-arm, qemu-devel; +Cc: Marcin Juszkiewicz
The Neoverse-V1 TRM is a bit confused about the layout of the
ID_AA64ISAR1_EL1 register, and so its table 3-6 has the wrong value
for this ID register. Trust instead section 3.2.74's list of which
fields are set.
This means that we stop incorrectly reporting FEAT_XS as present, and
now report the presence of FEAT_BF16.
Cc: qemu-stable@nongnu.org
Reported-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target/arm/tcg/cpu64.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target/arm/tcg/cpu64.c b/target/arm/tcg/cpu64.c
index b9f34f044d0..01689208286 100644
--- a/target/arm/tcg/cpu64.c
+++ b/target/arm/tcg/cpu64.c
@@ -677,7 +677,7 @@ static void aarch64_neoverse_v1_initfn(Object *obj)
cpu->isar.id_aa64dfr0 = 0x000001f210305519ull;
cpu->isar.id_aa64dfr1 = 0x00000000;
cpu->isar.id_aa64isar0 = 0x1011111110212120ull; /* with FEAT_RNG */
- cpu->isar.id_aa64isar1 = 0x0111000001211032ull;
+ cpu->isar.id_aa64isar1 = 0x0011100001211032ull;
cpu->isar.id_aa64mmfr0 = 0x0000000000101125ull;
cpu->isar.id_aa64mmfr1 = 0x0000000010212122ull;
cpu->isar.id_aa64mmfr2 = 0x0220011102101011ull;
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1
2024-09-17 16:13 [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1 Peter Maydell
@ 2024-09-18 14:22 ` Richard Henderson
2024-09-20 8:10 ` Marcin Juszkiewicz
1 sibling, 0 replies; 4+ messages in thread
From: Richard Henderson @ 2024-09-18 14:22 UTC (permalink / raw)
To: Peter Maydell, qemu-arm, qemu-devel; +Cc: Marcin Juszkiewicz
On 9/17/24 18:13, Peter Maydell wrote:
> The Neoverse-V1 TRM is a bit confused about the layout of the
> ID_AA64ISAR1_EL1 register, and so its table 3-6 has the wrong value
> for this ID register. Trust instead section 3.2.74's list of which
> fields are set.
>
> This means that we stop incorrectly reporting FEAT_XS as present, and
> now report the presence of FEAT_BF16.
>
> Cc:qemu-stable@nongnu.org
> Reported-by: Marcin Juszkiewicz<marcin.juszkiewicz@linaro.org>
> Signed-off-by: Peter Maydell<peter.maydell@linaro.org>
> ---
> target/arm/tcg/cpu64.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1
2024-09-17 16:13 [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1 Peter Maydell
2024-09-18 14:22 ` Richard Henderson
@ 2024-09-20 8:10 ` Marcin Juszkiewicz
2024-09-20 8:11 ` Michael Tokarev
1 sibling, 1 reply; 4+ messages in thread
From: Marcin Juszkiewicz @ 2024-09-20 8:10 UTC (permalink / raw)
To: Peter Maydell, qemu-arm, qemu-devel; +Cc: Michael Tokarev
W dniu 17.09.2024 o 18:13, Peter Maydell pisze:
> The Neoverse-V1 TRM is a bit confused about the layout of the
> ID_AA64ISAR1_EL1 register, and so its table 3-6 has the wrong value
> for this ID register. Trust instead section 3.2.74's list of which
> fields are set.
>
> This means that we stop incorrectly reporting FEAT_XS as present, and
> now report the presence of FEAT_BF16.
>
> Cc: qemu-stable@nongnu.org
> Reported-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> target/arm/tcg/cpu64.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/target/arm/tcg/cpu64.c b/target/arm/tcg/cpu64.c
> index b9f34f044d0..01689208286 100644
> --- a/target/arm/tcg/cpu64.c
> +++ b/target/arm/tcg/cpu64.c
> @@ -677,7 +677,7 @@ static void aarch64_neoverse_v1_initfn(Object *obj)
> cpu->isar.id_aa64dfr0 = 0x000001f210305519ull;
> cpu->isar.id_aa64dfr1 = 0x00000000;
> cpu->isar.id_aa64isar0 = 0x1011111110212120ull; /* with FEAT_RNG */
> - cpu->isar.id_aa64isar1 = 0x0111000001211032ull;
> + cpu->isar.id_aa64isar1 = 0x0011100001211032ull;
> cpu->isar.id_aa64mmfr0 = 0x0000000000101125ull;
> cpu->isar.id_aa64mmfr1 = 0x0000000010212122ull;
> cpu->isar.id_aa64mmfr2 = 0x0220011102101011ull;
I think that it would nice to have it backported to stable branches. It
applies to stable-8.1 and above.
In master it is 8676007eff04bb4e454bcdf92fab3f855bcc59b3 commit.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1
2024-09-20 8:10 ` Marcin Juszkiewicz
@ 2024-09-20 8:11 ` Michael Tokarev
0 siblings, 0 replies; 4+ messages in thread
From: Michael Tokarev @ 2024-09-20 8:11 UTC (permalink / raw)
To: Marcin Juszkiewicz, Peter Maydell, qemu-arm, qemu-devel
On 20.09.2024 11:10, Marcin Juszkiewicz wrote:
> W dniu 17.09.2024 o 18:13, Peter Maydell pisze:
>> The Neoverse-V1 TRM is a bit confused about the layout of the
>> ID_AA64ISAR1_EL1 register, and so its table 3-6 has the wrong value
>> for this ID register. Trust instead section 3.2.74's list of which
>> fields are set.
>>
>> This means that we stop incorrectly reporting FEAT_XS as present, and
>> now report the presence of FEAT_BF16.
>>
>> Cc: qemu-stable@nongnu.org
...
> I think that it would nice to have it backported to stable branches. It
> applies to stable-8.1 and above.
Since it has Cc: qemu-stable@, I already picked it up for 8.2, 9.0 and
9.1.
> In master it is 8676007eff04bb4e454bcdf92fab3f855bcc59b3 commit.
Thank you!
/mjt
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-09-20 8:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-17 16:13 [PATCH] target/arm: Correct ID_AA64ISAR1_EL1 value for neoverse-v1 Peter Maydell
2024-09-18 14:22 ` Richard Henderson
2024-09-20 8:10 ` Marcin Juszkiewicz
2024-09-20 8:11 ` Michael Tokarev
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).