[Qemu-devel] [PATCH RFC v6 00/12] Add RX archtecture support

Yoshinori Sato posted 12 patches 5 years ago
Test docker-mingw@fedora passed
Test docker-clang@ubuntu failed
Test checkpatch failed
Test asan passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190401140318.80498-1-ysato@users.sourceforge.jp
Maintainers: Alistair Francis <alistair@alistair23.me>, Paolo Bonzini <pbonzini@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>
There is a newer version of this series
configure                      |    8 +
default-configs/rx-softmmu.mak |    7 +
include/disas/bfd.h            |    5 +
include/hw/char/renesas_sci.h  |   45 +
include/hw/intc/rx_icu.h       |   49 +
include/hw/registerfields.h    |   10 +
include/hw/rx/rx.h             |    7 +
include/hw/rx/rx62n.h          |   54 +
include/hw/timer/renesas_cmt.h |   33 +
include/hw/timer/renesas_tmr.h |   46 +
include/sysemu/arch_init.h     |    1 +
target/rx/cpu-qom.h            |   52 +
target/rx/cpu.h                |  197 ++++
target/rx/helper.h             |   31 +
arch_init.c                    |    2 +
hw/char/renesas_sci.c          |  335 ++++++
hw/intc/rx_icu.c               |  373 ++++++
hw/rx/rx62n.c                  |  226 ++++
hw/rx/rxqemu.c                 |  100 ++
hw/timer/renesas_cmt.c         |  264 +++++
hw/timer/renesas_tmr.c         |  438 ++++++++
target/rx/cpu.c                |  232 ++++
target/rx/disas.c              | 1481 ++++++++++++++++++++++++
target/rx/gdbstub.c            |  112 ++
target/rx/helper.c             |  148 +++
target/rx/monitor.c            |   38 +
target/rx/op_helper.c          |  481 ++++++++
target/rx/translate.c          | 2433 ++++++++++++++++++++++++++++++++++++++++
MAINTAINERS                    |   19 +
hw/Kconfig                     |    1 +
hw/char/Kconfig                |    3 +
hw/char/Makefile.objs          |    2 +-
hw/intc/Makefile.objs          |    1 +
hw/rx/Kconfig                  |    2 +
hw/rx/Makefile.objs            |    1 +
hw/timer/Kconfig               |    6 +
hw/timer/Makefile.objs         |    3 +
target/rx/Makefile.objs        |   11 +
target/rx/insns.decode         |  617 ++++++++++
39 files changed, 7873 insertions(+), 1 deletion(-)
create mode 100644 default-configs/rx-softmmu.mak
create mode 100644 include/hw/char/renesas_sci.h
create mode 100644 include/hw/intc/rx_icu.h
create mode 100644 include/hw/rx/rx.h
create mode 100644 include/hw/rx/rx62n.h
create mode 100644 include/hw/timer/renesas_cmt.h
create mode 100644 include/hw/timer/renesas_tmr.h
create mode 100644 target/rx/cpu-qom.h
create mode 100644 target/rx/cpu.h
create mode 100644 target/rx/helper.h
create mode 100644 hw/char/renesas_sci.c
create mode 100644 hw/intc/rx_icu.c
create mode 100644 hw/rx/rx62n.c
create mode 100644 hw/rx/rxqemu.c
create mode 100644 hw/timer/renesas_cmt.c
create mode 100644 hw/timer/renesas_tmr.c
create mode 100644 target/rx/cpu.c
create mode 100644 target/rx/disas.c
create mode 100644 target/rx/gdbstub.c
create mode 100644 target/rx/helper.c
create mode 100644 target/rx/monitor.c
create mode 100644 target/rx/op_helper.c
create mode 100644 target/rx/translate.c
create mode 100644 hw/rx/Kconfig
create mode 100644 hw/rx/Makefile.objs
create mode 100644 target/rx/Makefile.objs
create mode 100644 target/rx/insns.decode
[Qemu-devel] [PATCH RFC v6 00/12] Add RX archtecture support
Posted by Yoshinori Sato 5 years ago
Hello.
This patch series is added Renesas RX target emulation.

Update review comments.

My git repository is bellow.
git://git.pf.osdn.net/gitroot/y/ys/ysato/qemu.git

Testing binaries bellow.
u-boot
Download - https://osdn.net/users/ysato/pf/qemu/dl/u-boot.bin.gz

starting
$ gzip -d u-boot.bin.gz
$ qemu-system-rx -bios u-boot.bin

linux and pico-root (only sash)
Download - https://osdn.net/users/ysato/pf/qemu/dl/zImage (kernel)
           https://osdn.net/users/ysato/pf/qemu/dl/rx-qemu.dtb (DeviceTree)

starting
$ qemu-system-rx -kernel zImage -dtb rx-qemu.dtb -append "earlycon"

Changes v5.
Fix undocumented instruction behavior.
(PUSHM/POPM/RTSD/MVFC/MVTC)
More useful messages for invalid operands.

Yoshinori Sato (12):
  target/rx: TCG translation
  target/rx: TCG helper
  target/rx: CPU definition
  target/rx: RX disassembler
  target/rx: Miscellaneous files
  hw/intc: RX62N interrupt controller (ICUa)
  hw/timer: RX62N internal timer modules
  hw/char: RX62N serical communication interface (SCI)
  hw/rx: RX Target hardware definition
  Add rx-softmmu
  MAINTAINERS: Add RX
  include/hw/regiserfields.h: Add 8bit and 16bit registers

 configure                      |    8 +
 default-configs/rx-softmmu.mak |    7 +
 include/disas/bfd.h            |    5 +
 include/hw/char/renesas_sci.h  |   45 +
 include/hw/intc/rx_icu.h       |   49 +
 include/hw/registerfields.h    |   10 +
 include/hw/rx/rx.h             |    7 +
 include/hw/rx/rx62n.h          |   54 +
 include/hw/timer/renesas_cmt.h |   33 +
 include/hw/timer/renesas_tmr.h |   46 +
 include/sysemu/arch_init.h     |    1 +
 target/rx/cpu-qom.h            |   52 +
 target/rx/cpu.h                |  197 ++++
 target/rx/helper.h             |   31 +
 arch_init.c                    |    2 +
 hw/char/renesas_sci.c          |  335 ++++++
 hw/intc/rx_icu.c               |  373 ++++++
 hw/rx/rx62n.c                  |  226 ++++
 hw/rx/rxqemu.c                 |  100 ++
 hw/timer/renesas_cmt.c         |  264 +++++
 hw/timer/renesas_tmr.c         |  438 ++++++++
 target/rx/cpu.c                |  232 ++++
 target/rx/disas.c              | 1481 ++++++++++++++++++++++++
 target/rx/gdbstub.c            |  112 ++
 target/rx/helper.c             |  148 +++
 target/rx/monitor.c            |   38 +
 target/rx/op_helper.c          |  481 ++++++++
 target/rx/translate.c          | 2433 ++++++++++++++++++++++++++++++++++++++++
 MAINTAINERS                    |   19 +
 hw/Kconfig                     |    1 +
 hw/char/Kconfig                |    3 +
 hw/char/Makefile.objs          |    2 +-
 hw/intc/Makefile.objs          |    1 +
 hw/rx/Kconfig                  |    2 +
 hw/rx/Makefile.objs            |    1 +
 hw/timer/Kconfig               |    6 +
 hw/timer/Makefile.objs         |    3 +
 target/rx/Makefile.objs        |   11 +
 target/rx/insns.decode         |  617 ++++++++++
 39 files changed, 7873 insertions(+), 1 deletion(-)
 create mode 100644 default-configs/rx-softmmu.mak
 create mode 100644 include/hw/char/renesas_sci.h
 create mode 100644 include/hw/intc/rx_icu.h
 create mode 100644 include/hw/rx/rx.h
 create mode 100644 include/hw/rx/rx62n.h
 create mode 100644 include/hw/timer/renesas_cmt.h
 create mode 100644 include/hw/timer/renesas_tmr.h
 create mode 100644 target/rx/cpu-qom.h
 create mode 100644 target/rx/cpu.h
 create mode 100644 target/rx/helper.h
 create mode 100644 hw/char/renesas_sci.c
 create mode 100644 hw/intc/rx_icu.c
 create mode 100644 hw/rx/rx62n.c
 create mode 100644 hw/rx/rxqemu.c
 create mode 100644 hw/timer/renesas_cmt.c
 create mode 100644 hw/timer/renesas_tmr.c
 create mode 100644 target/rx/cpu.c
 create mode 100644 target/rx/disas.c
 create mode 100644 target/rx/gdbstub.c
 create mode 100644 target/rx/helper.c
 create mode 100644 target/rx/monitor.c
 create mode 100644 target/rx/op_helper.c
 create mode 100644 target/rx/translate.c
 create mode 100644 hw/rx/Kconfig
 create mode 100644 hw/rx/Makefile.objs
 create mode 100644 target/rx/Makefile.objs
 create mode 100644 target/rx/insns.decode

-- 
2.11.0


Re: [Qemu-devel] [PATCH RFC v6 00/12] Add RX archtecture support
Posted by no-reply@patchew.org 5 years ago
Patchew URL: https://patchew.org/QEMU/20190401140318.80498-1-ysato@users.sourceforge.jp/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Message-id: 20190401140318.80498-1-ysato@users.sourceforge.jp
Subject: [Qemu-devel] [PATCH RFC v6 00/12] Add RX archtecture support
Type: series

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 * [new tag]               patchew/20190401133659.20421-1-vkuznets@redhat.com -> patchew/20190401133659.20421-1-vkuznets@redhat.com
Switched to a new branch 'test'
58b27a7511 include/hw/regiserfields.h: Add 8bit and 16bit registers
98fc3a853f MAINTAINERS: Add RX
0f77ab8ab0 Add rx-softmmu
798fd1a15d hw/rx: RX Target hardware definition
ae1c8724d6 hw/char: RX62N serical communication interface (SCI)
8e6336ccb8 hw/timer: RX62N internal timer modules
55c629b885 hw/intc: RX62N interrupt controller (ICUa)
27c4f5946b target/rx: Miscellaneous files
17d81414eb target/rx: RX disassembler
f56bc24b9a target/rx: CPU definition
ae8de44704 target/rx: TCG helper
fa378cbe12 target/rx: TCG translation

=== OUTPUT BEGIN ===
1/12 Checking commit fa378cbe1265 (target/rx: TCG translation)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#15: 
new file mode 100644

ERROR: spaces required around that '<' (ctx:WxV)
#1297: FILE: target/rx/translate.c:655:
+    while (r <= a->rd2 && r <16) {
                             ^

ERROR: space required before the open parenthesis '('
#1464: FILE: target/rx/translate.c:822:
+    while(dst <= a->rd2 && dst < 16) {

total: 2 errors, 1 warnings, 3050 lines checked

Patch 1/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

2/12 Checking commit ae8de447046b (target/rx: TCG helper)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#11: 
new file mode 100644

total: 0 errors, 1 warnings, 660 lines checked

Patch 2/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
3/12 Checking commit f56bc24b9a90 (target/rx: CPU definition)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#11: 
new file mode 100644

total: 0 errors, 1 warnings, 481 lines checked

Patch 3/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
4/12 Checking commit 17d81414eba8 (target/rx: RX disassembler)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#34: 
new file mode 100644

total: 0 errors, 1 warnings, 1498 lines checked

Patch 4/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
5/12 Checking commit 27c4f5946b89 (target/rx: Miscellaneous files)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#11: 
new file mode 100644

total: 0 errors, 1 warnings, 161 lines checked

Patch 5/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
6/12 Checking commit 55c629b885c1 (hw/intc: RX62N interrupt controller (ICUa))
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#24: 
new file mode 100644

total: 0 errors, 1 warnings, 426 lines checked

Patch 6/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
7/12 Checking commit 8e6336ccb848 (hw/timer: RX62N internal timer modules)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#45: 
new file mode 100644

total: 0 errors, 1 warnings, 799 lines checked

Patch 7/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
8/12 Checking commit ae1c8724d653 (hw/char: RX62N serical communication interface (SCI))
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#39: 
new file mode 100644

total: 0 errors, 1 warnings, 394 lines checked

Patch 8/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
9/12 Checking commit 798fd1a15d95 (hw/rx: RX Target hardware definition)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#14: 
new file mode 100644

total: 0 errors, 1 warnings, 390 lines checked

Patch 9/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
10/12 Checking commit 0f77ab8ab0c7 (Add rx-softmmu)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#50: 
new file mode 100644

total: 0 errors, 1 warnings, 49 lines checked

Patch 10/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
11/12 Checking commit 98fc3a853fd0 (MAINTAINERS: Add RX)
12/12 Checking commit 58b27a7511d5 (include/hw/regiserfields.h: Add 8bit and 16bit registers)
ERROR: Macros with multiple statements should be enclosed in a do - while loop
#21: FILE: include/hw/registerfields.h:25:
+#define REG8(reg, addr)                                                  \
+    enum { A_ ## reg = (addr) };                                          \
+    enum { R_ ## reg = (addr) };

ERROR: Macros with multiple statements should be enclosed in a do - while loop
#25: FILE: include/hw/registerfields.h:29:
+#define REG16(reg, addr)                                                  \
+    enum { A_ ## reg = (addr) };                                          \
+    enum { R_ ## reg = (addr) / 2 };

total: 2 errors, 0 warnings, 22 lines checked

Patch 12/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20190401140318.80498-1-ysato@users.sourceforge.jp/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Re: [Qemu-devel] [PATCH RFC v6 00/12] Add RX archtecture support
Posted by Philippe Mathieu-Daudé 5 years ago
Hi Yoshinori,

On 4/1/19 4:03 PM, Yoshinori Sato wrote:
> Hello.
> This patch series is added Renesas RX target emulation.
> 
> Update review comments.
> 
> My git repository is bellow.
> git://git.pf.osdn.net/gitroot/y/ys/ysato/qemu.git
> 
> Testing binaries bellow.
> u-boot
> Download - https://osdn.net/users/ysato/pf/qemu/dl/u-boot.bin.gz
> 
> starting
> $ gzip -d u-boot.bin.gz
> $ qemu-system-rx -bios u-boot.bin
> 
> linux and pico-root (only sash)
> Download - https://osdn.net/users/ysato/pf/qemu/dl/zImage (kernel)
>            https://osdn.net/users/ysato/pf/qemu/dl/rx-qemu.dtb (DeviceTree)
> 
> starting
> $ qemu-system-rx -kernel zImage -dtb rx-qemu.dtb -append "earlycon"
> 
> Changes v5.
> Fix undocumented instruction behavior.
> (PUSHM/POPM/RTSD/MVFC/MVTC)
> More useful messages for invalid operands.
[...]
Please don't post your series iterations are as reply to previous
series, it makes harder to find them.

FYI I use Thunderbird as email client, with mails grouped by thread.
Since you sent v4 as reply to v3, and similar v5 -> v4 and this v6 ->
v5, my client kept all subsequent activity folded under the "v3" cover.
Then I missed to review it.

Regards,

Phil.

Re: [Qemu-devel] [PATCH RFC v6 00/12] Add RX archtecture support
Posted by Yoshinori Sato 5 years ago
On Thu, 11 Apr 2019 19:15:59 +0900,
Philippe Mathieu-Daudé wrote:
> 
> Hi Yoshinori,
> 
> On 4/1/19 4:03 PM, Yoshinori Sato wrote:
> > Hello.
> > This patch series is added Renesas RX target emulation.
> > 
> > Update review comments.
> > 
> > My git repository is bellow.
> > git://git.pf.osdn.net/gitroot/y/ys/ysato/qemu.git
> > 
> > Testing binaries bellow.
> > u-boot
> > Download - https://osdn.net/users/ysato/pf/qemu/dl/u-boot.bin.gz
> > 
> > starting
> > $ gzip -d u-boot.bin.gz
> > $ qemu-system-rx -bios u-boot.bin
> > 
> > linux and pico-root (only sash)
> > Download - https://osdn.net/users/ysato/pf/qemu/dl/zImage (kernel)
> >            https://osdn.net/users/ysato/pf/qemu/dl/rx-qemu.dtb (DeviceTree)
> > 
> > starting
> > $ qemu-system-rx -kernel zImage -dtb rx-qemu.dtb -append "earlycon"
> > 
> > Changes v5.
> > Fix undocumented instruction behavior.
> > (PUSHM/POPM/RTSD/MVFC/MVTC)
> > More useful messages for invalid operands.
> [...]
> Please don't post your series iterations are as reply to previous
> series, it makes harder to find them.
> 
> FYI I use Thunderbird as email client, with mails grouped by thread.
> Since you sent v4 as reply to v3, and similar v5 -> v4 and this v6 ->
> v5, my client kept all subsequent activity folded under the "v3" cover.
> Then I missed to review it.

Oh. sorry.
Make a new thread when sending next time.

> Regards,
> 
> Phil.
> 

-- 
Yosinori Sato