Hello Benedikt,
Let me explain to you with an example:
When you access qDMA register (Big-endian format) on U-Boot:
1) Assume read value: 12 34 56 78
U-Boot command: md <qdma_register_addr>
2) Do byte swapping for decoding register. Field values directly compared with description given in RM.
Byte Swapped value: 78 56 34 12
3) To modify the register, do it with swapped value:
Modifying 78 as FF
Modified value: FF 56 34 12
4) Writing to register, byte swapped again:
Written value: 12 34 56 FF
U-Boot command: mw.l <qdma_register_addr> 123456FF
Another example to set B0CQ0MR[EN], use below command:
mw.l 83A0800 00000080
While decoding the register, you will byte-swapped: 80 00 00 00 You can see in the RM, MSB is for EN.
Let me know if you have any confusion to understand it.
Thanks,
Yiping