Stuart Longland wrote: > /* ADC PGA gain volumes. From 0 to 59.5 dB in 0.5 dB steps */ > static DECLARE_TLV_DB_MINMAX(adc_tlv, 0, 0); The comment is wrong, this control goes from 0 to 0 dB. > SOC_DOUBLE_R_TLV("PCM Playback Volume", > AIC3204_LDACVOL, AIC3204_RDACVOL, > 0, 127, 0, dac_tlv), > > However; it treats the bitfield as unsigned, which is wrong in this > case. The bitfield is a signed integer in two's complement format. How > do I convince ALSA that these integers have a sign bit? ALSA's controls use signed values, it's the SOC_ macros that assume bitfields. You should be able to define a control with your own callbacks like in a non-ASoC driver. Regards, Clemens _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel