AMD ACP raven ridge: invalid audio mode 2

Janpieter Sollie janpieter.sollie at kabelmail.de
Thu Dec 10 10:45:24 CET 2020


Hi Vijendar,

Thank you, the patch got rid of the error message.

Well, I'm not an ALSA expert (more like a noob), but I'll ask the manufacturer (UDOO Bolt, ryzen
v1000) about details for the SOC modes then, they *might* be able to show me something which
could lead to a (more or less) good implementation.
that said: would it be possible to get more info about the device an ABI or something?

The PCI registers show me the following:
frisbee /usr/src/linux # lspci -xxxxx -s 04:00.5
04:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir
Audio Processor
00: 22 10 e2 15 06 04 10 00 00 00 80 04 10 00 80 00
10: 00 00 68 fe 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 22 10 e2 15
30: 00 00 00 00 48 00 00 00 00 00 00 00 ff 02 00 00
40: 00 00 00 00 00 00 00 00 09 50 08 00 22 10 e2 15
50: 01 64 03 c8 0b 01 00 00 00 00 00 00 00 00 00 00
60: 00 00 00 00 10 a0 02 00 a1 8f 00 00 30 29 00 00
70: 03 0d 40 00 40 00 03 11 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 08 70 00 00 00 00 00
90: 0e 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00
a0: 05 00 81 00 00 00 e0 fe 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
100: 0b 00 01 00 01 00 01 01 00 00 00 00 00 00 00 00

Where can I find more info about what these registers mean (if anything, I'll ask the udoo guys
about the device specific bytes)?

Janpieter

Op 10/12/2020 om 01:12 schreef Mukunda,Vijendar:
>
>
> On 10/12/20 12:18 am, Mukunda,Vijendar wrote:
>>
>
>>>
>>> So, if I understand correctly, the snd_pci_acp3x module initialised the acp to mode 0x2, and
>>> then decides the mode is not supported?
>>> doesn't this sound a little weird to you?
>>
>> On Raven Ridge platform, ACP device enumerated by PCI root.ACP PCI driver creates child nodes
>> for I2S device.
>>
>> Currently we had added support for only I2S configuration.
>> We recently fixed audio driver probe failure issue when Audio configuration is set to other
>> than I2S.
>>
>> When Audio Configuration is set to other than I2S, load the ACP PCI driver instead of
>> returning probe failure.
>> Below patch already got merged in to asoc-next branch.
>>
>> https://lore.kernel.org/alsa-devel/1603476441-3506-1-git-send-email-Vijendar.Mukunda@amd.com/
>>
>>
>> Thanks,
>> Vijendar
>>
>>
>
> To add more to my previous explanation, Based on platform audio configuration, I2S_PIN_CONFIG
> value is programmed from BIOS.
>
> ACP PCI driver during its probe it only checks what is the audio configuration is really set.
>
> If it sees current configuration is set to I2S, then ACP PCI driver
> will go ahead and create the platform devices required for I2S endpoint.
>
> If it is other than I2S audio configuration, it wont create the child node and returns the
> probe as success.
>
> ACP IP do's lot more stuff beyond supporting simple audio endpoints.
> For other audio configurations, we have added a default case
> and left it as a place holder for future implementation.
>
>
> Thanks,
> Vijendar
>
> .





More information about the Alsa-devel mailing list