Re: [PATCH] HID: hid-sony: Fix DS4 controller reporting rate issues

From: Frank Praznik
Date: Wed Jul 29 2015 - 10:28:46 EST


On 7/29/2015 08:19, Jiri Kosina wrote:
On Tue, 28 Jul 2015, Rostislav Pehlivanov wrote:

This commit removes the cap on the DualShock 4 controller reporting
rate when connected using Bluetooth. The previous value of '0xB0'
capped the rate to only 20.83 Hz which many userspace utilities
mistook as a sign of a bad signal. Since a 'B' and an '8' can look
similar it's possible that someone mistook the one for another.
The new value of '0x80' enables the full 1000 Hz peak reporting
rate that the controller is capable of.

Signed-off-by: Rostislav Pehlivanov <atomnuker@xxxxxxxxx>
---
drivers/hid/hid-sony.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/hid/hid-sony.c b/drivers/hid/hid-sony.c
index ed2f008..3a6b6a9 100644
--- a/drivers/hid/hid-sony.c
+++ b/drivers/hid/hid-sony.c
@@ -1836,7 +1836,7 @@ static void dualshock4_state_worker(struct work_struct *work)
} else {
memset(buf, 0, DS4_REPORT_0x11_SIZE);
buf[0] = 0x11;
- buf[1] = 0xB0;
+ buf[1] = 0x80;
buf[3] = 0x0F;
offset = 6;
This got added by Frank in commit fdcf105d3d ("HID: sony: Add Dualshock 4
Bluetooth output report formatting"). Adding him to CC to double-check.


I had some private communication with Rostislav about this fix and it looks good to me. Back when the original code was written the purpose of that value was unknown and 0xB0 seemed to work so that's what ended up being used. Now that we know what it actually does and that 0x80 is a better choice I support this patch.

Acked-by: Frank Praznik <frank.praznik@xxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/