On 24.09.2024 11:59, Mark Brown wrote:
>
>
> On Tue, Sep 24, 2024 at 11:12:38AM +0300, Andrei Simion wrote:
>
>> Update the driver to prevent alsa-restore.service from failing when
>> reading data from /var/lib/alsa/asound.state at boot. Ensure that the
>> restoration of ALSA mixer configurations is skipped if substream->runtime
>> is NULL.
>> +++ b/sound/soc/atmel/mchp-pdmc.c
>> @@ -302,6 +302,9 @@ static int mchp_pdmc_chmap_ctl_put(struct snd_kcontrol *kcontrol,
>> if (!substream)
>> return -ENODEV;
>>
>> + if (!substream->runtime)
>> + return 0; /* just for avoiding error from alsactl restore */
>> +
> This then means that control writes are just discarded which presumably
> is going to upset things if they actually saved a value here. Why is
> that a good choice, rather than either fixing the race so the card
> doesn't come up too early or removing the need for the runtime?
Ok. I understand. My first intention was to follow the
https://github.com/torvalds/linux/blob/master/sound/hda/hdmi_chmap.c#L794
but after your point of view, I intend to return -EAGAIN in V2
to specify the substream->runtime is not ready.
I retested: configured pdmc, then reboot the board and the configuration:
as a result the configuration kept.
alsa-restore.service status success.
Do you think this solution is enough?
Thank you and best regards,
Andrei Simion
[Index of Archives]
[Pulseaudio]
[Linux Audio Users]
[ALSA Devel]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]