On Sep 29, 2015, at 11:47 , Benoît Thébaudeau benoit.thebaudeau.dev@gmail.com wrote:
Dear Rick Mann,
On Tue, Sep 29, 2015 at 12:38 PM, Rick Mann rmann@latencyzero.com wrote:
Hi. I came across some bugs in sound/soc/codecs/tlv320aic3x.c, wherein it writes non-zero values to reserved registers on the tlv320aic3104 (I found it in 4.1.4, but it's still in 4.3-rc3). I have an untested proposed patch. But I don't know anything about how to report it or offer it.
What should I do? Thanks.
Follow this: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documen...
Thanks, will do.
Nothing should be done for these registers on 3104, not even setting them to 0. The datasheet says "Do not write to this register.".
Indeed, it does say that. I'll change the code.
However, it also says not to write certain bits within a register, which is impossible (e.g. Table 88, Register 86, bit D2, "Reserved. Do not write to this register bit.").
} else {
/* Line2 to HP Bypass default volume, disconnect from Output Mixer */
snd_soc_write(codec, LINE2L_2_HPLOUT_VOL, DEFAULT_VOL);
snd_soc_write(codec, LINE2R_2_HPROUT_VOL, DEFAULT_VOL);
snd_soc_write(codec, LINE2L_2_HPLCOM_VOL, DEFAULT_VOL);
snd_soc_write(codec, LINE2R_2_HPRCOM_VOL, DEFAULT_VOL);
/* Line2 Line Out default volume, disconnect from Output Mixer */
snd_soc_write(codec, LINE2L_2_LLOPM_VOL, DEFAULT_VOL);
snd_soc_write(codec, LINE2R_2_RLOPM_VOL, DEFAULT_VOL);
}
Correct.
Thanks!