Lines Matching refs:mix
61 #define rsnd_mix_get(priv, id) ((struct rsnd_mix *)(priv->mix) + id)
66 ((pos) = (struct rsnd_mix *)(priv)->mix + i); \
81 #define rsnd_mix_get_vol(mix, X) \ argument
82 rsnd_flags_has(mix, HAS_VOL##X) ? \
83 (VOL_MAX - rsnd_kctrl_vals(mix->volume##X)) : 0
89 struct rsnd_mix *mix = rsnd_mod_to_mix(mod); in rsnd_mix_volume_parameter() local
90 u32 volA = rsnd_mix_get_vol(mix, A); in rsnd_mix_volume_parameter()
91 u32 volB = rsnd_mix_get_vol(mix, B); in rsnd_mix_volume_parameter()
92 u32 volC = rsnd_mix_get_vol(mix, C); in rsnd_mix_volume_parameter()
93 u32 volD = rsnd_mix_get_vol(mix, D); in rsnd_mix_volume_parameter()
107 struct rsnd_mix *mix = rsnd_mod_to_mix(mod); in rsnd_mix_volume_init() local
115 rsnd_mod_write(mod, MIX_MIXMR, rsnd_kctrl_vals(mix->ren)); in rsnd_mix_volume_init()
116 rsnd_mod_write(mod, MIX_MVPDR, rsnd_kctrl_vals(mix->rup) << 8 | in rsnd_mix_volume_init()
117 rsnd_kctrl_vals(mix->rdw)); in rsnd_mix_volume_init()
181 struct rsnd_mix *mix = rsnd_mod_to_mix(mod); in rsnd_mix_pcm_new() local
189 volume = &mix->volumeA; in rsnd_mix_pcm_new()
190 rsnd_flags_set(mix, HAS_VOLA); in rsnd_mix_pcm_new()
194 volume = &mix->volumeB; in rsnd_mix_pcm_new()
195 rsnd_flags_set(mix, HAS_VOLB); in rsnd_mix_pcm_new()
199 volume = &mix->volumeC; in rsnd_mix_pcm_new()
200 rsnd_flags_set(mix, HAS_VOLC); in rsnd_mix_pcm_new()
204 volume = &mix->volumeD; in rsnd_mix_pcm_new()
205 rsnd_flags_set(mix, HAS_VOLD); in rsnd_mix_pcm_new()
222 if (rsnd_flags_has(mix, ONCE_KCTRL_INITIALIZED)) in rsnd_mix_pcm_new()
230 &mix->ren, 1); in rsnd_mix_pcm_new()
238 &mix->rup, in rsnd_mix_pcm_new()
248 &mix->rdw, in rsnd_mix_pcm_new()
252 rsnd_flags_set(mix, ONCE_KCTRL_INITIALIZED); in rsnd_mix_pcm_new()
293 struct rsnd_mix *mix; in rsnd_mix_probe() local
312 mix = devm_kcalloc(dev, nr, sizeof(*mix), GFP_KERNEL); in rsnd_mix_probe()
313 if (!mix) { in rsnd_mix_probe()
319 priv->mix = mix; in rsnd_mix_probe()
324 mix = rsnd_mix_get(priv, i); in rsnd_mix_probe()
336 ret = rsnd_mod_init(priv, rsnd_mod_get(mix), &rsnd_mix_ops, in rsnd_mix_probe()
354 struct rsnd_mix *mix; in rsnd_mix_remove() local
357 for_each_rsnd_mix(mix, priv, i) { in rsnd_mix_remove()
358 rsnd_mod_quit(rsnd_mod_get(mix)); in rsnd_mix_remove()