I'm setting up the card with:
saa7146_write(saa->mem, DD1_INIT, 0x020006c0);
Then, in interrupt handler I'm reading the actual field ID from the card:
field=0x80&saa7146_read(av7110->saa_mem, PSR);
as opposite to the current code, which is changing[B DD1_INIT in every
fidbirq() call.
Nice work, M., and proper philosophy regarding DMA.
I converted your code to dvb-kernel and tested it in *very* heavy
environment. Packet loss is extremely low, Stability is absolute.
Here's my patch on which I have tested that. fidbirq is now very
smooth :).
Your patch does too many things at once.