Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757980AbcDHIHt (ORCPT ); Fri, 8 Apr 2016 04:07:49 -0400 Received: from mail-oi0-f50.google.com ([209.85.218.50]:36622 "EHLO mail-oi0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757048AbcDHIHl (ORCPT ); Fri, 8 Apr 2016 04:07:41 -0400 MIME-Version: 1.0 In-Reply-To: <5706F325.6090001@hurleysoftware.com> References: <1460061433-63750-1-git-send-email-andriy.shevchenko@linux.intel.com> <1460061433-63750-7-git-send-email-andriy.shevchenko@linux.intel.com> <5706F325.6090001@hurleysoftware.com> Date: Fri, 8 Apr 2016 11:07:39 +0300 Message-ID: Subject: Re: [PATCH v1 06/12] serial: 8250_dma: stop ongoing RX DMA on exception From: Andy Shevchenko To: Peter Hurley Cc: Andy Shevchenko , Vinod Koul , "linux-kernel@vger.kernel.org" , dmaengine , Greg Kroah-Hartman , "Puustinen, Ismo" , Heikki Krogerus , "linux-serial@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 727 Lines: 24 On Fri, Apr 8, 2016 at 2:54 AM, Peter Hurley wrote: > On 04/07/2016 01:37 PM, Andy Shevchenko wrote: >> If we get an exeption interrupt. i.e. UART_IIR_RLSI, stop any ongoing RX DMA >> transfer otherwise it might generates more spurious interrupts and make port >> unavailable anymore. > > Then how to know which rx byte the error is for if dma continues anyway? > What if there are multiple error bytes? And how should it work? We get an interrupt during DMA, if we don't stop DMA it will be racy with direct readings. > > >> As has been seen on Intel Broxton system: > > This system shouldn't be setup for UART DMA imo. Same approach is done in 8250_omap. -- With Best Regards, Andy Shevchenko