[0/4] 8250: DMA Fixes

Message ID 20221107110708.58223-1-ilpo.jarvinen@linux.intel.com
Headers
Series 8250: DMA Fixes |

Message

Ilpo Järvinen Nov. 7, 2022, 11:07 a.m. UTC
  Here are a number of 8250 DMA related fixes. The last one seems the
most serious problem able to corrupt the payload ordering.

Ilpo Järvinen (4):
  serial: 8250: Fall back to non-DMA Rx if IIR_RDI occurs
  serial: 8250_lpss: Configure DMA also w/o DMA filter
  serial: 8250_lpss: Use 16B DMA burst with Elkhart Lake
  serial: 8250: Flush DMA Rx on RLSI

 drivers/tty/serial/8250/8250_lpss.c | 18 +++++++++++++-----
 drivers/tty/serial/8250/8250_port.c |  7 +++++--
 2 files changed, 18 insertions(+), 7 deletions(-)
  

Comments

Andy Shevchenko Nov. 7, 2022, 11:32 a.m. UTC | #1
On Mon, Nov 07, 2022 at 01:07:04PM +0200, Ilpo Järvinen wrote:
> Here are a number of 8250 DMA related fixes. The last one seems the
> most serious problem able to corrupt the payload ordering.
> 
> Ilpo Järvinen (4):
>   serial: 8250: Fall back to non-DMA Rx if IIR_RDI occurs

8250_port?

>   serial: 8250_lpss: Configure DMA also w/o DMA filter
>   serial: 8250_lpss: Use 16B DMA burst with Elkhart Lake
>   serial: 8250: Flush DMA Rx on RLSI

8250_port?

> 
>  drivers/tty/serial/8250/8250_lpss.c | 18 +++++++++++++-----
>  drivers/tty/serial/8250/8250_port.c |  7 +++++--
>  2 files changed, 18 insertions(+), 7 deletions(-)
  
Ilpo Järvinen Nov. 7, 2022, 11:50 a.m. UTC | #2
On Mon, 7 Nov 2022, Andy Shevchenko wrote:

> On Mon, Nov 07, 2022 at 01:07:04PM +0200, Ilpo Järvinen wrote:
> > Here are a number of 8250 DMA related fixes. The last one seems the
> > most serious problem able to corrupt the payload ordering.
> > 
> > Ilpo Järvinen (4):
> >   serial: 8250: Fall back to non-DMA Rx if IIR_RDI occurs
> 
> 8250_port?
> 
> >   serial: 8250_lpss: Configure DMA also w/o DMA filter
> >   serial: 8250_lpss: Use 16B DMA burst with Elkhart Lake
> >   serial: 8250: Flush DMA Rx on RLSI
> 
> 8250_port?

Why?

To me this 8250_core/port split is still integral part of the same 
8250 even if they're in the end technically loaded into different modules
or the code is in a different file. There's even some trickery to access 
internals of the other part to workaround the circular module dependency 
logic that would otherwise prevent the split (like we learned not so long 
time ago with that setup_irq change).

I can start to use 8250_port if you insist but it seems pointless 5 extra 
characters out from a resource that is scarse to begin with, IMHO (the 
summary line is not that long).