AS3543: Fix recording volume setting and voice

Fix regressions introduced by 42219b6e7

Change-Id: I1f3edb5f269f60e9431b45a43c4370836ecac733
This commit is contained in:
Mihail Zenkov 2015-02-15 00:26:02 +00:00 committed by Michael Giacomelli
parent 2ec6fbc827
commit 3e5e9cf7d7

View file

@ -299,7 +299,8 @@ void audiohw_set_volume(int vol_l, int vol_r)
}
#ifdef HAVE_AS3543
if (!(as3514_regs[AS3514_HPH_OUT_R] & 0x40)) { /*if not radio or recording*/
/*if not radio or recording*/
if (!(as3514_regs[AS3514_AUDIOSET1] & (AUDIOSET1_ADC_on | AUDIOSET1_LIN1_on))) {
if (!hph_l || !hph_r) { /*if volume higher, disable the mixer to slightly improve noise*/
as3514_write(AS3514_AUDIOSET1, AUDIOSET1_DAC_on | AUDIOSET1_DAC_GAIN_on);
as3514_write(AS3514_AUDIOSET2, AUDIOSET2_AGC_off | AUDIOSET2_HPH_QUALITY_LOW_POWER);
@ -484,7 +485,7 @@ void audiohw_set_monitor(bool enable)
{
if (enable) {
#ifdef HAVE_AS3543
as3514_write_masked(AS3514_HPH_OUT_R, HPH_OUT_R_HP_OUT_LINE, HPH_OUT_R_HP_OUT_MASK);
as3514_write_masked(AS3514_HPH_OUT_R, HPH_OUT_R_HP_OUT_SUM, HPH_OUT_R_HP_OUT_MASK);
#endif
/* select either LIN1 or LIN2 */
as3514_write_masked(AS3514_AUDIOSET1, AUDIOSET1_LIN_on,