diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
index 69dec47..f5c3efc 100644
--- a/drivers/hid/hid-input.c
+++ b/drivers/hid/hid-input.c
@@ -312,7 +312,6 @@
 	int ret = 0;
 	int ret_rep;
 	__u8 buf[2] = {};
-	unsigned char report_number = dev->battery_report_id;
 
 	switch (prop) {
 	case POWER_SUPPLY_PROP_PRESENT:
@@ -321,8 +320,9 @@
 		break;
 
 	case POWER_SUPPLY_PROP_CAPACITY:
-		ret_rep = dev->hid_get_raw_report(dev, report_number,
-						  buf, sizeof(buf), HID_FEATURE_REPORT);
+		ret_rep = dev->hid_get_raw_report(dev, dev->battery_report_id,
+						  buf, sizeof(buf),
+						  dev->battery_report_type);
 		if (ret_rep != 2) {
 			ret = -EINVAL;
 			break;
@@ -351,7 +351,9 @@
 	return ret;
 }
 
-static void hidinput_setup_battery(struct hid_device *dev, unsigned id, s32 min, s32 max)
+static void hidinput_setup_battery(struct hid_device *dev,
+				   unsigned report_type, unsigned report_id,
+				   s32 min, s32 max)
 {
 	struct power_supply *battery = &dev->battery;
 	int ret;
@@ -379,7 +381,8 @@
 
 	dev->battery_min = min;
 	dev->battery_max = max;
-	dev->battery_report_id = id;
+	dev->battery_report_type = report_type;
+	dev->battery_report_id = report_id;
 
 	ret = power_supply_register(&dev->dev, battery);
 	if (ret != 0) {
@@ -399,7 +402,9 @@
 	dev->battery.name = NULL;
 }
 #else  /* !CONFIG_HID_BATTERY_STRENGTH */
-static void hidinput_setup_battery(struct hid_device *dev, unsigned id, s32 min, s32 max)
+static void hidinput_setup_battery(struct hid_device *dev,
+				   unsigned report_type, unsigned report_id,
+				   s32 min, s32 max)
 {
 }
 
@@ -769,6 +774,7 @@
 	case HID_UP_GENDEVCTRLS:
 		if ((usage->hid & HID_USAGE) == 0x20) {	/* Battery Strength */
 			hidinput_setup_battery(device,
+					       HID_INPUT_REPORT,
 					       field->report->id,
 					       field->logical_minimum,
 					       field->logical_maximum);
@@ -1052,7 +1058,7 @@
 				if (((rep->field[i]->usage + j)->hid & HID_USAGE_PAGE) == HID_UP_GENDEVCTRLS &&
 					((rep->field[i]->usage + j)->hid & HID_USAGE) == 0x20) {
 					hidinput_setup_battery(hid,
-							       rep->id,
+							       HID_FEATURE_REPORT, rep->id,
 							       rep->field[i]->logical_minimum,
 							       rep->field[i]->logical_maximum);
 				}
diff --git a/include/linux/hid.h b/include/linux/hid.h
index fa772c8..9351d3d 100644
--- a/include/linux/hid.h
+++ b/include/linux/hid.h
@@ -496,6 +496,7 @@
 	__s32 battery_min;
 	__s32 battery_max;
 	__s32 battery_val;
+	__s32 battery_report_type;
 	__s32 battery_report_id;
 #endif
 
