On Tue, Nov 04, 2014 at 05:05:25PM +0000, Daniel Thompson wrote:
This week with the help of one of my colleagues (thanks Tixy) I have been able to run some tests and figure out what it going on on vexpress-a9.
The summary is that on some GICv1 implementations the bit to enable group 1 interrupts cannot be accessed using secure memory accesses. More specifically the presence/absence of the EnableGrp1 bit in the secure version GICD_CTRL register is implementation defined.
My original patches overlooked this and as a result the existing code will migrate all interrupts to group but then cannot enable delivery of group 1 interrupts.
I'm planning to respin the code so it will automatically disable FIQ support when the EnableGrp1 bit is not implemented. This means vexpress-a9 will not benefit from FIQ support but will also not be harmed by it.
That's good news, and it should mean that the Versatile Express starts booting on the nightly boot tests again. Thanks for looking into it.