Lines Matching refs:info

55 	ac97_source_info *info = (ac97_source_info *)cookie;
61 value = auich_codec_read(&dev->config, info->reg);
63 if (info->type & B_MIX_STEREO) {
64 mask = ((1 << (info->bits + 1)) - 1) << 8;
65 gain = ((value & mask) >> 8) * info->granularity;
66 if (info->polarity == 1)
67 values[0] = info->max_gain - gain;
69 values[0] = gain - info->min_gain;
71 mask = ((1 << (info->bits + 1)) - 1);
72 gain = (value & mask) * info->granularity;
73 if (info->polarity == 1)
74 values[1] = info->max_gain - gain;
76 values[1] = gain - info->min_gain;
78 mask = ((1 << (info->bits + 1)) - 1);
79 gain = (value & mask) * info->granularity;
80 if (info->polarity == 1)
81 values[0] = info->max_gain - gain;
83 values[0] = gain - info->min_gain;
88 value = auich_codec_read(&dev->config, info->reg);
95 value = auich_codec_read(&dev->config, info->reg);
114 ac97_source_info *info = (ac97_source_info *)cookie;
120 value = auich_codec_read(&dev->config, info->reg);
121 if (info->type & B_MIX_STEREO) {
122 mask = ((1 << (info->bits + 1)) - 1) << 8;
125 if (info->polarity == 1)
126 gain = info->max_gain - values[0];
128 gain = values[0] - info->min_gain;
129 value |= ((uint16)(gain / info->granularity) << 8) & mask;
131 mask = ((1 << (info->bits + 1)) - 1);
133 if (info->polarity == 1)
134 gain = info->max_gain - values[1];
136 gain = values[1] - info->min_gain;
137 value |= ((uint16)(gain / info->granularity)) & mask;
139 mask = ((1 << (info->bits + 1)) - 1);
141 if (info->polarity == 1)
142 gain = info->max_gain - values[0];
144 gain = values[0] - info->min_gain;
145 value |= ((uint16)(gain / info->granularity)) & mask;
148 auich_codec_write(&dev->config, info->reg, value);
152 value = auich_codec_read(&dev->config, info->reg);
155 if (info->reg == AC97_SURR_VOLUME) {
162 auich_codec_write(&dev->config, info->reg, value);
166 value = auich_codec_read(&dev->config, info->reg);
170 auich_codec_write(&dev->config, info->reg, value);
206 const ac97_source_info *info;
215 info = &source_info[i];
216 PRINT(("name : %s\n", info->name));
218 parent2 = auich_create_group_control(multi, &index, parent, 0, info->name);
220 if (info->type & B_MIX_GAIN) {
221 if (info->type & B_MIX_MUTE) {
227 multi->controls[index].cookie = info;
238 strcpy(multi->controls[index].mix_control.name, info->name);
239 multi->controls[index].mix_control.u.gain.min_gain = info->min_gain;
240 multi->controls[index].mix_control.u.gain.max_gain = info->max_gain;
241 multi->controls[index].mix_control.u.gain.granularity = info->granularity;
242 multi->controls[index].cookie = info;
249 if (info->type & B_MIX_STEREO) {
254 strcpy(multi->controls[index].mix_control.name, info->name);
255 multi->controls[index].mix_control.u.gain.min_gain = info->min_gain;
256 multi->controls[index].mix_control.u.gain.max_gain = info->max_gain;
257 multi->controls[index].mix_control.u.gain.granularity = info->granularity;
258 multi->controls[index].cookie = info;
265 if (info->type & B_MIX_MICBOOST) {
271 multi->controls[index].cookie = info;
283 info = &source_info[0];
284 PRINT(("name : %s\n", info->name));
286 parent2 = auich_create_group_control(multi, &index, parent, 0, info->name);
288 if (info->type & B_MIX_GAIN) {
289 if (info->type & B_MIX_MUTE) {
295 multi->controls[index].cookie = info;
306 strcpy(multi->controls[index].mix_control.name, info->name);
307 multi->controls[index].mix_control.u.gain.min_gain = info->min_gain;
308 multi->controls[index].mix_control.u.gain.max_gain = info->max_gain;
309 multi->controls[index].mix_control.u.gain.granularity = info->granularity;
310 multi->controls[index].cookie = info;
317 if (info->type & B_MIX_STEREO) {
322 strcpy(multi->controls[index].mix_control.name, info->name);
323 multi->controls[index].mix_control.u.gain.min_gain = info->min_gain;
324 multi->controls[index].mix_control.u.gain.max_gain = info->max_gain;
325 multi->controls[index].mix_control.u.gain.granularity = info->granularity;
326 multi->controls[index].cookie = info;
333 if (info->type & B_MIX_RECORDMUX) {
338 multi->controls[index].cookie = info;
655 switch(card->info.vendor_id) {