Like Robert mentioned, py-uio kinda worked out of the box on the J721e by applying the uio-pruss driver patch to the kernel and using a DT overlay I wrote. The advantage of uio is that it maps pruss into userspace in its entirety, which means that support for all of its features can be figured out from there without any specific kernel support, instead of having your hands tied by the limited functionality of the remoteproc kernel driver.
The different PRUSS flavors are more similar than they are different, and even though py-uio was originally written for the AM3358 it worked unmodified for the AM5729. One issue we did run into on the J721e is that the examples that used DDR memory failed, though that appears to be because using memset() to zeroize device memory will crash on ARM64, so it shouldn’t be too hard to implement a workaround. Adding support for the remaining four cores should be pretty trivial, I can probably even auto-detect their presence.
The main issue for me right now is that I currently don’t have access to an AI-64 myself yet, nor a ton of spare time, but it’ll get there!