--- v4
+++ v5
@@ -32,7 +32,7 @@
tristate "Primax non-fully HID-compliant devices"
depends on HID
diff --git a/drivers/hid/hid-playstation.c b/drivers/hid/hid-playstation.c
-index 2f16a650f247..554917f86843 100644
+index 2da362d3dbda..bb49e2ef9017 100644
--- a/drivers/hid/hid-playstation.c
+++ b/drivers/hid/hid-playstation.c
@@ -48,12 +48,17 @@ struct ps_calibration_data {
@@ -175,7 +175,7 @@
ret = input_register_device(gamepad);
if (ret)
return ERR_PTR(ret);
-@@ -515,6 +605,94 @@ static int dualsense_get_mac_address(struct dualsense *ds)
+@@ -552,6 +642,94 @@ static int dualsense_get_mac_address(struct dualsense *ds)
return ret;
}
@@ -270,7 +270,7 @@
static int dualsense_parse_report(struct ps_device *ps_dev, struct hid_report *report,
u8 *data, int size)
{
-@@ -675,10 +853,30 @@ static int dualsense_parse_report(struct ps_device *ps_dev, struct hid_report *r
+@@ -712,10 +890,30 @@ static int dualsense_parse_report(struct ps_device *ps_dev, struct hid_report *r
return 0;
}
@@ -301,7 +301,7 @@
int ret;
ds = devm_kzalloc(&hdev->dev, sizeof(*ds), GFP_KERNEL);
-@@ -697,8 +895,14 @@ static struct ps_device *dualsense_create(struct hid_device *hdev)
+@@ -734,8 +932,14 @@ static struct ps_device *dualsense_create(struct hid_device *hdev)
ps_dev->battery_capacity = 100; /* initial value until parse_report. */
ps_dev->battery_status = POWER_SUPPLY_STATUS_UNKNOWN;
ps_dev->parse_report = dualsense_parse_report;
@@ -316,7 +316,7 @@
ret = dualsense_get_mac_address(ds);
if (ret) {
hid_err(hdev, "Failed to get MAC address from DualSense\n");
-@@ -716,7 +920,7 @@ static struct ps_device *dualsense_create(struct hid_device *hdev)
+@@ -753,7 +957,7 @@ static struct ps_device *dualsense_create(struct hid_device *hdev)
goto err;
}