This brings in a significantly cleaned up version of the remaining patches on the devel branch and adds support for ZynqMP CGEMs. I have tested CGEM0 on QEMU and CGEM3 on hardware. I am unable to test on the BeagleBoneBlack at the moment, so I'd appreciate a double-check to ensure I haven't broken it.