From: Aleksandar Markovic <aleksandar.markovic@rt-rk.com>
To: qemu-devel@nongnu.org
Cc: Aleksandar Markovic <amarkovic@wavecomp.com>
Subject: [PATCH rc4 00/29] target/avr merger
Date: Fri, 31 Jan 2020 01:02:44 +0100 [thread overview]
Message-ID: <1580428993-4767-1-git-send-email-aleksandar.markovic@rt-rk.com> (raw)
From: Aleksandar Markovic <amarkovic@wavecomp.com>
This is the AVR port from Michael, release (merge) candidate 4.
The series can be found also in this repository:
https://github.com/AMarkovic/qemu-avr-merger-rc4
History:
Since v3:
- Removed a patch on load_elf() modification, since it has been merged
- Removed references to CONFIG_USER_ONLY and provided a guard against
building lunux user mode for AVR
- Removed all references to 'Atmel' (including file renames)
- Rebased the code (there was common interface change regarding 'props')
- Various corrections of commit messages
- A bit field for AVRFeatures is nor 64 bit long
- Other minor fixes
Since v2:
- First patch is split into six smaller logical units (net result
remains the same)
- Patch "hw/core/loader: Let load_elf populate the processor-specific
flags" was redone to reflect the original intent that was lost in
transalation between multiple autors
- Patch "hw/avr: Add helper to load raw/ELF firmware binaries" was
corrected only in one line to rectify type of "e_flags"
- Patch "target/avr: Add section about AVR into QEMU documentation"
- Spurious <message-Id:> elements were removed
- The series was rebased to the latest code
Since v1:
- Addressed Thomas comments
- Fixed a non-critical bug in ATmega (incorrect SRAM base address)
- Added ELF parsing requested by Aleksandar
- Dropped default machine (as with the ARM port)
Michael Rolnik (25):
target/avr: Add basic parameters for new AVR platform
target/avr: Introduce AVR CPU class object
target/avr: Add migration support
target/avr: Add GDB support
target/avr: Introduce enumeration AVRFeature
target/avr: Add defintions of AVR core types
target/avr: Add instruction helpers
target/avr: Add instruction translation - Register definitions
target/avr: Add instruction translation - Arithmetic and Logic
Instructions
target/avr: Add instruction translation - Branch Instructions
target/avr: Add instruction translation - Data Transfer Instructions
target/avr: Add instruction translation - Bit and Bit-test
Instructions
target/avr: Add instruction translation - MCU Control Instructions
target/avr: Add instruction translation - CPU main translation
function
target/avr: Add instruction disassembly function
hw/char: Add limited support for AVR USART peripheral
hw/timer: Add limited support for AVR 16-bit timer peripheral
hw/misc: Add limited support for AVR power device
target/avr: Add section about AVR into QEMU documentation
target/avr: Register AVR support with the rest of QEMU
target/avr: Add machine none test
target/avr: Update MAINTAINERS file
target/avr: Update build system
tests/boot-serial-test: Test some Arduino boards (AVR based)
tests/acceptance: Test the Arduino MEGA2560 board
Philippe Mathieu-Daudé (4):
hw/avr: Add helper to load raw/ELF firmware binaries
hw/avr: Add some ATmega microcontrollers
hw/avr: Add some Arduino boards
.travis.yml: Run the AVR acceptance tests
.travis.yml | 2 +-
MAINTAINERS | 31 +
arch_init.c | 2 +
configure | 7 +
default-configs/avr-softmmu.mak | 5 +
gdb-xml/avr-cpu.xml | 49 +
hw/avr/Kconfig | 9 +
hw/avr/Makefile.objs | 3 +
hw/avr/arduino.c | 151 ++
hw/avr/atmega.c | 470 ++++++
hw/avr/atmega.h | 48 +
hw/avr/boot.c | 74 +
hw/avr/boot.h | 33 +
hw/char/Kconfig | 3 +
hw/char/Makefile.objs | 1 +
hw/char/avr_usart.c | 320 ++++
hw/misc/Kconfig | 3 +
hw/misc/Makefile.objs | 2 +
hw/misc/avr_power.c | 112 ++
hw/timer/Kconfig | 3 +
hw/timer/Makefile.objs | 2 +
hw/timer/avr_timer16.c | 604 ++++++++
include/disas/dis-asm.h | 19 +
include/elf.h | 2 +
include/hw/char/avr_usart.h | 93 ++
include/hw/misc/avr_power.h | 46 +
include/hw/timer/avr_timer16.h | 94 ++
include/sysemu/arch_init.h | 1 +
qapi/machine.json | 3 +-
qemu-doc.texi | 51 +
target/avr/Makefile.objs | 34 +
target/avr/cpu-param.h | 37 +
target/avr/cpu-qom.h | 54 +
target/avr/cpu.c | 818 +++++++++++
target/avr/cpu.h | 259 ++++
target/avr/disas.c | 246 ++++
target/avr/gdbstub.c | 84 ++
target/avr/helper.c | 342 +++++
target/avr/helper.h | 29 +
target/avr/insn.decode | 182 +++
target/avr/machine.c | 121 ++
target/avr/translate.c | 2997 ++++++++++++++++++++++++++++++++++++++
tests/acceptance/machine_avr6.py | 50 +
tests/qtest/Makefile.include | 2 +
tests/qtest/boot-serial-test.c | 11 +
tests/qtest/machine-none-test.c | 1 +
46 files changed, 7508 insertions(+), 2 deletions(-)
create mode 100644 default-configs/avr-softmmu.mak
create mode 100644 gdb-xml/avr-cpu.xml
create mode 100644 hw/avr/Kconfig
create mode 100644 hw/avr/Makefile.objs
create mode 100644 hw/avr/arduino.c
create mode 100644 hw/avr/atmega.c
create mode 100644 hw/avr/atmega.h
create mode 100644 hw/avr/boot.c
create mode 100644 hw/avr/boot.h
create mode 100644 hw/char/avr_usart.c
create mode 100644 hw/misc/avr_power.c
create mode 100644 hw/timer/avr_timer16.c
create mode 100644 include/hw/char/avr_usart.h
create mode 100644 include/hw/misc/avr_power.h
create mode 100644 include/hw/timer/avr_timer16.h
create mode 100644 target/avr/Makefile.objs
create mode 100644 target/avr/cpu-param.h
create mode 100644 target/avr/cpu-qom.h
create mode 100644 target/avr/cpu.c
create mode 100644 target/avr/cpu.h
create mode 100644 target/avr/disas.c
create mode 100644 target/avr/gdbstub.c
create mode 100644 target/avr/helper.c
create mode 100644 target/avr/helper.h
create mode 100644 target/avr/insn.decode
create mode 100644 target/avr/machine.c
create mode 100644 target/avr/translate.c
create mode 100644 tests/acceptance/machine_avr6.py
--
2.7.4
next reply other threads:[~2020-01-31 0:07 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-31 0:02 Aleksandar Markovic [this message]
2020-01-31 0:02 ` [PATCH rc4 01/29] target/avr: Add basic parameters for new AVR platform Aleksandar Markovic
2020-01-31 18:47 ` Aleksandar Markovic
2020-01-31 19:23 ` Aleksandar Markovic
2020-01-31 20:07 ` Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 02/29] target/avr: Introduce AVR CPU class object Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 03/29] target/avr: Add migration support Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 04/29] target/avr: Add GDB support Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 05/29] target/avr: Introduce enumeration AVRFeature Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 06/29] target/avr: Add defintions of AVR core types Aleksandar Markovic
2020-02-02 15:40 ` Joaquin de Andres
2020-02-08 7:35 ` Aleksandar Markovic
2020-02-10 7:39 ` Michael Rolnik
2020-02-21 11:03 ` Michael Rolnik
2020-02-21 15:31 ` Aleksandar Markovic
2020-02-27 8:38 ` Michael Rolnik
2020-03-06 13:34 ` Michael Rolnik
2020-06-16 8:56 ` Philippe Mathieu-Daudé
2020-06-29 9:51 ` Philippe Mathieu-Daudé
2020-01-31 0:02 ` [PATCH rc4 07/29] target/avr: Add instruction helpers Aleksandar Markovic
2020-02-01 12:27 ` Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 08/29] target/avr: Add instruction translation - Register definitions Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 09/29] target/avr: Add instruction translation - Arithmetic and Logic Instructions Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 10/29] target/avr: Add instruction translation - Branch Instructions Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 11/29] target/avr: Add instruction translation - Data Transfer Instructions Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 12/29] target/avr: Add instruction translation - Bit and Bit-test Instructions Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 13/29] target/avr: Add instruction translation - MCU Control Instructions Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 14/29] target/avr: Add instruction translation - CPU main translation function Aleksandar Markovic
2020-01-31 0:02 ` [PATCH rc4 15/29] target/avr: Add instruction disassembly function Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 16/29] hw/char: Add limited support for AVR USART peripheral Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 17/29] hw/timer: Add limited support for AVR 16-bit timer peripheral Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 18/29] hw/misc: Add limited support for AVR power device Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 19/29] target/avr: Add section about AVR into QEMU documentation Aleksandar Markovic
2020-02-01 13:19 ` Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 20/29] target/avr: Register AVR support with the rest of QEMU Aleksandar Markovic
2020-01-31 0:23 ` Philippe Mathieu-Daudé
2020-01-31 0:27 ` Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 21/29] target/avr: Add machine none test Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 22/29] target/avr: Update MAINTAINERS file Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 23/29] hw/avr: Add helper to load raw/ELF firmware binaries Aleksandar Markovic
2020-01-31 0:20 ` Philippe Mathieu-Daudé
2020-01-31 0:26 ` Aleksandar Markovic
2020-01-31 0:28 ` Philippe Mathieu-Daudé
2020-01-31 0:30 ` Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers Aleksandar Markovic
2020-01-31 1:56 ` Aleksandar Markovic
2020-01-31 3:09 ` Philippe Mathieu-Daudé
2020-01-31 3:45 ` Aleksandar Markovic
2020-01-31 4:11 ` Aleksandar Markovic
2020-01-31 9:35 ` Thomas Huth
2020-01-31 9:40 ` Aleksandar Markovic
2020-01-31 10:45 ` Philippe Mathieu-Daudé
2020-01-31 11:07 ` Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 25/29] hw/avr: Add some Arduino boards Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 26/29] target/avr: Update build system Aleksandar Markovic
2020-02-04 22:58 ` Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 27/29] tests/boot-serial-test: Test some Arduino boards (AVR based) Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 28/29] tests/acceptance: Test the Arduino MEGA2560 board Aleksandar Markovic
2020-01-31 0:03 ` [PATCH rc4 29/29] .travis.yml: Run the AVR acceptance tests Aleksandar Markovic
2020-01-31 0:12 ` [PATCH rc4 00/29] target/avr merger Aleksandar Markovic
2020-01-31 1:23 ` Philippe Mathieu-Daudé
2020-01-31 14:43 ` Michael Rolnik
2020-01-31 1:09 ` [PATCH 0/2] !fixup target/avr merger-rc4 Philippe Mathieu-Daudé
2020-01-31 1:09 ` [PATCH 1/2] !fixup "hw/misc: Add limited support for AVR power device" Philippe Mathieu-Daudé
2020-01-31 11:27 ` Alex Bennée
2020-01-31 12:39 ` Philippe Mathieu-Daudé
2020-01-31 14:52 ` Alex Bennée
2020-01-31 1:09 ` [PATCH 2/2] !fixup "hw/timer: Add limited support for AVR 16-bit timer peripheral" Philippe Mathieu-Daudé
2020-01-31 11:31 ` Alex Bennée
2020-01-31 1:12 ` [PATCH 0/2] !fixup target/avr merger-rc4 Aleksandar Markovic
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1580428993-4767-1-git-send-email-aleksandar.markovic@rt-rk.com \
--to=aleksandar.markovic@rt-rk.com \
--cc=amarkovic@wavecomp.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.