All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matheus Tavares Bernardino <matheus.bernardino@oss.qualcomm.com>
To: qemu-devel@nongnu.org
Cc: brian.cain@oss.qualcomm.com, pierrick.bouvier@oss.qualcomm.com,
	marco.liebel@oss.qualcomm.com, philmd@oss.qualcomm.com,
	ale@rev.ng, anjo@rev.ng
Subject: [PATCH 00/14] hexagon: add semihosting support
Date: Mon, 13 Jul 2026 13:07:08 -0700	[thread overview]
Message-ID: <cover.1783973054.git.matheus.bernardino@oss.qualcomm.com> (raw)

This series adds semihosting support to hexagon system emulation,
together with functional tests for the added operations.

The Hexagon semihosting spec can be found at:
https://docs.qualcomm.com/doc/80-N2040-101_102648/topic/semihosting-specification.html

Brian Cain (4):
  semihosting: add APIs for chardev-aware guest fd routing
  target/hexagon: Add an errno mapping
  python/machine: support routing semihosting output to the test console
  tests/functional: Add hexagon semihosting systests

Matheus Tavares Bernardino (10):
  target/hexagon: fix get_phys_addr_debug with in-page offset
  target/hexagon: fix PC advancement for non-COF TB terminators
  target/hexagon: add aux functions for guest mem load/store
  hexagon: cpu_helper: add reg reading/writing helpers
  semihosting: add callback to set error
  target/hexagon: add semihosting support
  semihosting: add ftruncate helper (to be used for hexagon)
  target/hexagon: add main arch-specific semihosting operations
  target/hexagon: add COREDUMP semihosting operation
  target/hexagon: add OPEN/READ/CLOSE_DIR semihosting operations

 configs/targets/hexagon-softmmu.mak       |   2 +
 include/semihosting/common-semi.h         |   2 +
 include/semihosting/console.h             |   9 +
 include/semihosting/guestfd.h             |   9 +
 include/semihosting/syscalls.h            |   2 +
 target/hexagon/cpu.h                      |   1 +
 target/hexagon/cpu_helper.h               |  24 +
 target/hexagon/internal.h                 |   1 +
 hw/hexagon/hexagon_dsp.c                  |   7 +
 hw/hexagon/virt.c                         |   5 +
 semihosting/arm-compat-semi.c             |   3 +-
 semihosting/console.c                     |   5 +
 semihosting/guestfd.c                     |   8 +
 semihosting/syscalls.c                    |  29 +
 target/arm/common-semi-target.c           |   4 +
 target/hexagon/common-semi-target.c       |  51 ++
 target/hexagon/cpu.c                      |   4 +-
 target/hexagon/cpu_helper.c               | 173 +++++
 target/hexagon/hexswi.c                   | 728 +++++++++++++++++++++-
 target/hexagon/op_helper.c                |  18 +-
 target/hexagon/translate.c                |  13 +-
 target/riscv/common-semi-target.c         |   4 +
 hw/hexagon/Kconfig                        |   1 +
 python/qemu/machine/machine.py            |  10 +-
 qemu-options.hx                           |   8 +-
 target/hexagon/meson.build                |   3 +
 tests/functional/hexagon/meson.build      |   9 +
 tests/functional/hexagon/test_systests.py | 133 ++++
 tests/functional/meson.build              |   1 +
 29 files changed, 1236 insertions(+), 31 deletions(-)
 create mode 100644 target/hexagon/common-semi-target.c
 create mode 100644 tests/functional/hexagon/meson.build
 create mode 100644 tests/functional/hexagon/test_systests.py

-- 
2.37.2



             reply	other threads:[~2026-07-13 20:08 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-13 20:07 Matheus Tavares Bernardino [this message]
2026-07-13 20:07 ` [PATCH 01/14] target/hexagon: fix get_phys_addr_debug with in-page offset Matheus Tavares Bernardino
2026-07-13 21:41   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 02/14] target/hexagon: fix PC advancement for non-COF TB terminators Matheus Tavares Bernardino
2026-07-13 21:53   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 03/14] target/hexagon: add aux functions for guest mem load/store Matheus Tavares Bernardino
2026-07-13 21:58   ` Pierrick Bouvier
2026-07-14 10:17     ` Matheus Tavares Bernardino
2026-07-13 20:07 ` [PATCH 04/14] hexagon: cpu_helper: add reg reading/writing helpers Matheus Tavares Bernardino
2026-07-13 22:00   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 05/14] semihosting: add callback to set error Matheus Tavares Bernardino
2026-07-13 22:01   ` Pierrick Bouvier
2026-07-14  9:50   ` Daniel Henrique Barboza
2026-07-14 10:00     ` Matheus Tavares Bernardino
2026-07-13 20:07 ` [PATCH 06/14] semihosting: add APIs for chardev-aware guest fd routing Matheus Tavares Bernardino
2026-07-13 22:04   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 07/14] target/hexagon: add semihosting support Matheus Tavares Bernardino
2026-07-13 22:11   ` Pierrick Bouvier
2026-07-14 10:13     ` Matheus Tavares Bernardino
2026-07-13 20:07 ` [PATCH 08/14] semihosting: add ftruncate helper (to be used for hexagon) Matheus Tavares Bernardino
2026-07-13 22:12   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 09/14] target/hexagon: add main arch-specific semihosting operations Matheus Tavares Bernardino
2026-07-13 22:20   ` Pierrick Bouvier
2026-07-14 10:10     ` Matheus Tavares Bernardino
2026-07-13 20:07 ` [PATCH 10/14] target/hexagon: add COREDUMP semihosting operation Matheus Tavares Bernardino
2026-07-13 22:22   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 11/14] target/hexagon: add OPEN/READ/CLOSE_DIR semihosting operations Matheus Tavares Bernardino
2026-07-13 22:33   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 12/14] target/hexagon: Add an errno mapping Matheus Tavares Bernardino
2026-07-13 22:23   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 13/14] python/machine: support routing semihosting output to the test console Matheus Tavares Bernardino
2026-07-13 22:23   ` Pierrick Bouvier
2026-07-13 20:07 ` [PATCH 14/14] tests/functional: Add hexagon semihosting systests Matheus Tavares Bernardino
2026-07-13 22:28   ` Pierrick Bouvier
2026-07-14 10:28     ` Matheus Tavares Bernardino
2026-07-14  8:25   ` Daniel P. Berrangé
2026-07-14 18:58     ` Matheus Tavares Bernardino
2026-07-13 21:51 ` [PATCH 00/14] hexagon: add semihosting support Pierrick Bouvier
2026-07-14 18:55 ` Brian Cain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1783973054.git.matheus.bernardino@oss.qualcomm.com \
    --to=matheus.bernardino@oss.qualcomm.com \
    --cc=ale@rev.ng \
    --cc=anjo@rev.ng \
    --cc=brian.cain@oss.qualcomm.com \
    --cc=marco.liebel@oss.qualcomm.com \
    --cc=philmd@oss.qualcomm.com \
    --cc=pierrick.bouvier@oss.qualcomm.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.