Wouldn't the ultimate solution be to simply use FIQs to service the MMC FIFO?
The ultimate solution is to super-size FIFO ;-) It's not impossible (as the motherboard peripherals live in a FPGA), but according to our board people may be tricky due to the MMCI design (it's just ancient, that's all).
Now, the first thing I did was bumping the MMCI interrupts priorities, then I was considering use of FIQ. But - as Russell pointed out - it's simply not so simple...
the secure world could provide some kind of software based DMA engine facility to the non-secure world for this FIFO servicing purpose.
It's very, very unrealistic to expect any secure stack implementation (say, Visa or MasterCard authorization software) to provide such feature for anyone.
So - we'll try to enlarge FIFO. For the moment - playing with interrupts affinity seem to be a viable workaround.
Cheers!
Paweł