Age | Commit message (Collapse) | Author |
|
Control names are not unique and can be shared by multiple mixers controls.
When this happens, there is no way of accessing the mixer using its control
name, because mixer_get_ctl_by_name() always returns the first match. The only
way of accessing the mixer is through its control number, i.e. using
mixer_get_ctl().
This patch adds the function mixer_get_ctl_by_name_and_index() to offer the
possibility to retrieve a control through its name and index. This index
corresponds to the nth occurence of the control name in the global supported
controls names list.
Change-Id: Ie29bf2a949ecf69f106bbe359155cdbfbe98928c
Signed-off-by: Frédéric Boisnard <fredericx.boisnard@intel.com>
Signed-off-by: David Wagner <david.wagner@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-Tracking-BZ: 139255
|
|
|
|
Some sound cards update their controls due to external
events, such as HDMI EDID byte data changing when an
HDMI cable is connected. This API allows the count of
elements to be updated.
|
|
This replaces (and extends) the existing get/set_bytes
API, which is no longer required.
|
|
For binary controls we don't want to go through
mixer_ctl_{set,get}_value() as that will trigger many calls to our
get()/put() callback in the kernel. Set the entire payload at once
and trigger the get()/put() callback once.
Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
|
|
|
|
|
|
|
|
Just like the pcm_get_error() API, simplify the mixer API
functions to return pointers to constant strings instead
of making copies of strings.
|
|
Use existing routines to read BYTE controls. Somewhat inefficient
since an ioctl is done for every byte, some caching in intermediate
fields would be beneficial.
|
|
Remove the use of the errno variable and instead return errors
directly where appropriate.
|
|
|
|
|
|
- re-add function to set enum type by string
- implement setting of mixer values in tinymix
- fix bug: read current mixer values before writing
|
|
- simplify interface for setting/getting enum values
- implement enum string get function
- update tinymix to deal with enums
- rename set/get_int functions because of supported types
|
|
- support get/set of multiple values
- add parameter checking to functions
- add api function to get control type
- add tinymix utility to list mixer controls
|
|
|
|
|
|
|