All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH rc5 00/32] target/avr merger
@ 2020-02-07  1:57 Aleksandar Markovic
  2020-02-07  1:57 ` [PATCH rc5 01/32] target/avr: Add basic parameters of the new platform Aleksandar Markovic
                   ` (31 more replies)
  0 siblings, 32 replies; 38+ messages in thread
From: Aleksandar Markovic @ 2020-02-07  1:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: Aleksandar Markovic

From: Aleksandar Markovic <amarkovic@wavecomp.com>

This is the AVR port from Michael, release (merge) candidate 5.

The series can be found also in this repository:

https://github.com/AMarkovic/qemu-avr-merger-rc5

History:

Since v4:

- Alex tracing improvements (the only functional difference from v4)
- Moving code between patches, and sometimes between files
- Several new patches were extracted from more complex ones
- Improved commit messages
- Other minor improvements
- I added my 8 "R-b:"s that I explained in rc4, plus some more
- Series now has 0 errors and 0 warnings (checkpatch)

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 (28):
  target/avr: Add basic parameters of the new platform
  target/avr: Introduce basic CPU class object
  target/avr: CPU class: Add interrupt handling support
  target/avr: CPU class: Add memory menagement support
  target/avr: CPU class: Add migration support
  target/avr: CPU class: 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: Initialize TCG register variables
  target/avr: Add support for disassembling via option '-d in_asm'
  hw/char: avr: Add limited support for USART peripheral
  hw/timer: avr: Add limited support for 16-bit timer peripheral
  hw/misc: avr: Add limited support for power reduction device
  target/avr: Register AVR support with the rest of QEMU
  target/avr: Update build system
  tests/machine-none: Add AVR support
  tests/boot-serial: Test some Arduino boards (AVR based)
  tests/acceptance: Test the Arduino MEGA2560 board
  target/avr: Simplify sections in MAINTAINERS file
  target/avr: Add section into QEMU documentation

Philippe Mathieu-Daudé (4):
  hw/avr: Add support for loading ELF/raw binaries
  hw/avr: Add some ATmega microcontrollers
  hw/avr: Add limited support for 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/atmega.h                  |   48 +
 hw/avr/boot.h                    |   33 +
 include/disas/dis-asm.h          |   19 +
 include/elf.h                    |    4 +
 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 +
 target/avr/cpu-param.h           |   37 +
 target/avr/cpu-qom.h             |   54 +
 target/avr/cpu.h                 |  256 ++++
 target/avr/helper.h              |   29 +
 target/avr/insn.decode           |  187 +++
 arch_init.c                      |    2 +
 hw/avr/arduino.c                 |  151 ++
 hw/avr/atmega.c                  |  470 ++++++
 hw/avr/boot.c                    |  116 ++
 hw/char/avr_usart.c              |  320 ++++
 hw/misc/avr_power.c              |  113 ++
 hw/timer/avr_timer16.c           |  609 ++++++++
 target/avr/cpu.c                 |  777 ++++++++++
 target/avr/disas.c               |  246 +++
 target/avr/gdbstub.c             |   84 ++
 target/avr/helper.c              |  342 +++++
 target/avr/machine.c             |  121 ++
 target/avr/translate.c           | 3073 ++++++++++++++++++++++++++++++++++++++
 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/Kconfig                       |    1 +
 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/misc/trace-events             |    4 +
 hw/timer/Kconfig                 |    3 +
 hw/timer/Makefile.objs           |    2 +
 hw/timer/trace-events            |   12 +
 target/avr/Makefile.objs         |   34 +
 tests/acceptance/machine_avr6.py |   50 +
 tests/qtest/Makefile.include     |    2 +
 49 files changed, 7611 insertions(+), 2 deletions(-)
 create mode 100644 default-configs/avr-softmmu.mak
 create mode 100644 hw/avr/atmega.h
 create mode 100644 hw/avr/boot.h
 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/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 target/avr/insn.decode
 create mode 100644 hw/avr/arduino.c
 create mode 100644 hw/avr/atmega.c
 create mode 100644 hw/avr/boot.c
 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 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 tests/acceptance/machine_avr6.py

-- 
2.7.4



^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2020-02-08 16:02 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-07  1:57 [PATCH rc5 00/32] target/avr merger Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 01/32] target/avr: Add basic parameters of the new platform Aleksandar Markovic
2020-02-07 15:00   ` Michael Rolnik
2020-02-07  1:57 ` [PATCH rc5 02/32] target/avr: Introduce basic CPU class object Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 03/32] target/avr: CPU class: Add interrupt handling support Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 04/32] target/avr: CPU class: Add memory menagement support Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 05/32] target/avr: CPU class: Add migration support Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 06/32] target/avr: CPU class: Add GDB support Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 07/32] target/avr: Introduce enumeration AVRFeature Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 08/32] target/avr: Add defintions of AVR core types Aleksandar Markovic
2020-02-07 11:23   ` [PATCH] !fixup "target/avr: Add defintions of AVR core types" Philippe Mathieu-Daudé
2020-02-08  7:10     ` Aleksandar Markovic
2020-02-08 14:06       ` Philippe Mathieu-Daudé
2020-02-08 16:01         ` Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 09/32] target/avr: Add instruction helpers Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 10/32] target/avr: Add instruction translation - Register definitions Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 11/32] target/avr: Add instruction translation - Arithmetic and Logic Instructions Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 12/32] target/avr: Add instruction translation - Branch Instructions Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 13/32] target/avr: Add instruction translation - Data Transfer Instructions Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 14/32] target/avr: Add instruction translation - Bit and Bit-test Instructions Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 15/32] target/avr: Add instruction translation - MCU Control Instructions Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 16/32] target/avr: Add instruction translation - CPU main translation function Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 17/32] target/avr: Initialize TCG register variables Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 18/32] target/avr: Add support for disassembling via option '-d in_asm' Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 19/32] hw/char: avr: Add limited support for USART peripheral Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 20/32] hw/timer: avr: Add limited support for 16-bit timer peripheral Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 21/32] hw/misc: avr: Add limited support for power reduction device Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 22/32] target/avr: Register AVR support with the rest of QEMU Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 23/32] hw/avr: Add support for loading ELF/raw binaries Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 24/32] hw/avr: Add some ATmega microcontrollers Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 25/32] hw/avr: Add limited support for some Arduino boards Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 26/32] target/avr: Update build system Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 27/32] tests/machine-none: Add AVR support Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 28/32] tests/boot-serial: Test some Arduino boards (AVR based) Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 29/32] tests/acceptance: Test the Arduino MEGA2560 board Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 30/32] .travis.yml: Run the AVR acceptance tests Aleksandar Markovic
2020-02-07  1:57 ` [PATCH rc5 31/32] target/avr: Simplify sections in MAINTAINERS file Aleksandar Markovic
2020-02-07  1:58 ` [PATCH rc5 32/32] target/avr: Add section into QEMU documentation Aleksandar Markovic

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.