On 25/9/24 13:04, Peter Maydell wrote:
On Tue, 24 Sept 2024 at 20:19, Philippe Mathieu-Daudé <phi...@linaro.org> wrote:
Per the Armv7-M Architecture Reference Manual (ARM DDI 0403E):
The System Control Space (SCS, address range 0xE000E000 to
0xE000EFFF) is a memory-mapped 4KB address space that provides
32-bit registers for configuration, status reporting and control.
All accesses to the SCS are little endian.
Expose the region as a little-endian one and force dispatched
accesses to also be in little endianness.
Fixes: d5d680cacc ("memory: Access MemoryRegion with endianness")
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
What's the rationale for this change? All Arm system emulator
builds are TARGET_LITTLE_ENDIAN, so MO_TE and MO_LE have
identical behaviour, as do DEVICE_LITTLE_ENDIAN and
DEVICE_TARGET_ENDIAN.
When building a single heterogeneous binary, all device
models can be built. We want to remove MO_TE, either
using the proper endianness (like in this case) or use
both, one MemoryRegionOps per endianness, letting the
machine picking up the proper one.
I'll reword the description to be clearer.
Regards,
Phil.