diff options
Diffstat (limited to 'drivers/video/backlight/lcd.c')
-rw-r--r-- | drivers/video/backlight/lcd.c | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/drivers/video/backlight/lcd.c b/drivers/video/backlight/lcd.c index 71a11cadffc4..79c1b0d609a8 100644 --- a/drivers/video/backlight/lcd.c +++ b/drivers/video/backlight/lcd.c | |||
@@ -97,19 +97,16 @@ static ssize_t lcd_store_power(struct device *dev, | |||
97 | struct device_attribute *attr, const char *buf, size_t count) | 97 | struct device_attribute *attr, const char *buf, size_t count) |
98 | { | 98 | { |
99 | int rc = -ENXIO; | 99 | int rc = -ENXIO; |
100 | char *endp; | ||
101 | struct lcd_device *ld = to_lcd_device(dev); | 100 | struct lcd_device *ld = to_lcd_device(dev); |
102 | int power = simple_strtoul(buf, &endp, 0); | 101 | unsigned long power; |
103 | size_t size = endp - buf; | ||
104 | 102 | ||
105 | if (isspace(*endp)) | 103 | rc = kstrtoul(buf, 0, &power); |
106 | size++; | 104 | if (rc) |
107 | if (size != count) | 105 | return rc; |
108 | return -EINVAL; | ||
109 | 106 | ||
110 | mutex_lock(&ld->ops_lock); | 107 | mutex_lock(&ld->ops_lock); |
111 | if (ld->ops && ld->ops->set_power) { | 108 | if (ld->ops && ld->ops->set_power) { |
112 | pr_debug("lcd: set power to %d\n", power); | 109 | pr_debug("lcd: set power to %lu\n", power); |
113 | ld->ops->set_power(ld, power); | 110 | ld->ops->set_power(ld, power); |
114 | rc = count; | 111 | rc = count; |
115 | } | 112 | } |
@@ -136,19 +133,16 @@ static ssize_t lcd_store_contrast(struct device *dev, | |||
136 | struct device_attribute *attr, const char *buf, size_t count) | 133 | struct device_attribute *attr, const char *buf, size_t count) |
137 | { | 134 | { |
138 | int rc = -ENXIO; | 135 | int rc = -ENXIO; |
139 | char *endp; | ||
140 | struct lcd_device *ld = to_lcd_device(dev); | 136 | struct lcd_device *ld = to_lcd_device(dev); |
141 | int contrast = simple_strtoul(buf, &endp, 0); | 137 | unsigned long contrast; |
142 | size_t size = endp - buf; | ||
143 | 138 | ||
144 | if (isspace(*endp)) | 139 | rc = kstrtoul(buf, 0, &contrast); |
145 | size++; | 140 | if (rc) |
146 | if (size != count) | 141 | return rc; |
147 | return -EINVAL; | ||
148 | 142 | ||
149 | mutex_lock(&ld->ops_lock); | 143 | mutex_lock(&ld->ops_lock); |
150 | if (ld->ops && ld->ops->set_contrast) { | 144 | if (ld->ops && ld->ops->set_contrast) { |
151 | pr_debug("lcd: set contrast to %d\n", contrast); | 145 | pr_debug("lcd: set contrast to %lu\n", contrast); |
152 | ld->ops->set_contrast(ld, contrast); | 146 | ld->ops->set_contrast(ld, contrast); |
153 | rc = count; | 147 | rc = count; |
154 | } | 148 | } |