[PATCH v5 0/9] Hexagon system emulation - Part 3/3

Brian Cain posted 9 patches 1 month, 1 week ago
Failed in applying to current master (apply log)
MAINTAINERS                                 |   3 +
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                | 150 +++++++
include/hw/hexagon/hexagon_globalreg.h      |  56 +++
include/hw/hexagon/virt.h                   |  43 ++
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                    | 188 ++++++++
hw/hexagon/hexagon_globalreg.c              | 313 ++++++++++++++
hw/hexagon/virt.c                           | 456 ++++++++++++++++++++
system/qdev-monitor.c                       |   2 +-
target/hexagon/cpu.c                        |   6 +-
target/hexagon/translate.c                  |   1 +
tests/qtest/boot-serial-test.c              |   8 +
hw/Kconfig                                  |   1 +
hw/hexagon/Kconfig                          |  14 +
hw/hexagon/meson.build                      |   8 +
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 +
29 files changed, 1480 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/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 v5 0/9] Hexagon system emulation - Part 3/3
Posted by Brian Cain 1 month, 1 week ago
This is Part 3 of the Hexagon system emulation series.  It adds the
board-level support, machine definitions, and build infrastructure
needed to run hexagon-softmmu.

This includes:
 - Global register model (QOM device for shared system registers)
 - Global register tracing
 - Machine configuration definitions (v66g, v68n, sa8775-cdsp0)
 - cfgbase support
 - Hexagon "virt" machine definition
 - Build configuration for hexagon-softmmu target
 - Boot serial test for hexagon

Based on Part 1 v6 + Part 2 v4.

Changes since v4:
 - Removed empty hexagon_globalreg_realize() stub and its
   dc->realize assignment
 - Changed virt machine default CPU from v73 to v68 to match
   the machine config
 - Removed unnecessary "depends on TCG" from HEX_DSP Kconfig
 - Removed unused "imply PTIMER" from HEX_DSP Kconfig
 - Removed stale #include "exec/target_page.h" from translate.c

Previous versions:
 - v4: https://lore.kernel.org/qemu-devel/20260408042149.1902796-1-brian.cain@oss.qualcomm.com/
 - v3: https://lore.kernel.org/qemu-devel/20260311042019.1085030-1-brian.cain@oss.qualcomm.com/
 - v2: https://lore.kernel.org/qemu-devel/20250902034951.1948194-1-brian.cain@oss.qualcomm.com/
 - v1: https://lore.kernel.org/qemu-devel/20250301172045.1295412-1-brian.cain@oss.qualcomm.com/

Related series:
 - Part 1 v6: https://lore.kernel.org/qemu-devel/20260401152657.314902-1-brian.cain@oss.qualcomm.com/
 - Part 2 v4: https://lore.kernel.org/qemu-devel/20260408041953.1899532-1-brian.cain@oss.qualcomm.com/

Brian Cain (8):
  hw/hexagon: Add globalreg model
  hw/hexagon: Add global register tracing
  hw/hexagon: Add machine configs for sysemu
  hw/hexagon: Add v68, sa8775-cdsp0 defs
  hw/hexagon: Modify "Standalone" symbols
  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                                 |   3 +
 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                | 150 +++++++
 include/hw/hexagon/hexagon_globalreg.h      |  56 +++
 include/hw/hexagon/virt.h                   |  43 ++
 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                    | 188 ++++++++
 hw/hexagon/hexagon_globalreg.c              | 313 ++++++++++++++
 hw/hexagon/virt.c                           | 456 ++++++++++++++++++++
 system/qdev-monitor.c                       |   2 +-
 target/hexagon/cpu.c                        |   6 +-
 target/hexagon/translate.c                  |   1 +
 tests/qtest/boot-serial-test.c              |   8 +
 hw/Kconfig                                  |   1 +
 hw/hexagon/Kconfig                          |  14 +
 hw/hexagon/meson.build                      |   8 +
 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 +
 29 files changed, 1480 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/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