Patchwork Bluetooth: Add support for Apple vendor-specific devices

login
register
mail settings
Submitter Henrik Rydberg
Date Aug. 25, 2012, 5:28 p.m.
Message ID <1345915686-3915-1-git-send-email-rydberg@euromail.se>
Download mbox | patch
Permalink /patch/1373511/
State New, archived
Headers show

Comments

Henrik Rydberg - Aug. 25, 2012, 5:28 p.m.
As pointed out by Gustavo and Marcel, all Apple-specific Broadcom
devices seen so far have the same interface class, subclass and
protocol numbers. This patch adds an entry which matches all of them,
using the new USB_VENDOR_AND_INTERFACE_INFO() macro.

In particular, this patch adds support for the MacBook Pro Retina
(05ac:8286), which is not in the present list.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
---
Hi Gustavo,

here is a patch for the Apple devices, utilizing commit d81a5d19, for
3.6. Tested on the MacBookPro10,1 (Retina). If you want, I can
follow-up with a patch for 3.7 which removes the specific entries. I
have verified the lsusb output of all of them, except MacMini5,1.

Thanks,
Henrik

 drivers/bluetooth/btusb.c | 3 +++
 1 file changed, 3 insertions(+)
Shea Levy - Aug. 25, 2012, 5:28 p.m.
Hello,

On 08/25/2012 01:28 PM, Henrik Rydberg wrote:
> +	/* Apple-specific (Broadcom) devices */
> +	{ USB_VENDOR_AND_INTERFACE_INFO(0x05ac, 0xff, 0x01, 0x01) },
> +
>

Would this subsume https://lkml.org/lkml/2012/8/22/689 ?

Thanks,
Shea Levy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Henrik Rydberg - Aug. 25, 2012, 5:43 p.m.
On Sat, Aug 25, 2012 at 01:28:52PM -0400, Shea Levy wrote:
> Hello,
> 
> On 08/25/2012 01:28 PM, Henrik Rydberg wrote:
> >+	/* Apple-specific (Broadcom) devices */
> >+	{ USB_VENDOR_AND_INTERFACE_INFO(0x05ac, 0xff, 0x01, 0x01) },
> >+
> >
> 
> Would this subsume https://lkml.org/lkml/2012/8/22/689 ?

Yes, it will make 05ac:821d work as well. If you are able to test it
successfully, we can append the commit message and add your Tested-by.

Thanks,
Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Shea Levy - Aug. 25, 2012, 6:21 p.m.
Hi

On 08/25/2012 01:43 PM, Henrik Rydberg wrote:
> On Sat, Aug 25, 2012 at 01:28:52PM -0400, Shea Levy wrote:
>> Hello,
>>
>> On 08/25/2012 01:28 PM, Henrik Rydberg wrote:
>>> +	/* Apple-specific (Broadcom) devices */
>>> +	{ USB_VENDOR_AND_INTERFACE_INFO(0x05ac, 0xff, 0x01, 0x01) },
>>> +
>>>
>> Would this subsume https://lkml.org/lkml/2012/8/22/689 ?
> Yes, it will make 05ac:821d work as well. If you are able to test it
> successfully, we can append the commit message and add your Tested-by.

I'm getting a build error due to lack of USB_VENDOR_AND_INTERFACE_INFO 
macro when patching 3.5.2 with that patch. Which kernel tree should I 
patch with this patch to test?

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

Thanks,
Shea
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Henrik Rydberg - Aug. 25, 2012, 6:35 p.m.
> I'm getting a build error due to lack of
> USB_VENDOR_AND_INTERFACE_INFO macro when patching 3.5.2 with that
> patch. Which kernel tree should I patch with this patch to test?

The macro is in the pipe to 3.5.x, probably only a couple of days
away. The patch is for 3.6, as stated, meaning it applies on top of
Linus's tree.

Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Shea Levy - Aug. 25, 2012, 7:04 p.m.
On 08/25/2012 01:28 PM, Henrik Rydberg wrote:
> As pointed out by Gustavo and Marcel, all Apple-specific Broadcom
> devices seen so far have the same interface class, subclass and
> protocol numbers. This patch adds an entry which matches all of them,
> using the new USB_VENDOR_AND_INTERFACE_INFO() macro.
>
> In particular, this patch adds support for the MacBook Pro Retina
> (05ac:8286), which is not in the present list.
>
> Signed-off-by: Henrik Rydberg<rydberg@euromail.se>
> ---
> Hi Gustavo,
>
> here is a patch for the Apple devices, utilizing commit d81a5d19, for
> 3.6. Tested on the MacBookPro10,1 (Retina). If you want, I can
> follow-up with a patch for 3.7 which removes the specific entries. I
> have verified the lsusb output of all of them, except MacMini5,1.
>
> Thanks,
> Henrik
>
>   drivers/bluetooth/btusb.c | 3 +++
>   1 file changed, 3 insertions(+)
>
> diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
> index 12075ad..1fae607 100644
> --- a/drivers/bluetooth/btusb.c
> +++ b/drivers/bluetooth/btusb.c
> @@ -52,6 +52,9 @@ static struct usb_device_id btusb_table[] = {
>   	/* Generic Bluetooth USB device */
>   	{ USB_DEVICE_INFO(0xe0, 0x01, 0x01) },
>
> +	/* Apple-specific (Broadcom) devices */
> +	{ USB_VENDOR_AND_INTERFACE_INFO(0x05ac, 0xff, 0x01, 0x01) },
> +
>   	/* Broadcom SoftSailing reporting vendor specific */
>   	{ USB_DEVICE(0x0a5c, 0x21e1) },
>

Tested on my Macbook Pro 9,2, usb-devices output:

T:  Bus=04 Lev=04 Prnt=04 Port=02 Cnt=01 Dev#=  9 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=05ac ProdID=821d Rev=00.86
S:  Manufacturer=Apple Inc.
S:  Product=Bluetooth USB Host Controller
C:  #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
I:  If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I:  If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
I:  If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=01 Driver=(none)

So:

Tested-by: Shea Levy <shea@shealevy.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Marcel Holtmann - Aug. 26, 2012, 5:08 p.m.
Hi Henrik,

> As pointed out by Gustavo and Marcel, all Apple-specific Broadcom
> devices seen so far have the same interface class, subclass and
> protocol numbers. This patch adds an entry which matches all of them,
> using the new USB_VENDOR_AND_INTERFACE_INFO() macro.
> 
> In particular, this patch adds support for the MacBook Pro Retina
> (05ac:8286), which is not in the present list.
> 
> Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
> ---
> Hi Gustavo,
> 
> here is a patch for the Apple devices, utilizing commit d81a5d19, for
> 3.6. Tested on the MacBookPro10,1 (Retina). If you want, I can
> follow-up with a patch for 3.7 which removes the specific entries. I
> have verified the lsusb output of all of them, except MacMini5,1.
> 
> Thanks,
> Henrik
> 
>  drivers/bluetooth/btusb.c | 3 +++
>  1 file changed, 3 insertions(+)

Acked-by: Marcel Holtmann <marcel@holtmann.org>

Regards

Marcel


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Gustavo F. Padovan - Aug. 27, 2012, 1:38 p.m.
Hi Henrik,

* Henrik Rydberg <rydberg@euromail.se> [2012-08-25 19:28:06 +0200]:

> As pointed out by Gustavo and Marcel, all Apple-specific Broadcom
> devices seen so far have the same interface class, subclass and
> protocol numbers. This patch adds an entry which matches all of them,
> using the new USB_VENDOR_AND_INTERFACE_INFO() macro.
> 
> In particular, this patch adds support for the MacBook Pro Retina
> (05ac:8286), which is not in the present list.
> 
> Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
> ---
> Hi Gustavo,
> 
> here is a patch for the Apple devices, utilizing commit d81a5d19, for
> 3.6. Tested on the MacBookPro10,1 (Retina). If you want, I can
> follow-up with a patch for 3.7 which removes the specific entries. I
> have verified the lsusb output of all of them, except MacMini5,1.
> 
> Thanks,
> Henrik
> 
>  drivers/bluetooth/btusb.c | 3 +++
>  1 file changed, 3 insertions(+)

Patch has been applied to the bluetooth tree. Thanks.

	Gustavo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Patch

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 12075ad..1fae607 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -52,6 +52,9 @@  static struct usb_device_id btusb_table[] = {
 	/* Generic Bluetooth USB device */
 	{ USB_DEVICE_INFO(0xe0, 0x01, 0x01) },
 
+	/* Apple-specific (Broadcom) devices */
+	{ USB_VENDOR_AND_INTERFACE_INFO(0x05ac, 0xff, 0x01, 0x01) },
+
 	/* Broadcom SoftSailing reporting vendor specific */
 	{ USB_DEVICE(0x0a5c, 0x21e1) },