linux/include/uapi
Takashi Sakamoto 398fa4db6c ALSA: control: move layout of TLV payload to UAPI header
In ALSA control interface, each element set can have threshold level
information. This information is transferred between drivers/applications,
in a shape of tlv packet. The layout of this packet is defined in
'uapi/sound/asound.h' (struct snd_ctl_tlv):

struct snd_ctl_tlv {
    unsigned int numid;
    unsigned int length;
    unsigned int tlv[0];
};

Data in the payload (struct snd_ctl_tlv.tlv) is expected to be filled
according to our own protocol. This protocol is described in
'include/sound/tlv.h'. A layout of the payload is expected as:

struct snd_ctl_tlv.tlv[0]: one of SNDRV_CTL_TLVT_XXX
struct snd_ctl_tlv.tlv[1]: Length of data
struct snd_ctl_tlv.tlv[2...]: data

Unfortunately, the macro is not exported to user land yet, thus
applications cannot get to know the protocol.

Additionally, ALSA control core has a feature called as 'user-defined'
element set. This allows applications to add/remove arbitrary element sets
with elements to control devices. Elements in the element set can be
operated by the same way as the ones added by in-kernel implementation.

For threshold level information of 'user-defined' element set, applications
need to register the information to an element set. However, as described
above, layout of the payload is closed in kernel land. This is quite
inconvenient, too.

This commit moves the protocol to UAPI header for TLV.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2016-09-15 08:12:57 +02:00
..
asm-generic asm-generic: Drop renameat syscall from default list 2016-05-05 00:42:21 +02:00
drm Merge tag 'topic/drm-misc-2016-07-22' of git://anongit.freedesktop.org/drm-intel into drm-next 2016-07-27 10:33:08 +10:00
linux Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-08-17 17:26:58 -07:00
misc cxl: Use fixed width predefined types in data structure. 2016-08-09 16:52:01 +10:00
mtd mtd: kill the nand_ecclayout struct 2016-05-05 23:51:51 +02:00
rdma Second round of merge items for 4.8 2016-08-04 20:26:31 -04:00
scsi
sound ALSA: control: move layout of TLV payload to UAPI header 2016-09-15 08:12:57 +02:00
video
xen xen/evtchn: add IOCTL_EVTCHN_RESTRICT 2016-07-25 10:59:31 +01:00
Kbuild