public inbox for qemu-devel@nongnu.org
 help / color / mirror / Atom feed
* [PATCH v3 0/9] Hexagon system emulation - Part 3/3
@ 2026-03-11  4:20 Brian Cain
  2026-03-11  4:20 ` [PATCH v3 1/9] hw/hexagon: Add globalreg model Brian Cain
                   ` (8 more replies)
  0 siblings, 9 replies; 18+ messages in thread
From: Brian Cain @ 2026-03-11  4:20 UTC (permalink / raw)
  To: qemu-devel
  Cc: brian.cain, philmd, ltaylorsimpson, matheus.bernardino,
	marco.liebel, quic_mburton, sid.manning, ale, anjo

This is Part 3 of the hexagon system emulation (sysemu) patch series,
adding the hw/hexagon board and machine support that ties together the
target infrastructure from Parts 1 and 2.

This part adds:
  - Global register model (hexagon_globalreg) for shared system
    registers across hardware threads
  - Global register tracing support
  - Machine configuration infrastructure and sa8775-cdsp0 definition
  - cfgbase support for hardware configuration base address
  - hexagon-softmmu build configuration (Kconfig, meson, default.mak)
  - The hexagon "virt" machine definition
  - A boot-serial qtest for hexagon

Changes since v2:
  - Dropped l2vic interrupt controller and QTimer device (deferred to
    a future series)
  - Removed hvx_contexts field and hvx-contexts property (HVX context
    management deferred to a future series)
  - arch_*_system_reg callers now go through globalreg_read/write
    directly (the abstraction layer from Part 2 v2 is no longer
    introduced)
  - Adapted to tip's header renames (hw/*.h -> hw/core/*.h)

Previous versions:
  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/

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         |   7 +
 meson.build                                 |   1 +
 include/hw/hexagon/hexagon.h                | 150 +++++++
 include/hw/hexagon/hexagon_globalreg.h      |  56 +++
 include/hw/hexagon/virt.h                   |  43 ++
 target/hexagon/cpu.h                        |   4 -
 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                    | 182 ++++++++
 hw/hexagon/hexagon_globalreg.c              | 313 ++++++++++++++
 hw/hexagon/virt.c                           | 453 ++++++++++++++++++++
 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                          |  15 +
 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 +
 28 files changed, 1465 insertions(+), 7 deletions(-)
 create mode 100644 configs/devices/hexagon-softmmu/default.mak
 create mode 100644 configs/targets/hexagon-softmmu.mak
 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


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

end of thread, other threads:[~2026-03-18 13:15 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-11  4:20 [PATCH v3 0/9] Hexagon system emulation - Part 3/3 Brian Cain
2026-03-11  4:20 ` [PATCH v3 1/9] hw/hexagon: Add globalreg model Brian Cain
2026-03-16 17:58   ` Taylor Simpson
2026-03-11  4:20 ` [PATCH v3 2/9] hw/hexagon: Add global register tracing Brian Cain
2026-03-11 17:52   ` Philippe Mathieu-Daudé
2026-03-16 18:02   ` Taylor Simpson
2026-03-11  4:20 ` [PATCH v3 3/9] hw/hexagon: Add machine configs for sysemu Brian Cain
2026-03-11  4:20 ` [PATCH v3 4/9] hw/hexagon: Add v68, sa8775-cdsp0 defs Brian Cain
2026-03-11 17:54   ` Philippe Mathieu-Daudé
2026-03-11 21:51     ` Brian Cain
2026-03-11  4:20 ` [PATCH v3 5/9] hw/hexagon: Add support for cfgbase Brian Cain
2026-03-11  4:20 ` [PATCH v3 6/9] hw/hexagon: Modify "Standalone" symbols Brian Cain
2026-03-11  4:20 ` [PATCH v3 7/9] target/hexagon: add build config for softmmu Brian Cain
2026-03-11 17:57   ` Philippe Mathieu-Daudé
2026-03-18 13:14   ` Philippe Mathieu-Daudé
2026-03-11  4:20 ` [PATCH v3 8/9] hw/hexagon: Define hexagon "virt" machine Brian Cain
2026-03-11  4:20 ` [PATCH v3 9/9] tests/qtest: Add hexagon boot-serial-test Brian Cain
2026-03-12 14:43   ` Fabiano Rosas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox