From 56b0dde5451ddedfd85c82391536e310cd05e1a8 Mon Sep 17 00:00:00 2001 From: Dana Conrad Date: Sun, 1 Aug 2021 21:58:33 -0500 Subject: Higher bitdepth software volume scaling Operates between 0 and -74 dB (mute) without issue Change-Id: I497e002bd8db43833a09ebbc29212fbb6cc8ebfd --- firmware/drivers/audio/eros_qn_codec.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'firmware/drivers/audio') diff --git a/firmware/drivers/audio/eros_qn_codec.c b/firmware/drivers/audio/eros_qn_codec.c index fdf21d2f9d..17b0acf13e 100644 --- a/firmware/drivers/audio/eros_qn_codec.c +++ b/firmware/drivers/audio/eros_qn_codec.c @@ -70,10 +70,14 @@ void audiohw_set_volume(int vol_l, int vol_r) } #endif - l = l <= PCM5102A_VOLUME_MIN ? PCM_MUTE_LEVEL : l; - r = r <= PCM5102A_VOLUME_MIN ? PCM_MUTE_LEVEL : r; - - pcm_set_master_volume(l, r); + if (l <= PCM5102A_VOLUME_MIN || r <= PCM5102A_VOLUME_MIN) + { + pcm_set_master_volume(PCM_MUTE_LEVEL, PCM_MUTE_LEVEL); + } + else + { + pcm_set_master_volume(l/20, r/20); + } } void audiohw_mute_hp(int mute) -- cgit v1.2.3