Hi Alex,
I'd assume that seL4 uses the GTC or the cpu private timer(s)? I must admit, that I didn't look into them - I just used the existing imx6 and imx7 targets for comparison. And although both do also have cpu private timer(s), they use different timers (epit and gpt) in the case of seL4/Genode. Therefore I was under the impression, that a dedicated (multi-purpose) timer is necessary.
I had a brief look at the sel4 source code. in src/plat/zynq7000 there are two dts files which suggest that the standard version uses the private timer whereas the mcs version uses the GTC.
My tickrate should therefore be: 108.000 ticks/ms or when using a prescaler value of 2^6=128 => ~1688 ticks/ms Since the prescaler register uses the following formula count/2^(N+1), I set it to 0x5.
2^6 is actually 64 so maybe this explains why the timer is off by factor 2.