summaryrefslogtreecommitdiff
path: root/firmware/drivers/audio/mas35xx.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/drivers/audio/mas35xx.c')
-rw-r--r--firmware/drivers/audio/mas35xx.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/firmware/drivers/audio/mas35xx.c b/firmware/drivers/audio/mas35xx.c
index ae94cbacf0..342d8a3c2e 100644
--- a/firmware/drivers/audio/mas35xx.c
+++ b/firmware/drivers/audio/mas35xx.c
@@ -31,7 +31,7 @@ const struct sound_settings_info audiohw_settings[] = {
31 [SOUND_VOLUME] = {"dB", 0, 1,-100, 12, -25}, 31 [SOUND_VOLUME] = {"dB", 0, 1,-100, 12, -25},
32 [SOUND_BASS] = {"dB", 0, 1, -12, 12, 6}, 32 [SOUND_BASS] = {"dB", 0, 1, -12, 12, 6},
33 [SOUND_TREBLE] = {"dB", 0, 1, -12, 12, 6}, 33 [SOUND_TREBLE] = {"dB", 0, 1, -12, 12, 6},
34#else /* MAS3507D */ 34#elif CONFIG_CODEC == MAS3507D
35 [SOUND_VOLUME] = {"dB", 0, 1, -78, 18, -18}, 35 [SOUND_VOLUME] = {"dB", 0, 1, -78, 18, -18},
36 [SOUND_BASS] = {"dB", 0, 1, -15, 15, 7}, 36 [SOUND_BASS] = {"dB", 0, 1, -15, 15, 7},
37 [SOUND_TREBLE] = {"dB", 0, 1, -15, 15, 7}, 37 [SOUND_TREBLE] = {"dB", 0, 1, -15, 15, 7},
@@ -68,6 +68,7 @@ static void set_channel_config(void)
68 unsigned long val_lr = 0; 68 unsigned long val_lr = 0;
69 unsigned long val_rl = 0; 69 unsigned long val_rl = 0;
70 unsigned long val_rr = 0x80000; 70 unsigned long val_rr = 0x80000;
71 int bank;
71 72
72 switch(channel_configuration) 73 switch(channel_configuration)
73 { 74 {
@@ -127,16 +128,15 @@ static void set_channel_config(void)
127 } 128 }
128 129
129#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) 130#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
130 mas_writemem(MAS_BANK_D0, MAS_D0_OUT_LL, &val_ll, 1); /* LL */ 131 bank = MAS_BANK_D0;
131 mas_writemem(MAS_BANK_D0, MAS_D0_OUT_LR, &val_lr, 1); /* LR */
132 mas_writemem(MAS_BANK_D0, MAS_D0_OUT_RL, &val_rl, 1); /* RL */
133 mas_writemem(MAS_BANK_D0, MAS_D0_OUT_RR, &val_rr, 1); /* RR */
134#elif CONFIG_CODEC == MAS3507D 132#elif CONFIG_CODEC == MAS3507D
135 mas_writemem(MAS_BANK_D1, 0x7f8, &val_ll, 1); /* LL */ 133 bank = MAS_BANK_D1;
136 mas_writemem(MAS_BANK_D1, 0x7f9, &val_lr, 1); /* LR */
137 mas_writemem(MAS_BANK_D1, 0x7fa, &val_rl, 1); /* RL */
138 mas_writemem(MAS_BANK_D1, 0x7fb, &val_rr, 1); /* RR */
139#endif 134#endif
135
136 mas_writemem(bank, MAS_D0_OUT_LL, &val_ll, 1); /* LL */
137 mas_writemem(bank, MAS_D0_OUT_LR, &val_lr, 1); /* LR */
138 mas_writemem(bank, MAS_D0_OUT_RL, &val_rl, 1); /* RL */
139 mas_writemem(bank, MAS_D0_OUT_RR, &val_rr, 1); /* RR */
140} 140}
141 141
142void audiohw_set_channel(int val) 142void audiohw_set_channel(int val)
@@ -157,7 +157,7 @@ void audiohw_set_bass(int val)
157{ 157{
158#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) 158#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
159 unsigned tmp = ((unsigned)(val * 8) & 0xff) << 8; 159 unsigned tmp = ((unsigned)(val * 8) & 0xff) << 8;
160 mas_codec_writereg(0x14, tmp); 160 mas_codec_writereg(MAS_REG_KBASS, tmp);
161#elif CONFIG_CODEC == MAS3507D 161#elif CONFIG_CODEC == MAS3507D
162 mas_writereg(MAS_REG_KBASS, bass_table[val+15]); 162 mas_writereg(MAS_REG_KBASS, bass_table[val+15]);
163#endif 163#endif
@@ -174,7 +174,7 @@ void audiohw_set_treble(int val)
174{ 174{
175#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) 175#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
176 unsigned tmp = ((unsigned)(val * 8) & 0xff) << 8; 176 unsigned tmp = ((unsigned)(val * 8) & 0xff) << 8;
177 mas_codec_writereg(0x15, tmp); 177 mas_codec_writereg(MAS_REG_KTREBLE, tmp);
178#elif CONFIG_CODEC == MAS3507D 178#elif CONFIG_CODEC == MAS3507D
179 mas_writereg(MAS_REG_KTREBLE, treble_table[val+15]); 179 mas_writereg(MAS_REG_KTREBLE, treble_table[val+15]);
180#endif 180#endif
@@ -183,11 +183,11 @@ void audiohw_set_treble(int val)
183#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) 183#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
184void audiohw_set_volume(int val) { 184void audiohw_set_volume(int val) {
185 unsigned tmp = ((unsigned)(val + 115) & 0xff) << 8; 185 unsigned tmp = ((unsigned)(val + 115) & 0xff) << 8;
186 mas_codec_writereg(0x10, tmp); 186 mas_codec_writereg(MAS_REG_VOLUME_CONTROL, tmp);
187} 187}
188 188
189void audiohw_set_balance(int val) { 189void audiohw_set_balance(int val) {
190 unsigned tmp = ((unsigned)(val * 127 / 100) & 0xff) << 8; 190 unsigned tmp = ((unsigned)(val * 127 / 100) & 0xff) << 8;
191 mas_codec_writereg(0x11, tmp); 191 mas_codec_writereg(MAS_REG_BALANCE, tmp);
192} 192}
193#endif 193#endif