Lines Matching refs:tea
71 static void snd_tea6330t_set(struct tea6330t *tea,
77 snd_i2c_write(tea->bus, TEA6330T_ADDR, addr, value, 1);
99 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_get_master_volume() local
101 snd_i2c_lock(tea->bus); in snd_tea6330t_get_master_volume()
102 ucontrol->value.integer.value[0] = tea->mleft - 0x14; in snd_tea6330t_get_master_volume()
103 ucontrol->value.integer.value[1] = tea->mright - 0x14; in snd_tea6330t_get_master_volume()
104 snd_i2c_unlock(tea->bus); in snd_tea6330t_get_master_volume()
111 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_put_master_volume() local
118 snd_i2c_lock(tea->bus); in snd_tea6330t_put_master_volume()
119 change = val1 != tea->mleft || val2 != tea->mright; in snd_tea6330t_put_master_volume()
120 tea->mleft = val1; in snd_tea6330t_put_master_volume()
121 tea->mright = val2; in snd_tea6330t_put_master_volume()
123 if (tea->regs[TEA6330T_SADDR_VOLUME_LEFT] != 0) { in snd_tea6330t_put_master_volume()
125 bytes[count++] = tea->regs[TEA6330T_SADDR_VOLUME_LEFT] = tea->mleft; in snd_tea6330t_put_master_volume()
127 if (tea->regs[TEA6330T_SADDR_VOLUME_RIGHT] != 0) { in snd_tea6330t_put_master_volume()
130 bytes[count++] = tea->regs[TEA6330T_SADDR_VOLUME_RIGHT] = tea->mright; in snd_tea6330t_put_master_volume()
133 if ((err = snd_i2c_sendbytes(tea->device, bytes, count)) < 0) in snd_tea6330t_put_master_volume()
136 snd_i2c_unlock(tea->bus); in snd_tea6330t_put_master_volume()
150 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_get_master_switch() local
152 snd_i2c_lock(tea->bus); in snd_tea6330t_get_master_switch()
153 ucontrol->value.integer.value[0] = tea->regs[TEA6330T_SADDR_VOLUME_LEFT] == 0 ? 0 : 1; in snd_tea6330t_get_master_switch()
154 ucontrol->value.integer.value[1] = tea->regs[TEA6330T_SADDR_VOLUME_RIGHT] == 0 ? 0 : 1; in snd_tea6330t_get_master_switch()
155 snd_i2c_unlock(tea->bus); in snd_tea6330t_get_master_switch()
162 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_put_master_switch() local
169 snd_i2c_lock(tea->bus); in snd_tea6330t_put_master_switch()
170 oval1 = tea->regs[TEA6330T_SADDR_VOLUME_LEFT] == 0 ? 0 : 1; in snd_tea6330t_put_master_switch()
171 oval2 = tea->regs[TEA6330T_SADDR_VOLUME_RIGHT] == 0 ? 0 : 1; in snd_tea6330t_put_master_switch()
173 tea->regs[TEA6330T_SADDR_VOLUME_LEFT] = val1 ? tea->mleft : 0; in snd_tea6330t_put_master_switch()
174 tea->regs[TEA6330T_SADDR_VOLUME_RIGHT] = val2 ? tea->mright : 0; in snd_tea6330t_put_master_switch()
176 bytes[1] = tea->regs[TEA6330T_SADDR_VOLUME_LEFT]; in snd_tea6330t_put_master_switch()
177 bytes[2] = tea->regs[TEA6330T_SADDR_VOLUME_RIGHT]; in snd_tea6330t_put_master_switch()
178 if ((err = snd_i2c_sendbytes(tea->device, bytes, 3)) < 0) in snd_tea6330t_put_master_switch()
180 snd_i2c_unlock(tea->bus); in snd_tea6330t_put_master_switch()
192 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_info_bass() local
197 uinfo->value.integer.max = tea->max_bass; in snd_tea6330t_info_bass()
204 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_get_bass() local
206 ucontrol->value.integer.value[0] = tea->bass; in snd_tea6330t_get_bass()
213 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_put_bass() local
218 val1 = ucontrol->value.integer.value[0] % (tea->max_bass + 1); in snd_tea6330t_put_bass()
219 snd_i2c_lock(tea->bus); in snd_tea6330t_put_bass()
220 tea->bass = val1; in snd_tea6330t_put_bass()
221 val1 += tea->equalizer ? 7 : 3; in snd_tea6330t_put_bass()
222 change = tea->regs[TEA6330T_SADDR_BASS] != val1; in snd_tea6330t_put_bass()
224 bytes[1] = tea->regs[TEA6330T_SADDR_BASS] = val1; in snd_tea6330t_put_bass()
225 if ((err = snd_i2c_sendbytes(tea->device, bytes, 2)) < 0) in snd_tea6330t_put_bass()
227 snd_i2c_unlock(tea->bus); in snd_tea6330t_put_bass()
239 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_info_treble() local
244 uinfo->value.integer.max = tea->max_treble; in snd_tea6330t_info_treble()
251 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_get_treble() local
253 ucontrol->value.integer.value[0] = tea->treble; in snd_tea6330t_get_treble()
260 struct tea6330t *tea = snd_kcontrol_chip(kcontrol); in snd_tea6330t_put_treble() local
265 val1 = ucontrol->value.integer.value[0] % (tea->max_treble + 1); in snd_tea6330t_put_treble()
266 snd_i2c_lock(tea->bus); in snd_tea6330t_put_treble()
267 tea->treble = val1; in snd_tea6330t_put_treble()
269 change = tea->regs[TEA6330T_SADDR_TREBLE] != val1; in snd_tea6330t_put_treble()
271 bytes[1] = tea->regs[TEA6330T_SADDR_TREBLE] = val1; in snd_tea6330t_put_treble()
272 if ((err = snd_i2c_sendbytes(tea->device, bytes, 2)) < 0) in snd_tea6330t_put_treble()
274 snd_i2c_unlock(tea->bus); in snd_tea6330t_put_treble()
295 struct tea6330t *tea; in snd_tea6330t_update_mixer() local
302 tea = kzalloc(sizeof(*tea), GFP_KERNEL); in snd_tea6330t_update_mixer()
303 if (tea == NULL) in snd_tea6330t_update_mixer()
306 kfree(tea); in snd_tea6330t_update_mixer()
309 tea->device = device; in snd_tea6330t_update_mixer()
310 tea->bus = bus; in snd_tea6330t_update_mixer()
311 tea->equalizer = equalizer; in snd_tea6330t_update_mixer()
312 tea->fader = fader; in snd_tea6330t_update_mixer()
313 device->private_data = tea; in snd_tea6330t_update_mixer()
319 tea->regs[TEA6330T_SADDR_FADER] = 0x3f; in snd_tea6330t_update_mixer()
320 tea->regs[TEA6330T_SADDR_AUDIO_SWITCH] = equalizer ? 0 : TEA6330T_EQN; in snd_tea6330t_update_mixer()
322 if (!tea->equalizer) { in snd_tea6330t_update_mixer()
323 tea->max_bass = 9; in snd_tea6330t_update_mixer()
324 tea->max_treble = 8; in snd_tea6330t_update_mixer()
326 tea->bass = 4; in snd_tea6330t_update_mixer()
328 tea->treble = 4; in snd_tea6330t_update_mixer()
330 tea->max_bass = 5; in snd_tea6330t_update_mixer()
331 tea->max_treble = 0; in snd_tea6330t_update_mixer()
333 tea->bass = 4; in snd_tea6330t_update_mixer()
335 tea->treble = 0; in snd_tea6330t_update_mixer()
337 tea->mleft = tea->mright = 0x14; in snd_tea6330t_update_mixer()
338 tea->regs[TEA6330T_SADDR_BASS] = default_bass; in snd_tea6330t_update_mixer()
339 tea->regs[TEA6330T_SADDR_TREBLE] = default_treble; in snd_tea6330t_update_mixer()
344 bytes[idx+1] = tea->regs[idx]; in snd_tea6330t_update_mixer()
354 if (tea->treble == 0 && !strcmp(knew->name, "Tone Control - Treble")) in snd_tea6330t_update_mixer()
356 if ((err = snd_ctl_add(card, snd_ctl_new1(knew, tea))) < 0) in snd_tea6330t_update_mixer()