This is a merger of Michael's v41 of the base avr architecture,
and v4 of Phil's arduino target boards. Call this release, or
merge, candidate 1.
Has all commentary been addressed? How much more, if anything,
does anyone require before allowing normal development in tree?
r~
Michael Rolnik (20):
target/avr: Add outward facing interfaces and core CPU logic
target/avr: Add instruction helpers
target/avr: Add instruction translation - Registers definition
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 Atmel USART peripheral
hw/timer: Add limited support for Atmel 16 bit timer peripheral
hw/misc: Add Atmel 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: Introduce ATMEL_ATMEGA_MCU config
hw/avr: Add some ATmega microcontrollers
hw/avr: Add some Arduino boards
.travis.yml: Run the AVR acceptance tests
qemu-doc.texi | 51 +
configure | 7 +
default-configs/avr-softmmu.mak | 5 +
qapi/machine.json | 3 +-
hw/avr/atmel_atmega.h | 48 +
include/disas/dis-asm.h | 19 +
include/hw/char/atmel_usart.h | 93 +
include/hw/misc/atmel_power.h | 46 +
include/hw/timer/atmel_timer16.h | 94 +
include/sysemu/arch_init.h | 1 +
target/avr/cpu-param.h | 37 +
target/avr/cpu-qom.h | 54 +
target/avr/cpu.h | 259 +++
target/avr/helper.h | 29 +
arch_init.c | 2 +
hw/avr/arduino.c | 175 ++
hw/avr/atmel_atmega.c | 464 +++++
hw/char/atmel_usart.c | 320 ++++
hw/misc/atmel_power.c | 112 ++
hw/timer/atmel_timer16.c | 602 ++++++
target/avr/cpu.c | 826 ++++++++
target/avr/disas.c | 246 +++
target/avr/gdbstub.c | 84 +
target/avr/helper.c | 347 ++++
target/avr/machine.c | 121 ++
target/avr/translate.c | 2997 ++++++++++++++++++++++++++++++
tests/qtest/boot-serial-test.c | 11 +
tests/qtest/machine-none-test.c | 1 +
.travis.yml | 2 +-
MAINTAINERS | 26 +
gdb-xml/avr-cpu.xml | 49 +
hw/avr/Kconfig | 9 +
hw/avr/Makefile.objs | 2 +
hw/char/Kconfig | 3 +
hw/char/Makefile.objs | 1 +
hw/misc/Kconfig | 3 +
hw/misc/Makefile.objs | 2 +
hw/timer/Kconfig | 3 +
hw/timer/Makefile.objs | 2 +
target/avr/Makefile.objs | 34 +
target/avr/insn.decode | 182 ++
tests/acceptance/machine_avr6.py | 50 +
tests/qtest/Makefile.include | 2 +
43 files changed, 7422 insertions(+), 2 deletions(-)
create mode 100644 default-configs/avr-softmmu.mak
create mode 100644 hw/avr/atmel_atmega.h
create mode 100644 include/hw/char/atmel_usart.h
create mode 100644 include/hw/misc/atmel_power.h
create mode 100644 include/hw/timer/atmel_timer16.h
create mode 100644 target/avr/cpu-param.h
create mode 100644 target/avr/cpu-qom.h
create mode 100644 target/avr/cpu.h
create mode 100644 target/avr/helper.h
create mode 100644 hw/avr/arduino.c
create mode 100644 hw/avr/atmel_atmega.c
create mode 100644 hw/char/atmel_usart.c
create mode 100644 hw/misc/atmel_power.c
create mode 100644 hw/timer/atmel_timer16.c
create mode 100644 target/avr/cpu.c
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/machine.c
create mode 100644 target/avr/translate.c
create mode 100644 gdb-xml/avr-cpu.xml
create mode 100644 hw/avr/Kconfig
create mode 100644 hw/avr/Makefile.objs
create mode 100644 target/avr/Makefile.objs
create mode 100644 target/avr/insn.decode
create mode 100644 tests/acceptance/machine_avr6.py
--
2.20.1