LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* Re: [PATCH v5 1/2] Bluetooth: btusb: Record debug log for Mediatek Chip.
[not found] <20210804090316.12080-1-mark-yw.chen@mediatek.com>
@ 2021-08-04 14:48 ` Marcel Holtmann
2021-08-04 23:14 ` Tedd Ho-Jeong An
[not found] ` <20210804090316.12080-2-mark-yw.chen@mediatek.com>
1 sibling, 1 reply; 4+ messages in thread
From: Marcel Holtmann @ 2021-08-04 14:48 UTC (permalink / raw)
To: "Mark-YW Chen (陳揚文)"
Cc: Johan Hedberg, chris.lu, will-cy.lee, Sean Wang, BlueZ,
linux-mediatek, open list, Michael Sun, shawnku, jemele, apusaka,
mcchou
Hi Mark,
> Mediatek Bluetooth controller sends the FW log and FW dump via EP2.
> This patch creates an MTK specified callback(btusb_recv_acl_mtk) to
> replace the original one (hci_recv_frame) when an MTK controller is
> detected. The new callback will separate the firmware dump traffics
> from the ACL data to have them process separately.
>
> 1. Add a new field (recv_acl) to the btusb_data struct to store
> vendor-specific ACL callback handler.
> 2. Add the MTK-specific ACL callback handler (btusb_recv_acl_mtk) to
> process ACL data, debug log, and firmware dump.
> 3. The debug log traces LMP/LL events and connection quality reports.
> 4. The upper layer can use hci_channel_monitor to receive these
> packets.
>
> Example btmon: firmware debug log.
> 1. Enable firmware debug log.
> < HCI Command: Vendor (0x3f|0x005d) plen 4
> 00 00 02 02 ....
>> HCI Event: Command Complete (0x0e) plen 8
> Vendor (0x3f|0x005d) ncmd 1
> Status: Success (0x00)
> 00 00 02 02 ....
> 2. Diagnostic packet from controller
> = Vendor Diagnostic (len 500)
> ff 05 f0 01 fd ff 02 0e 08 01 5d fc 00 00 00 02
> 02 aa aa aa cb e3 f0 15 b0 0c 5f 01 00 d1 0f 33
> 01 7f 00 08 57 61 0c 00 00 00 00 00 23 37 17 00
> fd ff 00 00 29 60 ff ff b1 56 e8 00 57 40 0a 40
> 39 95 f2 00 47 40 43 00 fc f0 16 00 57 61 0c 00
> 00 00 00 00 23 37 17 00 fd ff 00 00 29 60 ff ff
> 65 95 f2 00 57 40 0a 40 ec d3 fc 00 47 40 3b 00
> 2c f1 17 00 57 61 0c 00 00 00 00 00 23 37 17 00
> fd ff 00 00 29 60 ff ff 19 d4 fc 00 57 40 76 1c
> b2 61 01 01 47 40 b3 04 0b 63 18 00 fe ff 02 01
> 04 05 33 8b 9e 08 00 aa aa aa aa aa 27 38 01 02
> 01 00 00 00 02 e0 10 00 20 00 20 00 2a 08 40 00
> 20 00 20 08 2a 08 02 00 40 00 00 01 2e 08 40 00
> 01 67 b0 c2 2e 08 3e 07 ff ff ff ff 40 08 01 00
> 02 00 00 00 34 08 a3 00 00 00 00 00 34 08 a3 00
> 00 00 00 00 35 08 45 01 00 00 00 00 2e 08 40 00
> 01 67 b0 c2 30 35 01 02 00 00 00 00 2c 31 01 00
> 02 00 00 40 2d 19 03 00 00 40 00 00 fd ff 02 0f
> 04 00 01 01 04 aa aa aa aa aa aa aa 57 61 0c 00
> 00 00 00 00 23 46 32 00 01 00 00 00 2f 35 00 02
> 00 00 00 00 29 35 ff 02 00 22 00 00 2d 31 a6 02
> 02 00 00 00 31 6c 40 00 14 63 18 1b 31 6c 40 00
> 14 63 18 23 51 08 53 00 12 63 18 00 2c 35 12 01
> fe 00 00 00 2b 35 fe 02 02 00 00 00 2f 31 21 00
> 00 00 02 00 75 61 01 00 4c 1b 93 00 79 61 01 00
> 00 00 00 00 12 e3 63 18 20 31 86 01 74 61 68 03
> 00 00 04 00 a1 73 ff 00 b9 01 00 00 a1 73 04 00
> 00 00 00 00 a1 73 00 00 00 00 00 00 a1 73 00 00
> 02 00 00 00 31 6c 40 00 16 63 18 0c 31 6c 40 00
> 16 63 18 1c 77 61 40 00 48 33 40 00 14 e3 63 18
> 40 31 86 01 00 d1 02 c5 07 23 a1 34 73 61 37 02
> 02 00 00 a1
>
> Signed-off-by: mark-yw.chen <mark-yw.chen@mediatek.com>
> Reviewed-by: Michael Sun <michaelfsun@google.com>
> Reviewed-by: Archie Pusaka <apusaka@chromium.org>
> ---
> drivers/bluetooth/btusb.c | 25 ++++++++++++++++++++++++-
> 1 file changed, 24 insertions(+), 1 deletion(-)
patch has been applied to bluetooth-next tree.
Regards
Marcel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v5 2/2] Bluetooth: btusb: Support Bluetooth Reset for Mediatek Chip(MT7921)
[not found] ` <20210804090316.12080-2-mark-yw.chen@mediatek.com>
@ 2021-08-04 14:49 ` Marcel Holtmann
0 siblings, 0 replies; 4+ messages in thread
From: Marcel Holtmann @ 2021-08-04 14:49 UTC (permalink / raw)
To: "Mark-YW Chen (陳揚文)"
Cc: Johan Hedberg, chris.lu, will-cy.lee, sean.wang, linux-bluetooth,
linux-mediatek, linux-kernel, michaelfsun, shawnku, jemele,
apusaka, mcchou
Hi Mark,
> When the firmware hang or command no response, driver can reset the
> bluetooth mcu via USB to recovery it. The reset steps as follows.
>
> 1. Cancel USB transfer requests before reset.
> 2. It use speicific USB HW Register to reset Bluetooth MCU, at the
> same time, the USB Endpoint0 still keep alive.
> 3. Poll the USB HW register until reset is completed by Endpoint0.
> 4. To recovery unexpected USB state and behavior during resetting the
> Bluetooth MCU, the driver need to reset the USB device for MT7921.
> 5. After the reset is completed, the Bluetooth MCU need to re-setup,
> such as download patch, power-on sequence and etc.
>
> Signed-off-by: mark-yw.chen <mark-yw.chen@mediatek.com>
> Reviewed-by: Michael Sun <michaelfsun@google.com>
> Reviewed-by: Archie Pusaka <apusaka@chromium.org>
> ---
> drivers/bluetooth/btusb.c | 129 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 129 insertions(+)
patch has been applied to bluetooth-next tree.
Regards
Marcel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v5 1/2] Bluetooth: btusb: Record debug log for Mediatek Chip.
2021-08-04 14:48 ` [PATCH v5 1/2] Bluetooth: btusb: Record debug log for Mediatek Chip Marcel Holtmann
@ 2021-08-04 23:14 ` Tedd Ho-Jeong An
2021-08-05 13:12 ` Marcel Holtmann
0 siblings, 1 reply; 4+ messages in thread
From: Tedd Ho-Jeong An @ 2021-08-04 23:14 UTC (permalink / raw)
To: Marcel Holtmann, "Mark-YW Chen (陳揚文)"
Cc: Johan Hedberg, chris.lu, will-cy.lee, Sean Wang, BlueZ,
linux-mediatek, open list, Michael Sun, shawnku, jemele, apusaka,
mcchou
Hi Mark,
I cannot find the original patch email and CI report, however this patch throws this warning.
drivers/bluetooth/btusb.c: In function ‘btusb_recv_acl_mtk’:
drivers/bluetooth/btusb.c:4033:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
4033 | usb_disable_autosuspend(data->udev);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/bluetooth/btusb.c:4034:2: note: here
4034 | case 0x05ff: /* Firmware debug logging 1 */
| ^~~~
Regards,
Tedd
On Wed, 2021-08-04 at 16:48 +0200, Marcel Holtmann wrote:
> Hi Mark,
>
> > Mediatek Bluetooth controller sends the FW log and FW dump via EP2.
> > This patch creates an MTK specified callback(btusb_recv_acl_mtk) to
> > replace the original one (hci_recv_frame) when an MTK controller is
> > detected. The new callback will separate the firmware dump traffics
> > from the ACL data to have them process separately.
> >
> > 1. Add a new field (recv_acl) to the btusb_data struct to store
> > vendor-specific ACL callback handler.
> > 2. Add the MTK-specific ACL callback handler (btusb_recv_acl_mtk) to
> > process ACL data, debug log, and firmware dump.
> > 3. The debug log traces LMP/LL events and connection quality reports.
> > 4. The upper layer can use hci_channel_monitor to receive these
> > packets.
> >
> > Example btmon: firmware debug log.
> > 1. Enable firmware debug log.
> > < HCI Command: Vendor (0x3f|0x005d) plen 4
> > 00 00 02 02 ....
> > > HCI Event: Command Complete (0x0e) plen 8
> > Vendor (0x3f|0x005d) ncmd 1
> > Status: Success (0x00)
> > 00 00 02 02 ....
> > 2. Diagnostic packet from controller
> > = Vendor Diagnostic (len 500)
> > ff 05 f0 01 fd ff 02 0e 08 01 5d fc 00 00 00 02
> > 02 aa aa aa cb e3 f0 15 b0 0c 5f 01 00 d1 0f 33
> > 01 7f 00 08 57 61 0c 00 00 00 00 00 23 37 17 00
> > fd ff 00 00 29 60 ff ff b1 56 e8 00 57 40 0a 40
> > 39 95 f2 00 47 40 43 00 fc f0 16 00 57 61 0c 00
> > 00 00 00 00 23 37 17 00 fd ff 00 00 29 60 ff ff
> > 65 95 f2 00 57 40 0a 40 ec d3 fc 00 47 40 3b 00
> > 2c f1 17 00 57 61 0c 00 00 00 00 00 23 37 17 00
> > fd ff 00 00 29 60 ff ff 19 d4 fc 00 57 40 76 1c
> > b2 61 01 01 47 40 b3 04 0b 63 18 00 fe ff 02 01
> > 04 05 33 8b 9e 08 00 aa aa aa aa aa 27 38 01 02
> > 01 00 00 00 02 e0 10 00 20 00 20 00 2a 08 40 00
> > 20 00 20 08 2a 08 02 00 40 00 00 01 2e 08 40 00
> > 01 67 b0 c2 2e 08 3e 07 ff ff ff ff 40 08 01 00
> > 02 00 00 00 34 08 a3 00 00 00 00 00 34 08 a3 00
> > 00 00 00 00 35 08 45 01 00 00 00 00 2e 08 40 00
> > 01 67 b0 c2 30 35 01 02 00 00 00 00 2c 31 01 00
> > 02 00 00 40 2d 19 03 00 00 40 00 00 fd ff 02 0f
> > 04 00 01 01 04 aa aa aa aa aa aa aa 57 61 0c 00
> > 00 00 00 00 23 46 32 00 01 00 00 00 2f 35 00 02
> > 00 00 00 00 29 35 ff 02 00 22 00 00 2d 31 a6 02
> > 02 00 00 00 31 6c 40 00 14 63 18 1b 31 6c 40 00
> > 14 63 18 23 51 08 53 00 12 63 18 00 2c 35 12 01
> > fe 00 00 00 2b 35 fe 02 02 00 00 00 2f 31 21 00
> > 00 00 02 00 75 61 01 00 4c 1b 93 00 79 61 01 00
> > 00 00 00 00 12 e3 63 18 20 31 86 01 74 61 68 03
> > 00 00 04 00 a1 73 ff 00 b9 01 00 00 a1 73 04 00
> > 00 00 00 00 a1 73 00 00 00 00 00 00 a1 73 00 00
> > 02 00 00 00 31 6c 40 00 16 63 18 0c 31 6c 40 00
> > 16 63 18 1c 77 61 40 00 48 33 40 00 14 e3 63 18
> > 40 31 86 01 00 d1 02 c5 07 23 a1 34 73 61 37 02
> > 02 00 00 a1
> >
> > Signed-off-by: mark-yw.chen <mark-yw.chen@mediatek.com>
> > Reviewed-by: Michael Sun <michaelfsun@google.com>
> > Reviewed-by: Archie Pusaka <apusaka@chromium.org>
> > ---
> > drivers/bluetooth/btusb.c | 25 ++++++++++++++++++++++++-
> > 1 file changed, 24 insertions(+), 1 deletion(-)
>
> patch has been applied to bluetooth-next tree.
>
> Regards
>
> Marcel
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v5 1/2] Bluetooth: btusb: Record debug log for Mediatek Chip.
2021-08-04 23:14 ` Tedd Ho-Jeong An
@ 2021-08-05 13:12 ` Marcel Holtmann
0 siblings, 0 replies; 4+ messages in thread
From: Marcel Holtmann @ 2021-08-05 13:12 UTC (permalink / raw)
To: Tedd Ho-Jeong An
Cc: Mark-YW.Chen, Johan Hedberg, chris.lu, will-cy.lee, Sean Wang,
BlueZ, linux-mediatek, open list, Michael Sun, shawnku, jemele,
Archie Pusaka, Miao-chen Chou
Hi Tedd,
> I cannot find the original patch email and CI report, however this patch throws this warning.
>
> drivers/bluetooth/btusb.c: In function ‘btusb_recv_acl_mtk’:
> drivers/bluetooth/btusb.c:4033:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
> 4033 | usb_disable_autosuspend(data->udev);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/bluetooth/btusb.c:4034:2: note: here
> 4034 | case 0x05ff: /* Firmware debug logging 1 */
> | ^~~~
the /* fall through */ comment is missing.
Regards
Marcel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-08-05 13:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20210804090316.12080-1-mark-yw.chen@mediatek.com>
2021-08-04 14:48 ` [PATCH v5 1/2] Bluetooth: btusb: Record debug log for Mediatek Chip Marcel Holtmann
2021-08-04 23:14 ` Tedd Ho-Jeong An
2021-08-05 13:12 ` Marcel Holtmann
[not found] ` <20210804090316.12080-2-mark-yw.chen@mediatek.com>
2021-08-04 14:49 ` [PATCH v5 2/2] Bluetooth: btusb: Support Bluetooth Reset for Mediatek Chip(MT7921) Marcel Holtmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).