ALSA ctl feature includes threshold level feature. This is introduced in 2006, and there's little resources about it. This commit adds a simple explanation about the feature. Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx> --- src/control/control.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/control/control.c b/src/control/control.c index 38700bb..a1d7098 100644 --- a/src/control/control.c +++ b/src/control/control.c @@ -58,6 +58,28 @@ elements included in the element set. When the value of member is changed, corresponding events are transferred to userspace applications. The applications should subscribe any events in advance. + +\section tlv_blob Thredshold level and arbitrary data + +TLV feature is designed to transfer data about threshold level between a driver +and any userspace applications. The data is for an element set. + +At first, this feature was implemented to add pre-defined data readable to +userspace applications. Soon, it was extended to handle several operations; +read, write and command. The original implementation remains as the read +operation. The command operation allows drivers to have own implementations +against requests from userspace applications. As of 2016, simple write operation +is not supported yet. + +This feature was introduced to ALSA control feature in 2006, at commit +c7a0708a2362, corresponding to a series of work for Linux kernel (42750b04c5ba +and 8aa9b586e420). + +This feature can transfer arbitrary data in a shape of an array with members of +unsigned int type, therefore it can be used to deliver quite large arbitrary +data from userspace to in-kernel drivers via ALSA control character device. +Focusing on this nature, some in-kernel implementations utilize this feature for +I/O operations. */ #include <stdio.h> -- 2.7.4 _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel