On 7/13/2026 1:07 PM, Matheus Tavares Bernardino wrote:
> From: Matheus Tavares Bernardino <[email protected]>
>
> Baremetal Hexagon programs use trap0 #0 to invoke
> semihosting calls for I/O and process control. Wire up the
> arm-compatible semihosting framework for softmmu by enabling
> CONFIG_ARM_COMPATIBLE_SEMIHOSTING and routing trap0 to the
> semihosting handler.
>
> Signed-off-by: Matheus Tavares Bernardino <[email protected]>
> Signed-off-by: Brian Cain <[email protected]>
> ---
> configs/targets/hexagon-softmmu.mak | 2 +
> hw/hexagon/hexagon_dsp.c | 2 +
> target/hexagon/common-semi-target.c | 51 +++++++++
> target/hexagon/hexswi.c | 164 +++++++++++++++++++++++++++-
> hw/hexagon/Kconfig | 1 +
> qemu-options.hx | 8 +-
> target/hexagon/meson.build | 3 +
> 7 files changed, 224 insertions(+), 7 deletions(-)
> create mode 100644 target/hexagon/common-semi-target.c
>
...
> +static void sim_handle_trap0(CPUHexagonState *env)
> +{
> + target_ulong what_swi, swi_info;
> + G_GNUC_UNUSED uintptr_t retaddr = 0;
leftover?
For the rest:
Reviewed-by: Pierrick Bouvier <[email protected]>
Regards,
Pierrick