diff options
-rw-r--r-- | firmware/drivers/audio/as3514.c | 12 | ||||
-rw-r--r-- | firmware/export/as3514.h | 6 |
2 files changed, 7 insertions, 11 deletions
diff --git a/firmware/drivers/audio/as3514.c b/firmware/drivers/audio/as3514.c index a996610899..d9ff94a95e 100644 --- a/firmware/drivers/audio/as3514.c +++ b/firmware/drivers/audio/as3514.c | |||
@@ -190,7 +190,7 @@ void audiohw_preinit(void) | |||
190 | #endif | 190 | #endif |
191 | 191 | ||
192 | #ifdef HAVE_AS3543 | 192 | #ifdef HAVE_AS3543 |
193 | as3514_clear(AS3543_DAC_IF, 0x80); | 193 | as3514_write(AS3543_DAC_IF, AS3543_DAC_INT_PLL); |
194 | as3514_set(AS3514_LINE_IN1_R, LINE_IN_R_LINE_SELECT); /* Line 2 */ | 194 | as3514_set(AS3514_LINE_IN1_R, LINE_IN_R_LINE_SELECT); /* Line 2 */ |
195 | #else | 195 | #else |
196 | /* Mute and disable speaker */ | 196 | /* Mute and disable speaker */ |
@@ -284,15 +284,9 @@ void audiohw_mute(bool mute) | |||
284 | { | 284 | { |
285 | if (mute) { | 285 | if (mute) { |
286 | as3514_set(AS3514_HPH_OUT_L, HPH_OUT_L_HP_MUTE); | 286 | as3514_set(AS3514_HPH_OUT_L, HPH_OUT_L_HP_MUTE); |
287 | #ifdef HAVE_AS3543 | ||
288 | as3514_set(AS3543_DAC_IF, 0x80); | ||
289 | #endif | ||
290 | 287 | ||
291 | } else { | 288 | } else { |
292 | as3514_clear(AS3514_HPH_OUT_L, HPH_OUT_L_HP_MUTE); | 289 | as3514_clear(AS3514_HPH_OUT_L, HPH_OUT_L_HP_MUTE); |
293 | #ifdef HAVE_AS3543 | ||
294 | as3514_clear(AS3543_DAC_IF, 0x80); | ||
295 | #endif | ||
296 | } | 290 | } |
297 | } | 291 | } |
298 | 292 | ||
@@ -313,10 +307,6 @@ void audiohw_close(void) | |||
313 | as3514_clear(AS3514_HPH_OUT_L, HPH_OUT_L_HP_ON); | 307 | as3514_clear(AS3514_HPH_OUT_L, HPH_OUT_L_HP_ON); |
314 | as3514_write(AS3514_AUDIOSET1, 0x0); | 308 | as3514_write(AS3514_AUDIOSET1, 0x0); |
315 | 309 | ||
316 | #ifdef HAVE_AS3543 | ||
317 | as3514_set(AS3543_DAC_IF, 0x80); | ||
318 | #endif | ||
319 | |||
320 | /* Allow caps to discharge */ | 310 | /* Allow caps to discharge */ |
321 | sleep(HZ/4); | 311 | sleep(HZ/4); |
322 | } | 312 | } |
diff --git a/firmware/export/as3514.h b/firmware/export/as3514.h index 2db28397f1..40bf512517 100644 --- a/firmware/export/as3514.h +++ b/firmware/export/as3514.h | |||
@@ -222,6 +222,12 @@ extern void audiohw_set_lineout_vol(int vol_l, int vol_r); | |||
222 | #endif | 222 | #endif |
223 | /* Use AS3514_VOL_MASK */ | 223 | /* Use AS3514_VOL_MASK */ |
224 | 224 | ||
225 | /* DAC_IF (11h) */ | ||
226 | #ifdef HAVE_AS3543 | ||
227 | #define AS3543_DAC_INT_PLL (0x0 << 7) | ||
228 | #define AS3543_DAC_EXT_MCLK (0x1 << 7) | ||
229 | #endif | ||
230 | |||
225 | /* AUDIOSET1 (14h)*/ | 231 | /* AUDIOSET1 (14h)*/ |
226 | #define AUDIOSET1_ADC_on (0x1 << 7) | 232 | #define AUDIOSET1_ADC_on (0x1 << 7) |
227 | #define AUDIOSET1_SUM_on (0x1 << 6) | 233 | #define AUDIOSET1_SUM_on (0x1 << 6) |