Messages in this thread Patch in this message | | | Date | Mon, 22 Feb 2010 10:45:12 +0100 | From | Clemens Ladisch <> | Subject | [PATCH] thinkpad-acpi: fix return value of volume callbacks |
| |
Fix up the volume status setting functions to return a non-zero value if the control value has changed, so that the ALSA framework can correctly generate control change notifications.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
--- linux/drivers/platform/x86/thinkpad_acpi.c +++ linux/drivers/platform/x86/thinkpad_acpi.c @@ -6537,8 +6537,11 @@ static int volume_set_mute_ec(const bool n = (mute) ? s | TP_EC_AUDIO_MUTESW_MSK : s & ~TP_EC_AUDIO_MUTESW_MSK; - if (n != s) + if (n != s) { rc = volume_set_status_ec(n); + if (!rc) + rc = 1; + } unlock: mutex_unlock(&volume_mutex); @@ -6569,8 +6572,11 @@ static int volume_set_volume_ec(const u8 n = (s & ~TP_EC_AUDIO_LVL_MSK) | vol; - if (n != s) + if (n != s) { rc = volume_set_status_ec(n); + if (!rc) + rc = 1; + } unlock: mutex_unlock(&volume_mutex);
| |