If I understood it correctly, this does the same as /dev/mem. Then why did they create their own device instead of /dev/mem? Is it because Android's Compatibility Test Suite, which is required for calling your device an Android device, *explicitly* disallows a world-accessible /dev/mem? (See https://android.googlesource.com/platform/cts/+/master/te... for the testcase.)