Re: [RFC/RFT PATCH] ASoC: topology: Improve backwards compatibility with v4 topology files

From: Takashi Iwai
Date: Thu May 24 2018 - 06:27:10 EST


On Wed, 23 May 2018 18:17:23 +0200,
Guenter Roeck wrote:
>
> On Wed, May 23, 2018 at 8:58 AM Mark Brown <broonie@xxxxxxxxxx> wrote:
>
> > On Wed, May 23, 2018 at 08:54:18AM -0700, Guenter Roeck wrote:
> > > On Wed, May 23, 2018 at 6:56 AM Mark Brown <broonie@xxxxxxxxxx> wrote:
> > > > On Wed, May 23, 2018 at 03:54:54PM +0200, Takashi Iwai wrote:
>
> > > > > And I'm wondering whether we should move these definitions to uapi
> > > > > headers.
>
> > > > Yes, we should.
>
> > > Are you sure ? They used to be in
> > > sound/soc/intel/skylake/skl-tplg-interface.h.
> > > I took my clue from sound/soc/soc-topology.c, where the v4 structures
> are
> > > also
> > > declared locally and not in the uapi files.
>
> > I'm saying we should move them there. They're clearly part of the
> > userspace ABI and therefore belong in uapi, it was a mistake to let them
> > be elsewhere.
>
> They define a firmware file format. Not sure if I would call that userspace
> ABI.

The point is that the defined data is used from both kernel and user
space. Although strictly speaking it might be no "ABI", it'd make
sense a lot to put the stuff into uapi directory, so that the kernel
can expose it properly and user-space can refer it as the single
source.

> I don't mind adding the structures to
> sound/soc/intel/skylake/skl-tplg-interface.h,
> but it seems a bit out of scope to tie this with moving the file to
> include/uapi/sound.
> I think that should be a separate discussion.

Yes, it should be done by another patch.


thanks,

Takashi