[PATCH] ASoC: SOF: relax ABI checks and avoid unnecessary warnings

Kai Vehmanen kai.vehmanen at linux.intel.com
Fri Feb 12 10:53:51 CET 2021


Hi,

On Fri, 12 Feb 2021, Amadeusz Sławiński wrote:

> On 2/11/2021 6:24 PM, Kai Vehmanen wrote:
> > With recent SOF 1.7 pre-releases, kernel has been emitting following
> > warnings at probe:
> > 
> > [10006.645216] sof-audio-pci 0000:00:1f.3: warn: FW ABI is more recent than
> > kernel
> > [10006.652137] sof-audio-pci 0000:00:1f.3: warn: topology ABI is more recent
> > than kernel
[...]
> > --- a/sound/soc/sof/topology.c
> > +++ b/sound/soc/sof/topology.c
> > @@ -3658,7 +3658,7 @@ static int sof_manifest(struct snd_soc_component
> > *scomp, int index,
> >   		return -EINVAL;
> >   	}
> >   -	if (abi_version > SOF_ABI_VERSION) {
> > +	if (SOF_ABI_VERSION_MINOR(abi_version) > SOF_ABI_MINOR) {
> >   		if (!IS_ENABLED(CONFIG_SND_SOC_SOF_STRICT_ABI_CHECKS)) {
> >   			dev_warn(scomp->dev, "warn: topology ABI is more
> > recent than kernel\n");
> >   		} else {
> > 
> > base-commit: ec9d68508ff65df1dc24cf8100eb40ddd196c2fd
> > 
> 
> Shouldn't you also look at major version?
> Seems to me like with this check for example 2.1.0 compared to 3.0.0 will
> compare 1 and 0 and tell you that you have too new version. Even if 2 is less
> than 3.

ack on that. The diff is a bit hard to follow as the checks I modify here, 
in topology.c and ipc.c, are both preceded by a check with 
SOF_ABI_VERSION_INCOMPATIBLE(). If major version doens't match, we return 
an error earlier. So thus we only need to check the minor version here.

Br, Kai


More information about the Alsa-devel mailing list