summaryrefslogtreecommitdiffstats
path: root/drivers/hid
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/hid')
-rw-r--r--drivers/hid/hid-input.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
index 8fac47cf42f..b108ce71583 100644
--- a/drivers/hid/hid-input.c
+++ b/drivers/hid/hid-input.c
@@ -287,7 +287,7 @@ static int hidinput_get_battery_property(struct power_supply *psy,
struct hid_device *dev = container_of(psy, struct hid_device, battery);
int ret = 0;
int ret_rep;
- __u8 *buf = NULL;
+ __u8 buf[2] = {};
unsigned char report_number = dev->battery_report_id;
switch (prop) {
@@ -297,14 +297,8 @@ static int hidinput_get_battery_property(struct power_supply *psy,
break;
case POWER_SUPPLY_PROP_CAPACITY:
- buf = kmalloc(2 * sizeof(__u8), GFP_KERNEL);
- if (!buf) {
- ret = -ENOMEM;
- break;
- }
-
- memset(buf, 0, sizeof(buf));
- ret_rep = dev->hid_get_raw_report(dev, report_number, buf, sizeof(buf), HID_FEATURE_REPORT);
+ ret_rep = dev->hid_get_raw_report(dev, report_number,
+ buf, sizeof(buf), HID_FEATURE_REPORT);
if (ret_rep != 2) {
ret = -EINVAL;
break;
@@ -329,9 +323,6 @@ static int hidinput_get_battery_property(struct power_supply *psy,
break;
}
- if (buf) {
- kfree(buf);
- }
return ret;
}