we have a custom board with an i.MX6 Quad running QNX.
During driver development we noticed that register access seems to be quite slow.
The periperial clock is set to 66MHz, which results in a period of approx. 15ns. However, accessing a register e.g. the FIFOs of the ECSPI module takes approx. 300ns, which ich about 20 times slower that the clock.
Furthermore, this does not seem to be a QNX only issue, since measurements in the bootloader (Uboot) provide the same results.
We tried to increase the periperial clock (IPG_CLK_ROOT) by setting the prescaler (IPG_PODF) to 1, but the effect was minimal (approx 270-280ns).
Also, this is not limited to the ECSPI registers (i tried several others of different modules).
Can anyone reproduce these timings or does of any settings (e.g. to the MMU) we missed?