qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 7/8] target/mips: Enable MSA ASE for mips32r6-generic
@ 2024-10-18 13:20 Aleksandar Rakic
  2024-10-19  7:46 ` Aleksandar Rikalo
  2024-10-25 19:18 ` Philippe Mathieu-Daudé
  0 siblings, 2 replies; 3+ messages in thread
From: Aleksandar Rakic @ 2024-10-18 13:20 UTC (permalink / raw)
  To: qemu-devel@nongnu.org
  Cc: Djordje Todorovic, cfu@mips.com, arikalo@gmail.com,
	peter.maydell@linaro.org

Enable MSA ASE for mips32r6-generic CPU.

Cherry-picked 0186e83a0613e90aff6d4c12c91cdb080d695d37
from https://github.com/MIPS/gnutools-qemu

Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Signed-off-by: Faraz Shahbazker <fshahbazker@wavecomp.com>
Signed-off-by: Aleksandar Rakic <aleksandar.rakic@htecgroup.com>
---
 target/mips/cpu-defs.c.inc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/target/mips/cpu-defs.c.inc b/target/mips/cpu-defs.c.inc
index 9428ece220..19e2abac82 100644
--- a/target/mips/cpu-defs.c.inc
+++ b/target/mips/cpu-defs.c.inc
@@ -478,14 +478,15 @@ const mips_def_t mips_defs[] =
                        (2 << CP0C1_DS) | (4 << CP0C1_DL) | (3 << CP0C1_DA) |
                        (0 << CP0C1_PC) | (1 << CP0C1_WR) | (1 << CP0C1_EP),
         .CP0_Config2 = MIPS_CONFIG2,
-        .CP0_Config3 = MIPS_CONFIG3 | (1 << CP0C3_BP) | (1 << CP0C3_BI) |
+        .CP0_Config3 = MIPS_CONFIG3 | (1 << CP0C3_MSAP) |
+                       (1 << CP0C3_BP) | (1 << CP0C3_BI) |
                        (2 << CP0C3_ISA) | (1 << CP0C3_ULRI) |
                        (1 << CP0C3_RXI) | (1U << CP0C3_M),
         .CP0_Config4 = MIPS_CONFIG4 | (0xfc << CP0C4_KScrExist) |
                        (3 << CP0C4_IE) | (1U << CP0C4_M),
         .CP0_Config5 = MIPS_CONFIG5 | (1 << CP0C5_XNP) | (1 << CP0C5_LLB),
-        .CP0_Config5_rw_bitmask = (1 << CP0C5_SBRI) | (1 << CP0C5_FRE) |
-                                  (1 << CP0C5_UFE),
+        .CP0_Config5_rw_bitmask = (1 << CP0C5_MSAEn) | (1 << CP0C5_UFE) |
+                                  (1 << CP0C5_FRE) | (1 << CP0C5_SBRI),
         .CP0_LLAddr_rw_bitmask = 0,
         .CP0_LLAddr_shift = 0,
         .SYNCI_Step = 32,
@@ -499,6 +500,7 @@ const mips_def_t mips_defs[] =
                     (1 << FCR0_S) | (0x00 << FCR0_PRID) | (0x0 << FCR0_REV),
         .CP1_fcr31 = (1 << FCR31_ABS2008) | (1 << FCR31_NAN2008),
         .CP1_fcr31_rw_bitmask = 0x0103FFFF,
+        .MSAIR = 0x03 << MSAIR_ProcID,
         .SEGBITS = 32,
         .PABITS = 32,
         .insn_flags = CPU_MIPS32R6 | ASE_MICROMIPS,
-- 
2.34.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2 7/8] target/mips: Enable MSA ASE for mips32r6-generic
  2024-10-18 13:20 [PATCH v2 7/8] target/mips: Enable MSA ASE for mips32r6-generic Aleksandar Rakic
@ 2024-10-19  7:46 ` Aleksandar Rikalo
  2024-10-25 19:18 ` Philippe Mathieu-Daudé
  1 sibling, 0 replies; 3+ messages in thread
From: Aleksandar Rikalo @ 2024-10-19  7:46 UTC (permalink / raw)
  To: Aleksandar Rakic
  Cc: qemu-devel@nongnu.org, Djordje Todorovic, cfu@mips.com,
	peter.maydell@linaro.org

[-- Attachment #1: Type: text/plain, Size: 510 bytes --]

>
> Enable MSA ASE for mips32r6-generic CPU.
>
> Cherry-picked 0186e83a0613e90aff6d4c12c91cdb080d695d37
> from https://github.com/MIPS/gnutools-qemu
>
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Signed-off-by: Faraz Shahbazker <fshahbazker@wavecomp.com>
> Signed-off-by: Aleksandar Rakic <aleksandar.rakic@htecgroup.com>
> ---
>  target/mips/cpu-defs.c.inc | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>

Reviewed-by: Aleksandar Rikalo <arikalo@gmail.com>

-- Aleksandar

[-- Attachment #2: Type: text/html, Size: 1114 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2 7/8] target/mips: Enable MSA ASE for mips32r6-generic
  2024-10-18 13:20 [PATCH v2 7/8] target/mips: Enable MSA ASE for mips32r6-generic Aleksandar Rakic
  2024-10-19  7:46 ` Aleksandar Rikalo
@ 2024-10-25 19:18 ` Philippe Mathieu-Daudé
  1 sibling, 0 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-10-25 19:18 UTC (permalink / raw)
  To: Aleksandar Rakic, qemu-devel@nongnu.org
  Cc: Djordje Todorovic, cfu@mips.com, arikalo@gmail.com,
	peter.maydell@linaro.org

On 18/10/24 10:20, Aleksandar Rakic wrote:
> Enable MSA ASE for mips32r6-generic CPU.

Commit 4b3bcd016d8 added this comment:

         /* A generic CPU supporting MIPS32 Release 6 ISA.
            FIXME: Support IEEE 754-2008 FP.
                   Eventually this should be replaced by a
                   real CPU model. */
         .name = "mips32r6-generic",

I'd rather we model a real mips32r6 core. Or for generic models
enable a feature using a CLI flag, i.e.:
   -cpu mips32r6-generic,+msa / -cpu mips32r6-generic,msa=on

But this would need quite some rework.

> Cherry-picked 0186e83a0613e90aff6d4c12c91cdb080d695d37
> from https://github.com/MIPS/gnutools-qemu
> 
> Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
> Signed-off-by: Faraz Shahbazker <fshahbazker@wavecomp.com>
> Signed-off-by: Aleksandar Rakic <aleksandar.rakic@htecgroup.com>
> ---
>   target/mips/cpu-defs.c.inc | 8 +++++---
>   1 file changed, 5 insertions(+), 3 deletions(-)

Patch queued.


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-10-25 19:19 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-18 13:20 [PATCH v2 7/8] target/mips: Enable MSA ASE for mips32r6-generic Aleksandar Rakic
2024-10-19  7:46 ` Aleksandar Rikalo
2024-10-25 19:18 ` Philippe Mathieu-Daudé

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).