Colin Guthrie wrote: > What is odd about this tho', is that the flag for min is mute (0x10000) > is checked on tlv[3] which is also used here for the "max" value. SND_CTL_TLVT_DB_SCALE uses a flag in tlv[3] to indicate min-is-mute, but SND_CTL_TLVT_DB_MINMAX has a variant SND_CTL_TLVT_DB_MINMAX_MUTE. (The HDA driver uses DB_SCALE). > + if (db_gain <= min) { > *value = rangemin; > + if (xdir > 0 && (tlv[3] & 0x10000) && db_gain > SND_CTL_TLV_DB_GAIN_MUTE) > + *value = rangemin + 1; This should go at the same place in the SND_CTL_TLVT_DB_SCALE branch. Regards, Clemens _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel