[PATCH] hid: sony: Add power supply support for PS3 remote

Subsystems: hid core layer, the rest

STALE3879d

3 messages, 2 authors, 2016-03-10 · open the first message on its own page

[PATCH] hid: sony: Add power supply support for PS3 remote

From: Frederic Jacob <hidden>
Date: 2016-03-09 01:49:13

Add power supply support for the PS3 remote controller

Signed-off-by: Frederic Jacob <redacted>

---
 drivers/hid/hid-sony.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/drivers/hid/hid-sony.c b/drivers/hid/hid-sony.c
index 9b8db0e..b78e149 100644
--- a/drivers/hid/hid-sony.c
+++ b/drivers/hid/hid-sony.c
@@ -61,7 +61,8 @@
 				DUALSHOCK4_CONTROLLER | MOTION_CONTROLLER |\
 				NAVIGATION_CONTROLLER)
 #define SONY_BATTERY_SUPPORT (SIXAXIS_CONTROLLER | DUALSHOCK4_CONTROLLER |\
-				MOTION_CONTROLLER_BT | NAVIGATION_CONTROLLER)
+				MOTION_CONTROLLER_BT | NAVIGATION_CONTROLLER |\
+				PS3REMOTE)
 #define SONY_FF_SUPPORT (SIXAXIS_CONTROLLER | DUALSHOCK4_CONTROLLER |\
 				MOTION_CONTROLLER)
@@ -1177,7 +1178,12 @@ static void sixaxis_parse_report(struct sony_sc *sc, __u8 *rd, int size)
 	 * It does not report the actual level while charging so it
 	 * is set to 100% while charging is in progress.
 	 */
-	offset = (sc->quirks & MOTION_CONTROLLER) ? 12 : 30;
+	if (sc->quirks & MOTION_CONTROLLER)
+		offset = 12;
+	else if (sc->quirks & PS3REMOTE)
+		offset = 11;
+	else
+		offset = 30;

 	if (rd[offset] >= 0xee) {
 		battery_capacity = 100;
@@ -1301,6 +1307,9 @@ static int sony_raw_event(struct hid_device *hdev, struct hid_report *report,
 	} else if ((sc->quirks & NAVIGATION_CONTROLLER) && rd[0] == 0x01 &&
 			size == 49) {
 		sixaxis_parse_report(sc, rd, size);
+	} else if ((sc->quirks & PS3REMOTE) && rd[0] == 0x01 &&
+			size == 12) {
+		sixaxis_parse_report(sc, rd, size);
 	} else if (((sc->quirks & DUALSHOCK4_CONTROLLER_USB) && rd[0] == 0x01 &&
 			size == 64) || ((sc->quirks & DUALSHOCK4_CONTROLLER_BT)
 			&& rd[0] == 0x11 && size == 78)) {
--
2.5.0

Re: [PATCH] hid: sony: Add power supply support for PS3 remote

From: Bastien Nocera <hadess@hadess.net>
Date: 2016-03-09 17:03:38

Hey Frederic,

On Tue, 2016-03-08 at 20:40 -0500, Frederic Jacob wrote:
Add power supply support for the PS3 remote controller
Isn't something like "add battery state reporting for PS3 remotes"
better?

Also, as I don't think it's physically possible to have the PS3 remote
both connected and charging at the same time, maybe the comment
in sixaxis_parse_report() should be modified to make it clear that the
PS3 remote doesn't have that problem.

Cheers
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Re: [PATCH] hid: sony: Add power supply support for PS3 remote

From: Frederic Jacob <hidden>
Date: 2016-03-10 02:54:24

On 03/09/2016 11:58 AM, Bastien Nocera wrote:
Hey Frederic,

On Tue, 2016-03-08 at 20:40 -0500, Frederic Jacob wrote:
quoted
Add power supply support for the PS3 remote controller
Isn't something like "add battery state reporting for PS3 remotes"
better?

Also, as I don't think it's physically possible to have the PS3 remote
both connected and charging at the same time, maybe the comment
in sixaxis_parse_report() should be modified to make it clear that the
PS3 remote doesn't have that problem.

Cheers
I hesitated to use a message similar as to what you suggest
but changed it to use the technical term, but I prefer yours.

As for the comment in  sixaxis_parse_report() what do you think if I add
at the end of the comment?
" The PS3 remote cannot be charged so it is always set to discharging
   and unplugged."

Thanks


Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help