Since several S/PDIF sources do not set the valnogood bit properly, valnogood shouldn't be considered as an error.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18322 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jens Arnold 2008-08-19 23:07:54 +00:00
parent 425d0ef22e
commit 0d49141637

View file

@ -479,11 +479,12 @@ void DMA1(void)
}
#ifdef HAVE_SPDIF_REC
else if (DATAINCONTROL == 0xc038 &&
(INTERRUPTSTAT & ((1 << 24) | (1 << 23) | (1 << 22))))
(INTERRUPTSTAT & ((1 << 23) | (1 << 22))))
{
/* reason: valnogood, symbolerr, parityerr */
/* clear: ebu1cnew, valnogood, symbolerr, parityerr */
INTERRUPTCLEAR = (1 << 25) | (1 << 24) | (1 << 23) | (1 << 22);
/* reason: symbolerr, parityerr.
* Ignore valnogood since several sources don't set it properly. */
/* clear: ebu1cnew, symbolerr, parityerr */
INTERRUPTCLEAR = (1 << 25) | (1 << 23) | (1 << 22);
status = DMA_REC_ERROR_SPDIF;
logf("spdif err");
}