Lines Matching refs:e
450 struct ac97_enum *e = (struct ac97_enum *)kcontrol->private_value; in snd_ac97_info_enum_double() local
452 return snd_ctl_enum_info(uinfo, e->shift_l == e->shift_r ? 1 : 2, in snd_ac97_info_enum_double()
453 e->mask, e->texts); in snd_ac97_info_enum_double()
460 struct ac97_enum *e = (struct ac97_enum *)kcontrol->private_value; in snd_ac97_get_enum_double() local
463 for (bitmask = 1; bitmask < e->mask; bitmask <<= 1) in snd_ac97_get_enum_double()
465 val = snd_ac97_read_cache(ac97, e->reg); in snd_ac97_get_enum_double()
466 ucontrol->value.enumerated.item[0] = (val >> e->shift_l) & (bitmask - 1); in snd_ac97_get_enum_double()
467 if (e->shift_l != e->shift_r) in snd_ac97_get_enum_double()
468 ucontrol->value.enumerated.item[1] = (val >> e->shift_r) & (bitmask - 1); in snd_ac97_get_enum_double()
477 struct ac97_enum *e = (struct ac97_enum *)kcontrol->private_value; in snd_ac97_put_enum_double() local
481 for (bitmask = 1; bitmask < e->mask; bitmask <<= 1) in snd_ac97_put_enum_double()
483 if (ucontrol->value.enumerated.item[0] > e->mask - 1) in snd_ac97_put_enum_double()
485 val = ucontrol->value.enumerated.item[0] << e->shift_l; in snd_ac97_put_enum_double()
486 mask = (bitmask - 1) << e->shift_l; in snd_ac97_put_enum_double()
487 if (e->shift_l != e->shift_r) { in snd_ac97_put_enum_double()
488 if (ucontrol->value.enumerated.item[1] > e->mask - 1) in snd_ac97_put_enum_double()
490 val |= ucontrol->value.enumerated.item[1] << e->shift_r; in snd_ac97_put_enum_double()
491 mask |= (bitmask - 1) << e->shift_r; in snd_ac97_put_enum_double()
493 return snd_ac97_update_bits(ac97, e->reg, mask, val); in snd_ac97_put_enum_double()