[Qemu-devel] [PATCH v16 16/23] Add rx-softmmu

Richard Henderson posted 23 patches 6 years, 8 months ago
Maintainers: Thomas Huth <thuth@redhat.com>, Markus Armbruster <armbru@redhat.com>, Yoshinori Sato <ysato@users.sourceforge.jp>, Laurent Vivier <lvivier@redhat.com>, Eric Blake <eblake@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>
[Qemu-devel] [PATCH v16 16/23] Add rx-softmmu
Posted by Richard Henderson 6 years, 8 months ago
From: Yoshinori Sato <ysato@users.sourceforge.jp>

Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Message-Id: <20190516055244.95559-10-ysato@users.sourceforge.jp>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 include/sysemu/arch_init.h     | 1 +
 arch_init.c                    | 2 ++
 configure                      | 8 ++++++++
 default-configs/rx-softmmu.mak | 3 +++
 hw/Kconfig                     | 1 +
 5 files changed, 15 insertions(+)
 create mode 100644 default-configs/rx-softmmu.mak

diff --git a/include/sysemu/arch_init.h b/include/sysemu/arch_init.h
index 10cbafe970..3f4f844f7b 100644
--- a/include/sysemu/arch_init.h
+++ b/include/sysemu/arch_init.h
@@ -25,6 +25,7 @@ enum {
     QEMU_ARCH_NIOS2 = (1 << 17),
     QEMU_ARCH_HPPA = (1 << 18),
     QEMU_ARCH_RISCV = (1 << 19),
+    QEMU_ARCH_RX = (1 << 20),
 };
 
 extern const uint32_t arch_type;
diff --git a/arch_init.c b/arch_init.c
index f4f3f610c8..cc25ddd7ca 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -74,6 +74,8 @@ int graphic_depth = 32;
 #define QEMU_ARCH QEMU_ARCH_PPC
 #elif defined(TARGET_RISCV)
 #define QEMU_ARCH QEMU_ARCH_RISCV
+#elif defined(TARGET_RX)
+#define QEMU_ARCH QEMU_ARCH_RX
 #elif defined(TARGET_S390X)
 #define QEMU_ARCH QEMU_ARCH_S390X
 #elif defined(TARGET_SH4)
diff --git a/configure b/configure
index 6cdcfb2dc3..7e5477e487 100755
--- a/configure
+++ b/configure
@@ -7605,6 +7605,11 @@ case "$target_name" in
     gdb_xml_files="riscv-64bit-cpu.xml riscv-64bit-fpu.xml riscv-64bit-csr.xml"
     target_compiler=$cross_cc_riscv64
   ;;
+  rx)
+    TARGET_ARCH=rx
+    bflt="yes"
+    target_compiler=$cross_cc_rx
+  ;;
   sh4|sh4eb)
     TARGET_ARCH=sh4
     bflt="yes"
@@ -7825,6 +7830,9 @@ for i in $ARCH $TARGET_BASE_ARCH ; do
   riscv*)
     disas_config "RISCV"
   ;;
+  rx)
+    disas_config "RX"
+  ;;
   s390*)
     disas_config "S390"
   ;;
diff --git a/default-configs/rx-softmmu.mak b/default-configs/rx-softmmu.mak
new file mode 100644
index 0000000000..a3eecefb11
--- /dev/null
+++ b/default-configs/rx-softmmu.mak
@@ -0,0 +1,3 @@
+# Default configuration for rx-softmmu
+
+CONFIG_RX_VIRT=y
diff --git a/hw/Kconfig b/hw/Kconfig
index 195f541e50..b0c7221240 100644
--- a/hw/Kconfig
+++ b/hw/Kconfig
@@ -54,6 +54,7 @@ source nios2/Kconfig
 source openrisc/Kconfig
 source ppc/Kconfig
 source riscv/Kconfig
+source rx/Kconfig
 source s390x/Kconfig
 source sh4/Kconfig
 source sparc/Kconfig
-- 
2.17.1


Re: [Qemu-devel] [PATCH v16 16/23] Add rx-softmmu
Posted by Philippe Mathieu-Daudé 6 years, 8 months ago
Hi Richard,

On 5/31/19 3:43 PM, Richard Henderson wrote:
> From: Yoshinori Sato <ysato@users.sourceforge.jp>
> 
> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
> Message-Id: <20190516055244.95559-10-ysato@users.sourceforge.jp>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  include/sysemu/arch_init.h     | 1 +
>  arch_init.c                    | 2 ++
>  configure                      | 8 ++++++++
>  default-configs/rx-softmmu.mak | 3 +++
>  hw/Kconfig                     | 1 +
>  5 files changed, 15 insertions(+)
>  create mode 100644 default-configs/rx-softmmu.mak
> 
> diff --git a/include/sysemu/arch_init.h b/include/sysemu/arch_init.h
> index 10cbafe970..3f4f844f7b 100644
> --- a/include/sysemu/arch_init.h
> +++ b/include/sysemu/arch_init.h
> @@ -25,6 +25,7 @@ enum {
>      QEMU_ARCH_NIOS2 = (1 << 17),
>      QEMU_ARCH_HPPA = (1 << 18),
>      QEMU_ARCH_RISCV = (1 << 19),
> +    QEMU_ARCH_RX = (1 << 20),
>  };
>  
>  extern const uint32_t arch_type;
> diff --git a/arch_init.c b/arch_init.c
> index f4f3f610c8..cc25ddd7ca 100644
> --- a/arch_init.c
> +++ b/arch_init.c
> @@ -74,6 +74,8 @@ int graphic_depth = 32;
>  #define QEMU_ARCH QEMU_ARCH_PPC
>  #elif defined(TARGET_RISCV)
>  #define QEMU_ARCH QEMU_ARCH_RISCV
> +#elif defined(TARGET_RX)
> +#define QEMU_ARCH QEMU_ARCH_RX
>  #elif defined(TARGET_S390X)
>  #define QEMU_ARCH QEMU_ARCH_S390X
>  #elif defined(TARGET_SH4)
> diff --git a/configure b/configure
> index 6cdcfb2dc3..7e5477e487 100755
> --- a/configure
> +++ b/configure
> @@ -7605,6 +7605,11 @@ case "$target_name" in
>      gdb_xml_files="riscv-64bit-cpu.xml riscv-64bit-fpu.xml riscv-64bit-csr.xml"
>      target_compiler=$cross_cc_riscv64
>    ;;
> +  rx)
> +    TARGET_ARCH=rx
> +    bflt="yes"
> +    target_compiler=$cross_cc_rx
> +  ;;
>    sh4|sh4eb)
>      TARGET_ARCH=sh4
>      bflt="yes"
> @@ -7825,6 +7830,9 @@ for i in $ARCH $TARGET_BASE_ARCH ; do
>    riscv*)
>      disas_config "RISCV"
>    ;;
> +  rx)
> +    disas_config "RX"
> +  ;;
>    s390*)
>      disas_config "S390"
>    ;;
> diff --git a/default-configs/rx-softmmu.mak b/default-configs/rx-softmmu.mak
> new file mode 100644
> index 0000000000..a3eecefb11
> --- /dev/null
> +++ b/default-configs/rx-softmmu.mak
> @@ -0,0 +1,3 @@
> +# Default configuration for rx-softmmu
> +
> +CONFIG_RX_VIRT=y
> diff --git a/hw/Kconfig b/hw/Kconfig
> index 195f541e50..b0c7221240 100644
> --- a/hw/Kconfig
> +++ b/hw/Kconfig
> @@ -54,6 +54,7 @@ source nios2/Kconfig
>  source openrisc/Kconfig
>  source ppc/Kconfig
>  source riscv/Kconfig
> +source rx/Kconfig
>  source s390x/Kconfig
>  source sh4/Kconfig
>  source sparc/Kconfig
> 

Please squash in:

-- >8 --
--- a/include/exec/poison.h
+++ b/include/exec/poison.h
@@ -26,6 +26,7 @@
 #pragma GCC poison TARGET_PPC
 #pragma GCC poison TARGET_PPC64
 #pragma GCC poison TARGET_ABI32
+#pragma GCC poison TARGET_RX
 #pragma GCC poison TARGET_S390X
 #pragma GCC poison TARGET_SH4
 #pragma GCC poison TARGET_SPARC
---

Thanks!

Phil.

Re: [Qemu-devel] [PATCH v16 16/23] Add rx-softmmu
Posted by Richard Henderson 6 years, 8 months ago
On 6/4/19 1:38 AM, Philippe Mathieu-Daudé wrote:
> Hi Richard,
> 
> On 5/31/19 3:43 PM, Richard Henderson wrote:
>> From: Yoshinori Sato <ysato@users.sourceforge.jp>
>>
>> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
>> Message-Id: <20190516055244.95559-10-ysato@users.sourceforge.jp>
>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
>> ---
>>  include/sysemu/arch_init.h     | 1 +
>>  arch_init.c                    | 2 ++
>>  configure                      | 8 ++++++++
>>  default-configs/rx-softmmu.mak | 3 +++
>>  hw/Kconfig                     | 1 +
>>  5 files changed, 15 insertions(+)
>>  create mode 100644 default-configs/rx-softmmu.mak
>>
>> diff --git a/include/sysemu/arch_init.h b/include/sysemu/arch_init.h
>> index 10cbafe970..3f4f844f7b 100644
>> --- a/include/sysemu/arch_init.h
>> +++ b/include/sysemu/arch_init.h
>> @@ -25,6 +25,7 @@ enum {
>>      QEMU_ARCH_NIOS2 = (1 << 17),
>>      QEMU_ARCH_HPPA = (1 << 18),
>>      QEMU_ARCH_RISCV = (1 << 19),
>> +    QEMU_ARCH_RX = (1 << 20),
>>  };
>>  
>>  extern const uint32_t arch_type;
>> diff --git a/arch_init.c b/arch_init.c
>> index f4f3f610c8..cc25ddd7ca 100644
>> --- a/arch_init.c
>> +++ b/arch_init.c
>> @@ -74,6 +74,8 @@ int graphic_depth = 32;
>>  #define QEMU_ARCH QEMU_ARCH_PPC
>>  #elif defined(TARGET_RISCV)
>>  #define QEMU_ARCH QEMU_ARCH_RISCV
>> +#elif defined(TARGET_RX)
>> +#define QEMU_ARCH QEMU_ARCH_RX
>>  #elif defined(TARGET_S390X)
>>  #define QEMU_ARCH QEMU_ARCH_S390X
>>  #elif defined(TARGET_SH4)
>> diff --git a/configure b/configure
>> index 6cdcfb2dc3..7e5477e487 100755
>> --- a/configure
>> +++ b/configure
>> @@ -7605,6 +7605,11 @@ case "$target_name" in
>>      gdb_xml_files="riscv-64bit-cpu.xml riscv-64bit-fpu.xml riscv-64bit-csr.xml"
>>      target_compiler=$cross_cc_riscv64
>>    ;;
>> +  rx)
>> +    TARGET_ARCH=rx
>> +    bflt="yes"
>> +    target_compiler=$cross_cc_rx
>> +  ;;
>>    sh4|sh4eb)
>>      TARGET_ARCH=sh4
>>      bflt="yes"
>> @@ -7825,6 +7830,9 @@ for i in $ARCH $TARGET_BASE_ARCH ; do
>>    riscv*)
>>      disas_config "RISCV"
>>    ;;
>> +  rx)
>> +    disas_config "RX"
>> +  ;;
>>    s390*)
>>      disas_config "S390"
>>    ;;
>> diff --git a/default-configs/rx-softmmu.mak b/default-configs/rx-softmmu.mak
>> new file mode 100644
>> index 0000000000..a3eecefb11
>> --- /dev/null
>> +++ b/default-configs/rx-softmmu.mak
>> @@ -0,0 +1,3 @@
>> +# Default configuration for rx-softmmu
>> +
>> +CONFIG_RX_VIRT=y
>> diff --git a/hw/Kconfig b/hw/Kconfig
>> index 195f541e50..b0c7221240 100644
>> --- a/hw/Kconfig
>> +++ b/hw/Kconfig
>> @@ -54,6 +54,7 @@ source nios2/Kconfig
>>  source openrisc/Kconfig
>>  source ppc/Kconfig
>>  source riscv/Kconfig
>> +source rx/Kconfig
>>  source s390x/Kconfig
>>  source sh4/Kconfig
>>  source sparc/Kconfig
>>
> 
> Please squash in:
> 
> -- >8 --
> --- a/include/exec/poison.h
> +++ b/include/exec/poison.h
> @@ -26,6 +26,7 @@
>  #pragma GCC poison TARGET_PPC
>  #pragma GCC poison TARGET_PPC64
>  #pragma GCC poison TARGET_ABI32
> +#pragma GCC poison TARGET_RX
>  #pragma GCC poison TARGET_S390X
>  #pragma GCC poison TARGET_SH4
>  #pragma GCC poison TARGET_SPARC
> ---

Thanks, good catch.


r~