Tested-by: Michael Rolnik <mrol...@gmail.com>
The only thing I want to change is instead of -kernel put -bios in qemu-doc.texi file. Should I send a new series? On Fri, Jan 24, 2020 at 2:51 AM Philippe Mathieu-Daudé <f4...@amsat.org> wrote: > This is the AVR port from Michael release (merge) candidate 2. > > Since v1 [1]: > - 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) > > Change since rc1: > > $ git backport-diff -u avr-rc1 -r origin/master.. > Key: > [----] : patches are identical > [####] : number of functional differences between upstream/downstream patch > [down] : patch is downstream-only > The flags [FC] indicate (F)unctional and (C)ontextual differences, > respectively > > 001/25:[----] [--] 'target/avr: Add outward facing interfaces and core CPU > logic' > 002/25:[----] [--] 'target/avr: Add instruction helpers' > 003/25:[----] [--] 'target/avr: Add instruction translation - Registers > definition' > 004/25:[----] [--] 'target/avr: Add instruction translation - Arithmetic > and Logic Instructions' > 005/25:[----] [--] 'target/avr: Add instruction translation - Branch > Instructions' > 006/25:[----] [--] 'target/avr: Add instruction translation - Data > Transfer Instructions' > 007/25:[----] [--] 'target/avr: Add instruction translation - Bit and > Bit-test Instructions' > 008/25:[----] [--] 'target/avr: Add instruction translation - MCU Control > Instructions' > 009/25:[----] [--] 'target/avr: Add instruction translation - CPU main > translation function' > 010/25:[----] [--] 'target/avr: Add instruction disassembly function' > 011/25:[----] [--] 'hw/char: Add limited support for Atmel USART > peripheral' > 012/25:[0045] [FC] 'hw/timer: Add limited support for Atmel 16 bit timer > peripheral' > 013/25:[----] [--] 'hw/misc: Add Atmel power device' > 014/25:[0024] [FC] 'target/avr: Add section about AVR into QEMU > documentation' > 015/25:[----] [--] 'target/avr: Register AVR support with the rest of QEMU' > 016/25:[----] [--] 'target/avr: Add machine none test' > 017/25:[0002] [FC] 'target/avr: Update MAINTAINERS file' > 018/25:[down] 'hw/core/loader: Let load_elf populate the > processor-specific flags' > 019/25:[down] 'hw/avr: Add helper to load raw/ELF firmware binaries' > 020/25:[0015] [FC] 'hw/avr: Add some ATmega microcontrollers' > 021/25:[0040] [FC] 'hw/avr: Add some Arduino boards' > 022/25:[----] [--] 'target/avr: Update build system' > 023/25:[----] [--] 'tests/boot-serial-test: Test some Arduino boards (AVR > based)' > 024/25:[----] [--] 'tests/acceptance: Test the Arduino MEGA2560 board' > 025/25:[----] [--] '.travis.yml: Run the AVR acceptance tests' > > Repo: https://gitlab.com/philmd/qemu/commits/avr-rc2 > > [1] https://www.mail-archive.com/qemu-devel@nongnu.org/msg672926.html > Supersedes: <20200123000307.11541-1-richard.hender...@linaro.org> > > 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é (5): > hw/core/loader: Let load_elf populate the processor-specific flags > 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 > > qemu-doc.texi | 51 + > configure | 7 + > default-configs/avr-softmmu.mak | 5 + > qapi/machine.json | 3 +- > hw/avr/atmel_atmega.h | 48 + > hw/avr/boot.h | 33 + > include/disas/dis-asm.h | 19 + > include/elf.h | 2 + > include/hw/char/atmel_usart.h | 93 + > include/hw/elf_ops.h | 6 +- > include/hw/loader.h | 6 +- > 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 | 151 ++ > hw/avr/atmel_atmega.c | 470 +++++ > hw/avr/boot.c | 74 + > hw/char/atmel_usart.c | 320 ++++ > hw/core/loader.c | 15 +- > hw/misc/atmel_power.c | 112 ++ > hw/riscv/boot.c | 2 +- > hw/timer/atmel_timer16.c | 605 ++++++ > 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 | 30 + > gdb-xml/avr-cpu.xml | 49 + > hw/avr/Kconfig | 9 + > hw/avr/Makefile.objs | 3 + > 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 + > 50 files changed, 7539 insertions(+), 13 deletions(-) > create mode 100644 default-configs/avr-softmmu.mak > create mode 100644 hw/avr/atmel_atmega.h > create mode 100644 hw/avr/boot.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/avr/boot.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.21.1 > > -- Best Regards, Michael Rolnik