Re: [PATCHv4 3/3] sony_ff_bluetooth

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat,  4 Jun 2011 02:32:37 -0700
Simon Wood <simon@xxxxxxxxxxxxx> wrote:

> Add support for patching the HID descriptor when Sixaxis is connect
> via Bluetooth. In this mode the desciptor contains a trailing '0x00'.
> 
> Patch suggested by Antonio
>

Simon I think this one can be split and the first hunk can be merged
with 1/2 and the second hunk with 2/2.

Also the short commit messages still need to be fixed for all the
patches to be more descriptive, if you don't want to spend any more
time on that just tell and I'll do it :)

Thanks,
   Antonio

> Signed-off-by: Antonio Ospite <ospite@xxxxxxxxxxxxxxxxx>
> Signed-off-by: Simon Wood <simon@xxxxxxxxxxxxx>
> ---
>  drivers/hid/hid-sony.c |    9 ++++++---
>  1 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/hid/hid-sony.c b/drivers/hid/hid-sony.c
> index f219746..5d37f97 100644
> --- a/drivers/hid/hid-sony.c
> +++ b/drivers/hid/hid-sony.c
> @@ -49,8 +49,11 @@ static __u8 *sony_report_fixup(struct hid_device *hdev, __u8 *rdesc,
>  		hid_info(hdev, "Fixing up Sony Vaio VGX report descriptor\n");
>  		rdesc[55] = 0x06;
>  	}
> -	if ((sc->quirks & SIXAXIS_CONTROLLER_USB) &&
> -			*rsize == 148 && rdesc[83] == 0x75) {
> +
> +	/* The HID descriptor exposed over BT has a trailing zero byte */
> +	if ((((sc->quirks & SIXAXIS_CONTROLLER_USB) && *rsize == 148) ||
> +			((sc->quirks & SIXAXIS_CONTROLLER_BT)  && *rsize == 149 )) &&
> +			rdesc[83] == 0x75) {
>  		hid_info(hdev, "Fixing up Sony Sixaxis report descriptor\n");
>  		memcpy((void *)&rdesc[83], (void *) &sixaxis_rdesc_fixup, sizeof(sixaxis_rdesc_fixup));
>  	}
> @@ -64,7 +67,7 @@ static int sony_raw_event(struct hid_device *hdev, struct hid_report *report, __
>  {
>  	struct sony_sc *sc = hid_get_drvdata(hdev);
>  
> -	if ((sc->quirks & SIXAXIS_CONTROLLER_USB) &&
> +	if ((sc->quirks & (SIXAXIS_CONTROLLER_USB | SIXAXIS_CONTROLLER_BT)) &&
>  			rd[0] == 0x01 && size == 49) {
>  		swap(rd[41], rd[42]);
>  		swap(rd[43], rd[44]);
> -- 

-- 
Antonio Ospite
http://ao2.it

PGP public key ID: 0x4553B001

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?

Attachment: pgpyjU3vCknbS.pgp
Description: PGP signature


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux