[alsa-devel] [PATCHv2] alsa-lib: ucm: allow values to be read from devices
This allows devices value to be read using the get_value(). Also fix a little formatting.
Signed-off-by: Margarita Olaya Cabrera magi@slimlogic.co.uk Acked-by: Liam Girdwood lrg@ti.com --- src/ucm/main.c | 21 ++++++++++++++------- 1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/src/ucm/main.c b/src/ucm/main.c index 42fd373..0393601 100644 --- a/src/ucm/main.c +++ b/src/ucm/main.c @@ -1059,24 +1059,31 @@ static int get_value3(const char **value, * \param uc_mgr Use case manager * \param identifier Value identifier (string) * \param value Returned value string - * \param modifier modifier name (string) + * \param item item name (string) * \return Zero on success (value is filled), otherwise a negative error code */ static int get_value(snd_use_case_mgr_t *uc_mgr, - const char *identifier, - const char **value, - const char *modifier) + const char *identifier, + const char **value, + const char *item) { - struct use_case_modifier *mod; + struct use_case_modifier *mod; + struct use_case_device *dev; int err;
- if (modifier != NULL) { - mod = find_modifier(uc_mgr, modifier); + if (item != NULL) { + mod = find_modifier(uc_mgr, item); if (mod != NULL) { err = get_value1(value, &mod->value_list, identifier); if (err >= 0 || err != -ENOENT) return err; } + dev = find_device(uc_mgr->active_verb, item); + if (dev != NULL) { + err = get_value1(value, &dev->value_list, identifier); + if (err >= 0 || err != -ENOENT) + return err; + } } err = get_value1(value, &uc_mgr->active_verb->value_list, identifier); if (err >= 0 || err != -ENOENT)
At Fri, 18 Mar 2011 10:39:00 -0600, Margarita Olaya wrote:
This allows devices value to be read using the get_value(). Also fix a little formatting.
Signed-off-by: Margarita Olaya Cabrera magi@slimlogic.co.uk Acked-by: Liam Girdwood lrg@ti.com
src/ucm/main.c | 21 ++++++++++++++------- 1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/src/ucm/main.c b/src/ucm/main.c index 42fd373..0393601 100644 --- a/src/ucm/main.c +++ b/src/ucm/main.c @@ -1059,24 +1059,31 @@ static int get_value3(const char **value,
- \param uc_mgr Use case manager
- \param identifier Value identifier (string)
- \param value Returned value string
- \param modifier modifier name (string)
- \param item item name (string)
"item name" is too vague to understand what it means. It's either modifier or device name string, thus it can be written so.
thanks,
Takashi
participants (2)
-
Margarita Olaya
-
Takashi Iwai