Underruns happen playing audio through the SGTL5000
Playing audio files through the SGTL5000 results in buffer xruns and consequent audio dropouts. Having investigated this, the xruns are definitely not a DMA issue and are underruns caused by the absence of incoming ioctl()s from userspace to transfer the audio data. The underruns occur playing audio files from a tmpfs filesystem so hardware storage I/O is not the culprit. There is no regular pattern to the timing of the underruns; there may be many underruns in succession or it may be difficult to see any underrun at all. Rebooting the board seems to disrupt the pattern of underruns.
I've conducted the same tests on the Nitrogen i.MX 6 board which also has an SGTL5000 and found no underruns or any other problems.
I suspect this may be related to the periodic general peaks in latency highlighted by #33.