Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0b7eb8be authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "hal: Enable parsing of interface tag independent of backend_tag" into...

Merge "hal: Enable parsing of interface tag independent of backend_tag" into audio-userspace.lnx.2.2-dev
parents f9ed8f2c d150d4c8
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -5323,10 +5323,13 @@ int platform_set_snd_device_backend(snd_device_t device, const char *backend_tag
          platform_get_snd_device_name(device),
          backend_tag_table[device] != NULL ? backend_tag_table[device]: "null",
          backend_tag);

    if (backend_tag != NULL ) {
        if (backend_tag_table[device]) {
           free(backend_tag_table[device]);
        }
        backend_tag_table[device] = strdup(backend_tag);
    }

    if (hw_interface != NULL) {
        if (hw_interface_table[device])
+6 −3
Original line number Diff line number Diff line
@@ -5200,10 +5200,13 @@ int platform_set_snd_device_backend(snd_device_t device, const char *backend_tag
          platform_get_snd_device_name(device),
          backend_tag_table[device] != NULL ? backend_tag_table[device]: "null",
          backend_tag);

    if (backend_tag != NULL ) {
        if (backend_tag_table[device]) {
           free(backend_tag_table[device]);
        }
        backend_tag_table[device] = strdup(backend_tag);
    }

    if (hw_interface != NULL) {
        if (hw_interface_table[device])
+6 −4
Original line number Diff line number Diff line
@@ -176,6 +176,7 @@ static void process_backend_name(const XML_Char **attr)
{
    int index;
    char *hw_interface = NULL;
    char *backend = NULL;

    if (strcmp(attr[0], "name") != 0) {
        ALOGE("%s: 'name' not found, no ACDB ID set!", __func__);
@@ -190,9 +191,10 @@ static void process_backend_name(const XML_Char **attr)
    }

    if (strcmp(attr[2], "backend") != 0) {
        ALOGE("%s: Device %s has no backend set!",
              __func__, attr[1]);
        goto done;
        if (strcmp(attr[2], "interface") == 0)
            hw_interface = (char *)attr[3];
    } else {
        backend = (char *)attr[3];
    }

    if (attr[4] != NULL) {
@@ -203,7 +205,7 @@ static void process_backend_name(const XML_Char **attr)
        }
    }

    if (platform_set_snd_device_backend(index, attr[3], hw_interface) < 0) {
    if (platform_set_snd_device_backend(index, backend, hw_interface) < 0) {
        ALOGE("%s: Device %s backend %s was not set!",
              __func__, attr[1], attr[3]);
        goto done;