Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SVD viewer doesn't respect big endian setting #4239

Open
maxgerhardt opened this issue Jan 23, 2025 · 0 comments
Open

SVD viewer doesn't respect big endian setting #4239

maxgerhardt opened this issue Jan 23, 2025 · 0 comments

Comments

@maxgerhardt
Copy link

maxgerhardt commented Jan 23, 2025

Consider an Nintendo 64 with a big endian MIPS processor. A register is located at 0xa4300004 whose individual bytes (addr + 0, addr + 1, addr + 2, addr + 3) read as

0xa4300004:  0x02    0x02    0x01    0x02
right reading:RSP    RDP     RAC    IO     Version
wrong reading: IO    RAC    RDP    RSP     Version

This is the big endian value 0x02 02 01 02. PlatformiO however doesn't seem to respect this in the SVD file and parses it in little endian, causing a wrong decoding of the fields.

Image

Needed in e.g. https://github.com/maxgerhardt/platform-nintendon64

Endian setting for SVD is e.g. documented at https://arm-software.github.io/CMSIS_5/SVD/html/elem_cpu.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant