On 27.1.2013 16:49, Jonas Petersen wrote:
in ap192_ak4114_init() of revo.c I see this:
static const unsigned char ak4114_init_vals[] = { AK4114_RST | AK4114_PWN | AK4114_OCKS0 | AK4114_OCKS1, AK4114_DIF_I24I2S, AK4114_TX1E, AK4114_EFH_1024 | AK4114_DIT | AK4114_IPS(1), 0, 0 }; static const unsigned char ak4114_init_txcsb[] = { 0x41, 0x02, 0x2c, 0x00, 0x00 };
Something wrong here maybe?
These values look correct.
I noticed that the ak4114_init_vals array has 6 values but in ap192_ak4114_init() 7 values get written to ak4114.regmap.
Right, looks like a bug in snd_ak4114_create. Nevertheless the 7th reg RCS0 is read-only, writing anything bogus should not affect the operation.
What does the ak4114 regs dump in /proc/asound... dir of your audiophile192 look like? The snd_ak4114_proc_regs_read method reads real values from the regs.
@Pavel, btw. I also have an ESI Juli@. Spdif capture with this one does not work at all (as compared to "kind of working" with the Audiophile 192).
Interesting. I am pretty sure I tested the SPDIF input of Juli quite extensively. It even reported the incoming samplerate correctly. How did you test it? Please list amixer contents and ak4114 regs here. Thanks.
Pavel.