Hello,
While going through AK4114 support I have hit the constant AK4114_DIF2 in ak4114.h . I would say its value should be (1<<6) according to AK4114 datasheet.
This is current situation: #define AK4114_DIF2 (1<<5) /* Audio Data Control */ #define AK4114_DIF1 (1<<5) /* Audio Data Control */ #define AK4114_DIF0 (1<<4) /* Audio Data Control */
I think cards using this code should experience related problems. E.g. in juli.c and revo.c the constant #define AK4114_DIF_I24I2S (AK4114_DIF2|AK4114_DIF1|AK4114_DIF0) /* STDO: I2S; LRCLK, BICK = Input */
is used, intended to set output serial data mode to I2S/slave perhaps compatible with ICE1712/24. This may be causing problems mentioned in revo.c:
#if 0 /* FIXME: ak4114 makes the sound much lower due to some confliction, * so let's disable it right now... */ #define BUILD_AK4114_AP192 #endif
I am trying to add support for SPDIF-IN of AudioTrak MI/ODI/O addon card (ice1724 + ak4114), hopefully this will be a little step forward.
Thanks for any reaction.
Best regards,
Pavel.