Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.
We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.
Thank you for your understanding.
I tested on Hikey960 Development Board using busybox devmem, there are some MMIO registers (GPU_ID, GPU_FEATURE, etc.) which are not writable from CPU side. I wonder how does hardware implement read-only/write-only permissions on this registers?
busybox devmem
GPU_ID
GPU_FEATURE
Config registers are physically read-only hardware, they are not programmable.
As they are memory mapped, read permission is controlled by CPU page tables.