|
@@ -236,13 +236,13 @@ static void xpad_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char *d
|
|
|
input_report_abs(dev, ABS_X,
|
|
|
(__s16) le16_to_cpup((__le16 *)(data + 12)));
|
|
|
input_report_abs(dev, ABS_Y,
|
|
|
- (__s16) le16_to_cpup((__le16 *)(data + 14)));
|
|
|
+ ~(__s16) le16_to_cpup((__le16 *)(data + 14)));
|
|
|
|
|
|
/* right stick */
|
|
|
input_report_abs(dev, ABS_RX,
|
|
|
(__s16) le16_to_cpup((__le16 *)(data + 16)));
|
|
|
input_report_abs(dev, ABS_RY,
|
|
|
- (__s16) le16_to_cpup((__le16 *)(data + 18)));
|
|
|
+ ~(__s16) le16_to_cpup((__le16 *)(data + 18)));
|
|
|
|
|
|
/* triggers left/right */
|
|
|
input_report_abs(dev, ABS_Z, data[10]);
|
|
@@ -330,13 +330,13 @@ static void xpad360_process_packet(struct usb_xpad *xpad,
|
|
|
input_report_abs(dev, ABS_X,
|
|
|
(__s16) le16_to_cpup((__le16 *)(data + 6)));
|
|
|
input_report_abs(dev, ABS_Y,
|
|
|
- (__s16) le16_to_cpup((__le16 *)(data + 8)));
|
|
|
+ ~(__s16) le16_to_cpup((__le16 *)(data + 8)));
|
|
|
|
|
|
/* right stick */
|
|
|
input_report_abs(dev, ABS_RX,
|
|
|
(__s16) le16_to_cpup((__le16 *)(data + 10)));
|
|
|
input_report_abs(dev, ABS_RY,
|
|
|
- (__s16) le16_to_cpup((__le16 *)(data + 12)));
|
|
|
+ ~(__s16) le16_to_cpup((__le16 *)(data + 12)));
|
|
|
|
|
|
/* triggers left/right */
|
|
|
input_report_abs(dev, ABS_Z, data[4]);
|