[PATCH v6 0/9] Hexagon system emulation, Part 3/3

Brian Cain posted 9 patches 18 hours ago
Failed in applying to current master (apply log)
MAINTAINERS                                 |  15 +-
configs/devices/hexagon-softmmu/default.mak |   8 +
configs/targets/hexagon-softmmu.mak         |   8 +
meson.build                                 |   1 +
hw/hexagon/trace.h                          |   2 +
include/hw/hexagon/hexagon.h                | 161 +++++++
include/hw/hexagon/hexagon_globalreg.h      |  55 +++
include/hw/hexagon/virt.h                   |  31 ++
target/hexagon/cpu.h                        |   7 +-
hw/hexagon/machine_cfg_sa8775_cdsp0.h.inc   |  64 +++
hw/hexagon/machine_cfg_v66g_1024.h.inc      |  64 +++
hw/hexagon/machine_cfg_v68n_1024.h.inc      |  65 +++
hw/hexagon/hexagon_dsp.c                    | 224 ++++++++++
hw/hexagon/hexagon_globalreg.c              | 316 +++++++++++++
hw/hexagon/hexagon_tlb.c                    | 466 ++++++++++++++++++++
hw/hexagon/virt.c                           | 463 +++++++++++++++++++
system/qdev-monitor.c                       |   2 +-
target/hexagon/cpu.c                        |   1 -
target/hexagon/translate.c                  |   1 +
tests/qtest/boot-serial-test.c              |   8 +
hw/Kconfig                                  |   1 +
hw/hexagon/Kconfig                          |  14 +
hw/hexagon/meson.build                      |   7 +
hw/hexagon/trace-events                     |   3 +
hw/meson.build                              |   1 +
target/Kconfig                              |   1 +
target/hexagon/Kconfig                      |   2 +
target/hexagon/meson.build                  |  13 +-
tests/qemu-iotests/testenv.py               |   1 +
tests/qtest/meson.build                     |   2 +
30 files changed, 1996 insertions(+), 11 deletions(-)
create mode 100644 configs/devices/hexagon-softmmu/default.mak
create mode 100644 configs/targets/hexagon-softmmu.mak
create mode 100644 hw/hexagon/trace.h
create mode 100644 include/hw/hexagon/hexagon.h
create mode 100644 include/hw/hexagon/hexagon_globalreg.h
create mode 100644 include/hw/hexagon/virt.h
create mode 100644 hw/hexagon/machine_cfg_sa8775_cdsp0.h.inc
create mode 100644 hw/hexagon/machine_cfg_v66g_1024.h.inc
create mode 100644 hw/hexagon/machine_cfg_v68n_1024.h.inc
create mode 100644 hw/hexagon/hexagon_dsp.c
create mode 100644 hw/hexagon/hexagon_globalreg.c
create mode 100644 hw/hexagon/hexagon_tlb.c
create mode 100644 hw/hexagon/virt.c
create mode 100644 hw/hexagon/Kconfig
create mode 100644 hw/hexagon/meson.build
create mode 100644 hw/hexagon/trace-events
create mode 100644 target/hexagon/Kconfig
[PATCH v6 0/9] Hexagon system emulation, Part 3/3
Posted by Brian Cain 18 hours ago
Hexagon sysemu part 3: device models (globalreg, TLB), machine
definitions (DSP, Virt), hexagon-softmmu build config, and
boot-serial-test.

Changes in v6:
- Dropped "Modify Standalone symbols"; added "Add hexagon TLB device
  implementation" (moved from Part 1, which now only has the header).
- globalreg: g_assert(s) -> early-return null guards; dropped public
  reset wrapper; memset uses sizeof(s->regs).
- Machine configs: added TYPE_HEXAGON_COMMON_MACHINE (abstract, holds
  ram + cfgtable_rom) and TYPE_HEXAGON_DSP_MACHINE; wired up TLB
  device and global-regs links; isdb symbol detection; new MAINTAINERS
  "Hexagon Machines" section with Pierrick as R:.
- Virt machine: re-parented to HEXAGON_COMMON_MACHINE; replaced static
  phandle globals with return values; moved enums into .c file;
  simplified realize paths.
- Build config: mttcg_supported = true; fixed reg_fields.h include.
- Picked up A-b from Philippe and R-b from Pierrick on several patches.

Patches still needing review:
- 08/09: hw/hexagon: Define hexagon "virt" machine

Brian Cain (8):
  hw/hexagon: Add globalreg model
  hw/hexagon: Add global register tracing
  hw/hexagon: Add hexagon TLB device implementation
  hw/hexagon: Add machine configs for sysemu
  hw/hexagon: Add v68, sa8775-cdsp0 defs
  target/hexagon: add build config for softmmu
  hw/hexagon: Define hexagon "virt" machine
  tests/qtest: Add hexagon boot-serial-test

Sid Manning (1):
  hw/hexagon: Add support for cfgbase

 MAINTAINERS                                 |  15 +-
 configs/devices/hexagon-softmmu/default.mak |   8 +
 configs/targets/hexagon-softmmu.mak         |   8 +
 meson.build                                 |   1 +
 hw/hexagon/trace.h                          |   2 +
 include/hw/hexagon/hexagon.h                | 161 +++++++
 include/hw/hexagon/hexagon_globalreg.h      |  55 +++
 include/hw/hexagon/virt.h                   |  31 ++
 target/hexagon/cpu.h                        |   7 +-
 hw/hexagon/machine_cfg_sa8775_cdsp0.h.inc   |  64 +++
 hw/hexagon/machine_cfg_v66g_1024.h.inc      |  64 +++
 hw/hexagon/machine_cfg_v68n_1024.h.inc      |  65 +++
 hw/hexagon/hexagon_dsp.c                    | 224 ++++++++++
 hw/hexagon/hexagon_globalreg.c              | 316 +++++++++++++
 hw/hexagon/hexagon_tlb.c                    | 466 ++++++++++++++++++++
 hw/hexagon/virt.c                           | 463 +++++++++++++++++++
 system/qdev-monitor.c                       |   2 +-
 target/hexagon/cpu.c                        |   1 -
 target/hexagon/translate.c                  |   1 +
 tests/qtest/boot-serial-test.c              |   8 +
 hw/Kconfig                                  |   1 +
 hw/hexagon/Kconfig                          |  14 +
 hw/hexagon/meson.build                      |   7 +
 hw/hexagon/trace-events                     |   3 +
 hw/meson.build                              |   1 +
 target/Kconfig                              |   1 +
 target/hexagon/Kconfig                      |   2 +
 target/hexagon/meson.build                  |  13 +-
 tests/qemu-iotests/testenv.py               |   1 +
 tests/qtest/meson.build                     |   2 +
 30 files changed, 1996 insertions(+), 11 deletions(-)
 create mode 100644 configs/devices/hexagon-softmmu/default.mak
 create mode 100644 configs/targets/hexagon-softmmu.mak
 create mode 100644 hw/hexagon/trace.h
 create mode 100644 include/hw/hexagon/hexagon.h
 create mode 100644 include/hw/hexagon/hexagon_globalreg.h
 create mode 100644 include/hw/hexagon/virt.h
 create mode 100644 hw/hexagon/machine_cfg_sa8775_cdsp0.h.inc
 create mode 100644 hw/hexagon/machine_cfg_v66g_1024.h.inc
 create mode 100644 hw/hexagon/machine_cfg_v68n_1024.h.inc
 create mode 100644 hw/hexagon/hexagon_dsp.c
 create mode 100644 hw/hexagon/hexagon_globalreg.c
 create mode 100644 hw/hexagon/hexagon_tlb.c
 create mode 100644 hw/hexagon/virt.c
 create mode 100644 hw/hexagon/Kconfig
 create mode 100644 hw/hexagon/meson.build
 create mode 100644 hw/hexagon/trace-events
 create mode 100644 target/hexagon/Kconfig

-- 
2.34.1