diff options
Diffstat (limited to 'firmware/drivers')
-rw-r--r-- | firmware/drivers/audio/mas35xx.c | 20 | ||||
-rw-r--r-- | firmware/drivers/audio/wm8751.c | 2 |
2 files changed, 21 insertions, 1 deletions
diff --git a/firmware/drivers/audio/mas35xx.c b/firmware/drivers/audio/mas35xx.c index dac890ddc8..983818bf61 100644 --- a/firmware/drivers/audio/mas35xx.c +++ b/firmware/drivers/audio/mas35xx.c | |||
@@ -150,3 +150,23 @@ void audiohw_set_stereo_width(int val) | |||
150 | set_channel_config(); | 150 | set_channel_config(); |
151 | } | 151 | } |
152 | } | 152 | } |
153 | |||
154 | void audiohw_set_bass(int val) | ||
155 | { | ||
156 | #if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) | ||
157 | unsigned tmp = ((unsigned)(val * 8) & 0xff) << 8; | ||
158 | mas_codec_writereg(0x14, tmp); | ||
159 | #elif CONFIG_CODEC == MAS3507D | ||
160 | mas_writereg(MAS_REG_KBASS, bass_table[val+15]); | ||
161 | #endif | ||
162 | } | ||
163 | |||
164 | void audiohw_set_treble(int val) | ||
165 | { | ||
166 | #if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) | ||
167 | unsigned tmp = ((unsigned)(val * 8) & 0xff) << 8; | ||
168 | mas_codec_writereg(0x15, tmp); | ||
169 | #elif CONFIG_CODEC == MAS3507D | ||
170 | mas_writereg(MAS_REG_KTREBLE, treble_table[val+15]); | ||
171 | #endif | ||
172 | } | ||
diff --git a/firmware/drivers/audio/wm8751.c b/firmware/drivers/audio/wm8751.c index 831f16ab17..26123456b6 100644 --- a/firmware/drivers/audio/wm8751.c +++ b/firmware/drivers/audio/wm8751.c | |||
@@ -79,7 +79,7 @@ static int tone_tenthdb2hw(int value) | |||
79 | /* -6.0db..+0db..+9.0db step 1.5db - translate -60..+0..+90 step 15 | 79 | /* -6.0db..+0db..+9.0db step 1.5db - translate -60..+0..+90 step 15 |
80 | to 10..6..0 step -1. | 80 | to 10..6..0 step -1. |
81 | */ | 81 | */ |
82 | value = 10 - (value + 60) / 15; | 82 | value = (10 - (value + 60) / 15) / 10; |
83 | 83 | ||
84 | if (value == 6) | 84 | if (value == 6) |
85 | value = 0xf; /* 0db -> off */ | 85 | value = 0xf; /* 0db -> off */ |