05-11-2017 09:04 AM - edited 05-11-2017 09:09 AM
I have some logic in my PL that reads data through an HP AXI port, process it, and then writes the data back to memory though the same port. I have noticed that if I boot the board with an active PMU firmware, the data throughput reduces to less than 50% of its initial value. The PL seems to idle most of the time, waiting for input data to arrive, or waiting for the output data to be written. Somehow the memory throughput seems to be cut in half.
I noticed this problem when updating from PetaLinux 2016.4 to 2017.1. I was not using a PMU firmware on 2016.4, as I couldn't get the system to boot with it. PetaLinux 2017.1, however, only seems to boot with a running PMU firmware. For testing, I was able to boot 2016.4 with and without the 2017.1 PMU firmware. Whenever the PMU firmware is loaded, this issue occurs.
I'm not sure what might be the cause. Maybe the PMU firmware messes up the clock configuration or produces a high load on the memory bus. I was able to confirm that at least the PL fabric clock is running at the desired frequency.
I have attached the full Linux boot log with PMU debugging outputs.