Hopefully I've responded to everyone's comments here. Edgar, I did end up fixing up xilinx_axienet, so can you take a look and make sure it is correct?
Peter, I'm also unsure about the VMState stuff. I think I got it right, but I've not worked with that code before and I haven't been able to figure out how to test it with the versatilepb model. Cheers, g.