Re: [PATCH 1/5] topology: ABI - Add the types for BE DAI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 10/06/2016 10:37 PM, Mark Brown wrote:
On Mon, Oct 03, 2016 at 11:03:50PM +0800, mengdong.lin@xxxxxxxxxxxxxxx wrote:

Pump the version number to 5.

So, we just had a user on IRC complaining that the last round of
incompatible changes in v4.7 broke their laptop audio - they had a
laptop that shipped with Linux and suddenly the topology file didn't
work.  I think that's an indication that at this point we have an ABI we
need to maintain compatibility with rather than just break things.  That
doesn't explicitly affect this patch but does mean that the parsing code
ought to cope which is likely to have some impact here.

Topology kernel driver will check size of ABI objects to detect version
mismatch between user space and kernel.

The ABI wasn't explicitly reved which suggests that it's this that
triggered the issue for the user.

Yes. Now if the kernel finds a mismatch of ABI object size, it will just return error and so old version of topology files cannot work. We'll try to support ABI version 4 and new versions in kernel. It seems topology have real users from version 4.


+/* BE DAI flags */
+#define SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_RATES         (1 << 0)
+#define SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_CHANNELS      (1 << 1)
+#define SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_SAMPLEBITS    (1 << 2)

These don't seem specific to back ends, people can use topologies for
DSPs on off-SoC devices which might also want to use these.

Yes. Can we take them as generic flags for DAI and DAI links?


+	__le32 be_dai_elems;	/* number of BE DAI elements */
+	__le32 reserved[20];	/* reserved for new ABI element types */

Thinking about the above I'm wondering if it doesn't make more sense to
call these physical links rather than back ends - that term is going to
be clearer to people who don't use DPCM.


May we call it a "phy_dai_elems", to indicate physical DAIs?

Now the ABI struct "snd_soc_tplg_be_dai" is already in kernel but no real users in user space. Can we rename it? Or add a new ABI struct?

Thanks
Mengdong
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux