Reading /dev/mem where the GPU device is located reboots the system in Xavier

I am trying to read /dev/mem using the busybox toolset. My goal is to read some registers related to the integrated GPU. By looking at /proc/iomem, it is easy to understand that the gpu device is mapped in physical memory at the address 0x17000000. This is a chunk of my /proc/iomem:

...
15f00000-15ffffff : /host1x/vi@15c10000
16000000-167fffff : /host1x/pva0
16800000-16ffffff : /host1x/pva1
17000000-17ffffff : /gv11b                 <--- HERE
18000000-18ffffff : /gv11b
30000000-3003ffff : config
30040000-3007ffff : atu_dma
34000000-3403ffff : config
34040000-3407ffff : atu_dma
38000000-3803ffff : config
...

If you try to read with busybox at this address withe the command:

busybox devmem 0x17000000

Then the system hangs for a while and then it reboots.

Repeating this experiment with the Jetson TX2 does not produce any issue.

Do you have any clue about this?

Its mostly because, architecture and design is different.
hang and reboot happens due to no clock or power to the controller or no privilege to ccplex EL level.

Thank you,

The reason was, like you said, is no power to the controller because of GPU railgating. If you try to read the memory while a GPU kernel is running, then it is fine.

Another option is to disable the GPU railgate:

echo "0" > /sys/bus/platform/devices/17000000.gv11b/driver/17000000.gv11b/railgate_enable

and it works fine.