Hi,
ALSA control interface has a feature named TLV. This is originally designed to transfer information about threshold level. Later, it's used for I/O operation.
In current implementation of this feature, length of handled data is not returned to applications. This is not better as a feature related to I/O.
This patchset attempts to improve this feature so that the length is returned to application in a 'length' field of tlv packet structure (struct snd_ctl_tlv).
Takashi Sakamoto (4): ALSA: control: return payload length for TLV operation ALSA: control: delegate checking the length of data payload to each drivers ALSA: control: add kerneldoc for snd_kcontrol_tlv_rw_t ALSA: control: bump up protocol version to 2.0.8
include/sound/control.h | 22 ++++++++++++++++++++-- include/sound/soc.h | 2 +- include/uapi/sound/asound.h | 2 +- sound/core/control.c | 30 +++++++++++++++++++----------- sound/core/pcm_lib.c | 15 ++++++++------- sound/core/vmaster.c | 2 +- sound/hda/hdmi_chmap.c | 16 +++++++++------- sound/pci/hda/hda_codec.c | 12 ++++++++---- sound/pci/hda/hda_local.h | 4 ++-- sound/pci/hda/patch_ca0132.c | 2 +- sound/pci/lola/lola_mixer.c | 7 +++++-- sound/soc/soc-ops.c | 9 +++++---- sound/usb/mixer.c | 7 +++++-- sound/usb/mixer.h | 2 +- sound/usb/stream.c | 13 ++++++++----- 15 files changed, 94 insertions(+), 51 deletions(-)