diff options
author | Axel Lin <axel.lin@gmail.com> | 2010-07-20 18:19:48 -0400 |
---|---|---|
committer | Matthew Garrett <mjg@redhat.com> | 2010-08-03 09:49:01 -0400 |
commit | 6a984a06487129f013ee2df6ce98b6cfada1e7b1 (patch) | |
tree | dc71ab1c6c4080663d56b535cadd63da42fad6be /drivers/platform | |
parent | 9fb866f317def195bb794120e13d1d73c2a94bb2 (diff) |
asus-laptop: return proper error for store_ledd if write_acpi_int fail
In current implementation, store_ledd() does not return error if
write_acpi_int fail. This patch fixes it by return -ENODEV if
write_acpi_int fail.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Cc: Matthew Garrett <mjg@redhat.com>
Cc: Corentin Chary <corentincj@iksaif.net>
Cc: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
Diffstat (limited to 'drivers/platform')
-rw-r--r-- | drivers/platform/x86/asus-laptop.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/x86/asus-laptop.c index 19445eaff6ff..40897bab2ebe 100644 --- a/drivers/platform/x86/asus-laptop.c +++ b/drivers/platform/x86/asus-laptop.c | |||
@@ -796,10 +796,11 @@ static ssize_t store_ledd(struct device *dev, struct device_attribute *attr, | |||
796 | 796 | ||
797 | rv = parse_arg(buf, count, &value); | 797 | rv = parse_arg(buf, count, &value); |
798 | if (rv > 0) { | 798 | if (rv > 0) { |
799 | if (write_acpi_int(asus->handle, METHOD_LEDD, value)) | 799 | if (write_acpi_int(asus->handle, METHOD_LEDD, value)) { |
800 | pr_warning("LED display write failed\n"); | 800 | pr_warning("LED display write failed\n"); |
801 | else | 801 | return -ENODEV; |
802 | asus->ledd_status = (u32) value; | 802 | } |
803 | asus->ledd_status = (u32) value; | ||
803 | } | 804 | } |
804 | return rv; | 805 | return rv; |
805 | } | 806 | } |