On Wed, Oct 9, 2019 at 12:34 PM Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > * Adam Ford <aford173@xxxxxxxxx> [191009 14:09]: > > On Wed, Oct 9, 2019 at 8:42 AM Vignesh Raghavendra <vigneshr@xxxxxx> wrote: > > > > > > Hi Adam, > > > > > > On 06/10/19 10:34 PM, Adam Ford wrote: > > > > Has anyone else had any issues using the CONFIG_SERIAL_8250_DMA on the OMAP? > > > > > > > > I can use the DMA on the legacy, omap-serial driver, but when I enable > > > > the DMA on the 8250-omap driver, I get missing frames in Bluetooth. > > > > > > > > The older driver seems to have an ISR that seems to address a variety > > > > of items compared to the very tiny ISR for 8250-omap.c. > > > > > > > > I am not exactly sure where to start, but if someone has any > > > > suggestions on how I can troubleshoot, please let me know. As of now, > > > > I have to disable CONFIG_SERIAL_8250_DMA to get the Bluetooth > > > > connected to UART2 operational on a DM3730 at 3,000,000 baud, but it > > > > appears to work just fine after some patches I just submitted for > > > > handling RTS/CTS. The legacy omap-serial driver works fine with DMA. > > > > > > > > > > Mainline omap-serial does not support DMA (evident from lack of > > > dmaengine API calls) and therefore is not a regression. So OMAP3 UART > > > DMA was never tested at least with 8250 driver. > > > I am not sure enabling UART DMA on OMAP3 would be a trivial job. We need > > > analyse of whether all erratas workarounds are implemented and see if > > > there any difference wrt DMA integration itself. Do we know if UART DMA > > > ever worked on OMAP3 previously? > > > > Can we disable CONFIG_SERIAL_8250_DMA from omap2plus_defconfig? As > > of right now, it's the only way I can use the Bluetooth. There are > > #ifdef's in the 8250-omap driver, so it looks like some of the hooks > > are there, but if it's incomplete, it seems like we shouldn't enable > > this config option by default yet. > > From what I recall I tested that DMA on omap3 worked fine with runtime > PM for console. Certainly there are issues still remaining though. > > If you want to disable dma for a specific port, just delete the > add /delete-property/dma-names for the port in question in your > board specific dts file. > > See 8250_omap.c for of_property_count_strings(np, "dma-names"). Thank you. That seems to have worked. I'll check the AM3517 when I have some time to see if it needs the same patch. For now, I pushed the patch to the omap mailing list for the Logic PD Torpedo board. Should we consider removing the OMAP_SERIAL from omap2plus_defconfig in the 8250 is the preferred driver? It seems odd to me that both drivers are enabled. adam > > Regards, > > Tony > >