[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHCN7xJPv7W381R7LS4bB8xWWpugz2NwbTUtj-hqHnDBZ9MFzA@mail.gmail.com>
Date: Fri, 4 Oct 2019 05:38:59 -0500
From: Adam Ford <aford173@...il.com>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jslaby@...e.com>, linux-serial@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux-OMAP <linux-omap@...r.kernel.org>,
Vignesh R <vigneshr@...com>
Subject: Re: DM3730 Bluetooth Performance differences between SERIAL_8250_OMAP
vs SERIAL_OMAP
On Fri, Oct 4, 2019 at 5:02 AM Adam Ford <aford173@...il.com> wrote:
>
> I am running Kernel 5.3.2 trying to troubleshoot some intermittent
> Bluetooth issues, and I think I have narrowed it down to the serial
> driver in use.
I should have also noted that it's using UART2 with CTS and RTS on the
DM3730 (omap3630) and its configured with a baud rate of 3M.
I tried slowing it to 115200, but that didn't help. I tried disabling
the DMA hooks from the device tree, and that didn't help.
> By default, omap2plus_defconfig enables both SERIAL_8250_OMAP and
> SERIAL_OMAP. I have my console device configured as ttyS0, and all
> appears fine. When I enable Bluetooth, however, I get intermittent
> errors on an DM3730 / OMAP3630.
>
> Using the 8250 driver for Blueotooth I get intermittent frame errors
> and data loss.
>
> Scanning ...
> [ 28.482452] Bluetooth: hci0: Frame reassembly failed (-84)
> [ 36.162170] Bluetooth: hci0: Frame reassembly failed (-84)
> F4:4E:FC:C9:2F:57 BluJax
> # l2ping F4:4E:FC:C9:2F:57
> Ping: F4:4E:FC:C9:2F:57 from 00:18:30:49:7D:63 (data size 44) ...
> 44 bytes from F4:4E:FC:C9:2F:57 id 0 time 8.27ms
> no response from F4:4E:FC:C9:2F:57: id 1
> ^C2 sent, 1 received, 50% loss
>
> (after a fairly long hang, I hit control-c)
>
> However, disabling the 8250 driver and using the only SERIAL_OMAP and
> the console routed to ttyO0, the Bluetooth works well, so I believe it
> to be a serial driver issue and not a Bluetooth error.
>
> # hcitool scan
> Scanning ...
> F4:4E:FC:C9:2F:57 BluJax
> ^C
> # l2ping F4:4E:FC:C9:2F:57
> Ping: F4:4E:FC:C9:2F:57 from 00:18:30:49:7D:63 (data size 44) ...
> 44 bytes from F4:4E:FC:C9:2F:57 id 0 time 6.90ms
> ...
> 44 bytes from F4:4E:FC:C9:2F:57 id 14 time 28.29ms
> ^C15 sent, 15 received, 0% loss
> #
>
> 0% loss and regular, repeatable communication without any Frame
> reassembly errors.
>
I tried disabling SERIAL_OMAP and using only SERIAL_8250_OMAP, but
that didn't help. Because the issue goes away when I disable
SERIAL_8250_OMAP, I am wondering if something is either being
misconfigured or some IRQ or DMA integration is missing that may be
present with the older SERIAL_OMAP driver.
> Any suggestions on how to troubleshoot or what might cause the
> difference between the two drivers?
>
> adam
Powered by blists - more mailing lists