2015-02-10 15:55:07

by Alexander Ploumistos

[permalink] [raw]
Subject: [PATCH] Add support for Atheros AR5B195 combo Mini PCIe cards (AR3011 Bluetooth)

The AR5B195 Mini PCIe card is made up by an AR9285 Wi-Fi chip and an
AR3011 Bluetooth chip. The operating procedure of the device, as well
as the rationale behind the patch is documented in
https://wireless.wiki.kernel.org/en/users/Drivers/ath3k#ar3011_with_sflash_configurations

The bluetooth device is exposed to the host as a generic USB device
(04f2:aff1 Chicony Electronics Co., Ltd, in this case) and requires
firmware to be uploaded to it, so that it can be re-enumerated as an
AR3011 device. This translates to adding the Vendor and Product IDs to
the btusb.c blacklist and to the ath3k.c list of supported devices.

I made the patch against the source of kernel-3.18.6-200, currently in
Fedora updates-testing and I've also tested it with a couple of 3.18.5
kernels.

Some more info and external references can be found in RHBZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1190947

Signed-off-by: Alexander Ploumistos <[email protected]>

---

diff -rupN a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
--- a/drivers/bluetooth/ath3k.c 2014-12-08 00:21:05.000000000 +0200
+++ b/drivers/bluetooth/ath3k.c 2015-02-10 05:48:26.202889885 +0200
@@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_
/* Atheros AR3011 with sflash firmware*/
{ USB_DEVICE(0x0489, 0xE027) },
{ USB_DEVICE(0x0489, 0xE03D) },
+ { USB_DEVICE(0x04F2, 0xAFF1) },
{ USB_DEVICE(0x0930, 0x0215) },
{ USB_DEVICE(0x0CF3, 0x3002) },
{ USB_DEVICE(0x0CF3, 0xE019) },
diff -rupN a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
--- a/drivers/bluetooth/btusb.c 2014-12-08 00:21:05.000000000 +0200
+++ b/drivers/bluetooth/btusb.c 2015-02-10 05:49:38.590890251 +0200
@@ -142,6 +142,7 @@ static const struct usb_device_id blackl
/* Atheros 3011 with sflash firmware */
{ USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
+ { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },


2015-02-12 19:36:33

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [PATCH] Add support for Atheros AR5B195 combo Mini PCIe cards (AR3011 Bluetooth)

Hi Alexander,

> The AR5B195 Mini PCIe card is made up by an AR9285 Wi-Fi chip and an
> AR3011 Bluetooth chip. The operating procedure of the device, as well
> as the rationale behind the patch is documented in
> https://wireless.wiki.kernel.org/en/users/Drivers/ath3k#ar3011_with_sflash_configurations
>
> The bluetooth device is exposed to the host as a generic USB device
> (04f2:aff1 Chicony Electronics Co., Ltd, in this case) and requires
> firmware to be uploaded to it, so that it can be re-enumerated as an
> AR3011 device. This translates to adding the Vendor and Product IDs to
> the btusb.c blacklist and to the ath3k.c list of supported devices.
>
> I made the patch against the source of kernel-3.18.6-200, currently in
> Fedora updates-testing and I've also tested it with a couple of 3.18.5
> kernels.
>
> Some more info and external references can be found in RHBZ:
> https://bugzilla.redhat.com/show_bug.cgi?id=1190947
>
> Signed-off-by: Alexander Ploumistos <[email protected]>
>
> ---
>
> diff -rupN a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
> --- a/drivers/bluetooth/ath3k.c 2014-12-08 00:21:05.000000000 +0200
> +++ b/drivers/bluetooth/ath3k.c 2015-02-10 05:48:26.202889885 +0200
> @@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_
> /* Atheros AR3011 with sflash firmware*/
> { USB_DEVICE(0x0489, 0xE027) },
> { USB_DEVICE(0x0489, 0xE03D) },
> + { USB_DEVICE(0x04F2, 0xAFF1) },

it looks like that your mail client scrambles up the tabs vs spaces here.

Regards

Marcel

2015-02-12 23:32:23

by Alexander Ploumistos

[permalink] [raw]
Subject: Re: [PATCH] Add support for Atheros AR5B195 combo Mini PCIe cards (AR3011 Bluetooth)

On Thu, Feb 12, 2015 at 9:36 PM, Marcel Holtmann <[email protected]> wrote:
>
> it looks like that your mail client scrambles up the tabs vs spaces here.


Very sorry about that, here is a raw paste:
http://fpaste.org/184996/raw/

I hope it helps. If you need anything else, please let me know.

Regards
Alex

2015-02-13 18:33:57

by Alexander Ploumistos

[permalink] [raw]
Subject: [PATCH] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

From: alxpl <[email protected]>


With a lot of help and pointers from Dmitry Tunin, I managed to put the patch together in the "appropriate" fashion, against bluetooth-next. He also suggested that I include the relevant information from my /sys/kernel/debug/usb/devices. If it is still sub-par, please let me know what needs to be fixed. I also came across a thread in the Arch forum and it would seem that someone has already patched ath3k and btusb for the exact same device:
https://bbs.archlinux.org/viewtopic.php?id=126487

So here is everything:

T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=04f2 ProdID=aff1 Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms


Signed-off-by: Alexander Ploumistos <[email protected]>
---
drivers/bluetooth/ath3k.c | 1 +
drivers/bluetooth/btusb.c | 1 +
2 files changed, 2 insertions(+)

diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
index de4c849..288547a 100644
--- a/drivers/bluetooth/ath3k.c
+++ b/drivers/bluetooth/ath3k.c
@@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_table[] = {
/* Atheros AR3011 with sflash firmware*/
{ USB_DEVICE(0x0489, 0xE027) },
{ USB_DEVICE(0x0489, 0xE03D) },
+ { USB_DEVICE(0x04F2, 0xAFF1) },
{ USB_DEVICE(0x0930, 0x0215) },
{ USB_DEVICE(0x0CF3, 0x3002) },
{ USB_DEVICE(0x0CF3, 0xE019) },
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index b876888..2f9c9d8c 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -159,6 +159,7 @@ static const struct usb_device_id blacklist_table[] = {
/* Atheros 3011 with sflash firmware */
{ USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
+ { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },
--
2.1.0

2015-02-13 18:50:59

by Dmitry Tunin

[permalink] [raw]
Subject: Re: [PATCH] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

> From: alxpl <[email protected]>
>
>
> With a lot of help and pointers from Dmitry Tunin, I managed to put the patch together in the "appropriate" fashion, against bluetooth-next. He also suggested that I include the relevant information from my /sys/kernel/debug/usb/devices. If it is still sub-par, please let me know what needs to be fixed. I also came across a thread in the Arch forum and it would seem that someone has already patched ath3k and btusb for the exact same device:
> https://bbs.archlinux.org/viewtopic.php?id=126487
>
> So here is everything:
>
> T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
> D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
> P: Vendor=04f2 ProdID=aff1 Rev= 0.01
> C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
> I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
> E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
>
>
> Signed-off-by: Alexander Ploumistos <[email protected]>
> ---
> drivers/bluetooth/ath3k.c | 1 +
> drivers/bluetooth/btusb.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
> index de4c849..288547a 100644
> --- a/drivers/bluetooth/ath3k.c
> +++ b/drivers/bluetooth/ath3k.c
> @@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_table[] = {
> /* Atheros AR3011 with sflash firmware*/
> { USB_DEVICE(0x0489, 0xE027) },
> { USB_DEVICE(0x0489, 0xE03D) },
> + { USB_DEVICE(0x04F2, 0xAFF1) },
> { USB_DEVICE(0x0930, 0x0215) },
> { USB_DEVICE(0x0CF3, 0x3002) },
> { USB_DEVICE(0x0CF3, 0xE019) },
> diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
> index b876888..2f9c9d8c 100644
> --- a/drivers/bluetooth/btusb.c
> +++ b/drivers/bluetooth/btusb.c
> @@ -159,6 +159,7 @@ static const struct usb_device_id blacklist_table[] = {
> /* Atheros 3011 with sflash firmware */
> { USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
> + { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },
>

Alex,

1. Replace commit text regarding my help with something relevant.
2. Make [PATCH v2] so Marcel can commit it.

Regards,

Dmitry

2015-02-13 19:05:21

by Alexander Ploumistos

[permalink] [raw]
Subject: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

From: alxpl <[email protected]>

Add 04f2:aff1 to ath3k.c supported devices list and btusb.c blacklist, so that the device can load the ath3k firmware and re-enumerate itself as an AR3011 device.


T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=04f2 ProdID=aff1 Rev= 0.01
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms


Signed-off-by: Alexander Ploumistos <[email protected]>
---
drivers/bluetooth/ath3k.c | 1 +
drivers/bluetooth/btusb.c | 1 +
2 files changed, 2 insertions(+)

diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
index de4c849..288547a 100644
--- a/drivers/bluetooth/ath3k.c
+++ b/drivers/bluetooth/ath3k.c
@@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_table[] = {
/* Atheros AR3011 with sflash firmware*/
{ USB_DEVICE(0x0489, 0xE027) },
{ USB_DEVICE(0x0489, 0xE03D) },
+ { USB_DEVICE(0x04F2, 0xAFF1) },
{ USB_DEVICE(0x0930, 0x0215) },
{ USB_DEVICE(0x0CF3, 0x3002) },
{ USB_DEVICE(0x0CF3, 0xE019) },
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index b876888..2f9c9d8c 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -159,6 +159,7 @@ static const struct usb_device_id blacklist_table[] = {
/* Atheros 3011 with sflash firmware */
{ USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
+ { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
{ USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },
--
2.1.0

2015-02-13 19:20:56

by Dmitry Tunin

[permalink] [raw]
Subject: Re: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)


> From: alxpl <[email protected]>
>
> Add 04f2:aff1 to ath3k.c supported devices list and btusb.c blacklist, so that the device can load the ath3k firmware and re-enumerate itself as an AR3011 device.
>
>
> T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
> D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
> P: Vendor=04f2 ProdID=aff1 Rev= 0.01
> C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
> I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
> E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
>
>
> Signed-off-by: Alexander Ploumistos <[email protected]>

I think it makes sense to add

Cc: [email protected]

If you do, it will be merged into stable kernel versions.


> ---
> drivers/bluetooth/ath3k.c | 1 +
> drivers/bluetooth/btusb.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
> index de4c849..288547a 100644
> --- a/drivers/bluetooth/ath3k.c
> +++ b/drivers/bluetooth/ath3k.c
> @@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_table[] = {
> /* Atheros AR3011 with sflash firmware*/
> { USB_DEVICE(0x0489, 0xE027) },
> { USB_DEVICE(0x0489, 0xE03D) },
> + { USB_DEVICE(0x04F2, 0xAFF1) },
> { USB_DEVICE(0x0930, 0x0215) },
> { USB_DEVICE(0x0CF3, 0x3002) },
> { USB_DEVICE(0x0CF3, 0xE019) },
> diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
> index b876888..2f9c9d8c 100644
> --- a/drivers/bluetooth/btusb.c
> +++ b/drivers/bluetooth/btusb.c
> @@ -159,6 +159,7 @@ static const struct usb_device_id blacklist_table[] = {
> /* Atheros 3011 with sflash firmware */
> { USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
> + { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
> { USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },
>

2015-02-13 19:22:42

by Josh Boyer

[permalink] [raw]
Subject: Re: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

On Fri, Feb 13, 2015 at 10:20:51PM +0300, Dmitry Tunin wrote:
>
> > From: alxpl <[email protected]>
> >
> > Add 04f2:aff1 to ath3k.c supported devices list and btusb.c blacklist, so that the device can load the ath3k firmware and re-enumerate itself as an AR3011 device.
> >
> >
> > T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
> > D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
> > P: Vendor=04f2 ProdID=aff1 Rev= 0.01
> > C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
> > I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
> > E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> > E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> > I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> > E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> > I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> > E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> > I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> > E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> > I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> > E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> > I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> > E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> > I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> > E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
> > E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
> >
> >
> > Signed-off-by: Alexander Ploumistos <[email protected]>
>
> I think it makes sense to add
>
> Cc: [email protected]
>
> If you do, it will be merged into stable kernel versions.

I agree, but this is something the upstream maintainer can also add at
their discretion.

josh

>
>
> > ---
> > drivers/bluetooth/ath3k.c | 1 +
> > drivers/bluetooth/btusb.c | 1 +
> > 2 files changed, 2 insertions(+)
> >
> > diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
> > index de4c849..288547a 100644
> > --- a/drivers/bluetooth/ath3k.c
> > +++ b/drivers/bluetooth/ath3k.c
> > @@ -65,6 +65,7 @@ static const struct usb_device_id ath3k_table[] = {
> > /* Atheros AR3011 with sflash firmware*/
> > { USB_DEVICE(0x0489, 0xE027) },
> > { USB_DEVICE(0x0489, 0xE03D) },
> > + { USB_DEVICE(0x04F2, 0xAFF1) },
> > { USB_DEVICE(0x0930, 0x0215) },
> > { USB_DEVICE(0x0CF3, 0x3002) },
> > { USB_DEVICE(0x0CF3, 0xE019) },
> > diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
> > index b876888..2f9c9d8c 100644
> > --- a/drivers/bluetooth/btusb.c
> > +++ b/drivers/bluetooth/btusb.c
> > @@ -159,6 +159,7 @@ static const struct usb_device_id blacklist_table[] = {
> > /* Atheros 3011 with sflash firmware */
> > { USB_DEVICE(0x0489, 0xe027), .driver_info = BTUSB_IGNORE },
> > { USB_DEVICE(0x0489, 0xe03d), .driver_info = BTUSB_IGNORE },
> > + { USB_DEVICE(0x04f2, 0xaff1), .driver_info = BTUSB_IGNORE },
> > { USB_DEVICE(0x0930, 0x0215), .driver_info = BTUSB_IGNORE },
> > { USB_DEVICE(0x0cf3, 0x3002), .driver_info = BTUSB_IGNORE },
> > { USB_DEVICE(0x0cf3, 0xe019), .driver_info = BTUSB_IGNORE },
> >

2015-02-13 19:37:55

by Alexander Ploumistos

[permalink] [raw]
Subject: Re: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

On Fri, Feb 13, 2015 at 9:21 PM, Josh Boyer <[email protected]> wrote:
>
> On Fri, Feb 13, 2015 at 10:20:51PM +0300, Dmitry Tunin wrote:
> >
> > I think it makes sense to add
> >
> > Cc: [email protected]
> >
> > If you do, it will be merged into stable kernel versions.
>
> I agree, but this is something the upstream maintainer can also add at
> their discretion.

After feeling stupid for a few minutes, given that
[email protected] was already in the Cc list of my messages, I
realized that you meant to also include it in the message body (or
have I got it wrong again?).
No, I think I've spammed everyone enough for one evening and I would
also like to put some distance between myself and git, at least for
today.
If deemed necessary, I will do it tomorrow.

Thank you all for everything so far, it's been educational.

Best regards
Alex

2015-02-13 19:42:28

by Josh Boyer

[permalink] [raw]
Subject: Re: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

On Fri, Feb 13, 2015 at 09:37:31PM +0200, Alexander Ploumistos wrote:
> On Fri, Feb 13, 2015 at 9:21 PM, Josh Boyer <[email protected]> wrote:
> >
> > On Fri, Feb 13, 2015 at 10:20:51PM +0300, Dmitry Tunin wrote:
> > >
> > > I think it makes sense to add
> > >
> > > Cc: [email protected]
> > >
> > > If you do, it will be merged into stable kernel versions.
> >
> > I agree, but this is something the upstream maintainer can also add at
> > their discretion.
>
> After feeling stupid for a few minutes, given that
> [email protected] was already in the Cc list of my messages, I
> realized that you meant to also include it in the message body (or
> have I got it wrong again?).

In the message body, yes. It would look like:

<blah blah blah>

Cc: [email protected]
Signed-off-by: <you>

<patch>

> No, I think I've spammed everyone enough for one evening and I would
> also like to put some distance between myself and git, at least for
> today.
> If deemed necessary, I will do it tomorrow.

Marcel will let you know I'm sure. I hope he can just add it if he
thinks it is applicable.

> Thank you all for everything so far, it's been educational.

Thanks for persisting through this. The first time is always the
hardest, and it is great to see people being helpful to a new
contributor.

josh

2015-02-14 23:49:06

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

Hi Alexander,

> Add 04f2:aff1 to ath3k.c supported devices list and btusb.c blacklist, so that the device can load the ath3k firmware and re-enumerate itself as an AR3011 device.
>
>
> T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
> D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
> P: Vendor=04f2 ProdID=aff1 Rev= 0.01
> C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
> I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
> E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
> I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
> I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
> I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
> I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
> I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
> E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
> E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
>
>
> Signed-off-by: Alexander Ploumistos <[email protected]>
> ---
> drivers/bluetooth/ath3k.c | 1 +
> drivers/bluetooth/btusb.c | 1 +
> 2 files changed, 2 insertions(+)

patch has been applied to bluetooth-next tree.

However I had to reformat the From: line, the subject and the commit message. Please make sure that these are following in the rules for patches. Otherwise applying a patch turns into a lot of work for maintainer.

Regards

Marcel

2015-02-15 00:43:59

by Alexander Ploumistos

[permalink] [raw]
Subject: Re: [PATCH v2] Bluetooth: ath3k: Add support for 04f2:aff1 (Atheros AR5B195 combo Mini PCIe card)

Hello Marcel,

Thank you for accepting my patch and sorry I put you through so much
trouble for just two variables. Until Dmitry chimed in, I was pretty
sure I had followed everything in Documentation/SubmittingPatches to
the letter. I also had some trouble using my fedoraproject.org alias
with gmail and "git send-email", but I think that I'll be able to get
my ducks in a row if I ever want to submit a patch again.

Best regards
Alex