[alsa-devel] [PATCH 1/2] ALSA: ASoC: add STA32X codec driver

Lars-Peter Clausen lars at metafoo.de
Thu Jun 16 13:51:04 CEST 2011


On 06/16/2011 01:47 PM, Daniel Mack wrote:
> On Thu, Jun 16, 2011 at 1:38 PM, Lars-Peter Clausen <lars at metafoo.de> wrote:
>> On 06/16/2011 01:26 PM, Daniel Mack wrote:
>>> [...]
>>> Looks different now, but I'd say that's still not what you expected:
>>>
>>> # amixer cget numid=39
>>> numid=39,iface=MIXER,name='Limiter1 Attack Threshold (DRC Mode)'
>>>   ; type=INTEGER,access=rw---R--,values=1,min=0,max=16,step=0
>>>   : values=9
>>>   | dBrange-
>>>     rangemin=3,,rangemax=72
>>>       |
>>>     rangemin=3,,rangemax=72
>>>       |
>>>     rangemin=3,,rangemax=72
>>>       |
>>
>> Ok, looks like the current implementation is completely broken...
>>
>
> Nope, that's not yet it ...
>
>> -               while (idx < size) {
>> +               while (size >= 0) {
Should have been while(size > 0) {
>>                        print_spaces(spaces + 2);
>> -                       printf("rangemin=%i,", tlv[0]);
>> -                       printf(",rangemax=%i\n", tlv[1]);
>> -                       decode_tlv(spaces + 4, tlv + 2, 6 * sizeof(unsigned int));
>> -                       idx += 6 * sizeof(unsigned int);
>> +                       printf("rangemin=%i,", tlv[idx++]);
>> +                       printf(",rangemax=%i\n", tlv[idx++]);
>> +                       decode_tlv(spaces + 4, tlv + idx, 4 * sizeof(unsigned int));
>> +                       idx += 4 * sizeof(unsigned int);
Should have been idx += 4;
>> +                       size -= 6 * sizeof(unsigned int);
>>                }
>>                break;
>>  #endif



More information about the Alsa-devel mailing list