Hi Bas,
I don't know if you are still interested in it, but I had a similar problem with MD5 and MDHA.
The trick was to first set MDDSR and then fill the fifo with data. Wait for IFL to clear.
Loop the above until all data is processed. Then give the GO cmd and wait for DONE/INT.
Read the result.
For example:
MDDSR=64 // 64 bytes to come
fill fifo with 16 longwords
wait for IFL==0
MDDSR=64 // 64 bytes to come
fill fifo with 16 longwords
wait for IFL==0
....
GO
wait for DONE
Regards,
Georg