[alsa-devel] Correct value for AK4114_DIF2 constant?

dustin at seznam.cz dustin at seznam.cz
Mon Mar 26 23:52:57 CEST 2007


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.


More information about the Alsa-devel mailing list