qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 2/6] target/loongarch: Add loongarch32 cpu la132


From: WANG Xuerui
Subject: Re: [PATCH v3 2/6] target/loongarch: Add loongarch32 cpu la132
Date: Mon, 7 Aug 2023 17:54:46 +0800
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.14.0

Hi,

On 2023/8/7 17:45, Jiajie Chen wrote:
Add la132 as a loongarch32 cpu type and allow virt machine to be used
with la132 instead of la464.

Signed-off-by: Jiajie Chen <c@jia.je>
---
  hw/loongarch/virt.c    |  5 -----
  target/loongarch/cpu.c | 41 +++++++++++++++++++++++++++++++++++++++++
  target/loongarch/cpu.h | 11 +++++++++++
  3 files changed, 52 insertions(+), 5 deletions(-)

diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c
index e19b042ce8..af15bf5aaa 100644
--- a/hw/loongarch/virt.c
+++ b/hw/loongarch/virt.c
@@ -798,11 +798,6 @@ static void loongarch_init(MachineState *machine)
          cpu_model = LOONGARCH_CPU_TYPE_NAME("la464");
      }
- if (!strstr(cpu_model, "la464")) {
-        error_report("LoongArch/TCG needs cpu type la464");
-        exit(1);
-    }
-
      if (ram_size < 1 * GiB) {
          error_report("ram_size must be greater than 1G.");
          exit(1);
diff --git a/target/loongarch/cpu.c b/target/loongarch/cpu.c
index ad93ecac92..d31efe86da 100644
--- a/target/loongarch/cpu.c
+++ b/target/loongarch/cpu.c
@@ -362,6 +362,8 @@ static void loongarch_la464_initfn(Object *obj)
      CPULoongArchState *env = &cpu->env;
      int i;
+ env->mode = LA64;
+
      for (i = 0; i < 21; i++) {
          env->cpucfg[i] = 0x0;
      }
@@ -439,6 +441,20 @@ static void loongarch_la464_initfn(Object *obj)
      env->CSR_ASID = FIELD_DP64(0, CSR_ASID, ASIDBITS, 0xa);
  }
+static void loongarch_la132_initfn(Object *obj)
+{
+    LoongArchCPU *cpu = LOONGARCH_CPU(obj);
+    CPULoongArchState *env = &cpu->env;
+
+    env->mode = LA32;
+
+    cpu->dtb_compatible = "loongarch,Loongson-3C103";

"3C103"? I assume you want something like "1C300" or "1Axxx", at least something prefixed with "1"...



reply via email to

[Prev in Thread] Current Thread [Next in Thread]