Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1379059

Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes

From Peter Hurley <peter@hurleysoftware.com>
Newsgroups linux.kernel
Subject Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes
Date 2016-04-14 18:10 +0200
Message-ID <rnS0a-4DT-9@gated-at.bofh.it> (permalink)
References (3 earlier) <rmOhX-1e7-1@gated-at.bofh.it> <rmOUG-1Pg-21@gated-at.bofh.it> <rmQts-3h1-13@gated-at.bofh.it> <rn9Z7-2vk-9@gated-at.bofh.it> <rnbxT-3BX-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 04/12/2016 11:42 AM, Peter Hurley wrote:
> On 04/12/2016 10:03 AM, Sebastian Andrzej Siewior wrote:
>> On 04/11/2016 10:10 PM, Peter Hurley wrote:
>>> On 04/11/2016 11:31 AM, Sebastian Andrzej Siewior wrote:
>>>> On 04/11/2016 07:53 PM, Peter Hurley wrote:
>>>>> On 04/11/2016 01:18 AM, John Ogness wrote:
>>>>>> On 2016-04-05, Peter Hurley <peter@hurleysoftware.com> wrote:
>>>>>>> On 03/31/2016 01:41 AM, John Ogness wrote:
>>>>>>>> It has been observed that the TX-DMA can stall
>>>>>>>
>>>>>>> Does this happen on any other OMAP part besides am335x?
>>>>>>> I looked back over the LKML history of this and didn't see
>>>>>>> any other design implicated in this problem.
>>>>>>
>>>>>> I just ran the tests again using 4.6-rc2. I am able to reproduce the
>>>>>> dma-tx stall with am335x/edma and dra7/sdma.

What "test" is reproducing this problem?


>>>>> I thought we already established sdma was not to be used since
>>>>> the hardware does not actually support pausing without data loss.
>>>>
>>>> This workaround was not invented for sdma but for edma (with am335x).
>>>
>>> According to John above, dra7/sdma requires this workaround.
>>
>> It was reported by Frans Klaver against am335x
>>  http://lkml.kernel.org/r/20140908183353.GB4686@ci00147.xsens-tech.local
>>
>> and I managed to reproduce this with his yocto image on dra7 and am335x:
>>  http://lkml.kernel.org/r/20140921204100.GA10111@linutronix.de

I overlooked Sebastian's statement from that message:

This includes
changing the baudrate (not by yocto but the driver sets it to 0 and then
to the requested one) and this seems to be responsible for the "bad
bytes".

What is changing the baud rate to 0? How about get a stack trace for that?



> [...]
> 
>>> - hangs changing some unknown register if tx dma in progress
>>>   (ie., this termios change workaround)
>>
>> I think some registers are the baud-rate registers which pause engine.
> 
> Let's back up here and focus on just this problem for now.
> 
> Since this is observable on dra7/sdma, then it's not related to
> the OMAP_DMA_TX_KICK problem. IOW, dropping tx dma support for am335x
> does not make this go away, which is what I was asking.
> 
> Now, if the DLL/DLH/MDR1 register writes are causing dma to stall,
> then skipping those if they're unchanged should fix this, and then
> pause/terminating in-progress DMA if any of these registers are being
> written would be acceptable since some data loss is to be expected
> when changing the baud rate without waiting.
> 

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Peter Hurley <peter@hurleysoftware.com> - 2016-04-05 06:10 +0200
  Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes John Ogness <john.ogness@linutronix.de> - 2016-04-11 10:20 +0200
    Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Peter Hurley <peter@hurleysoftware.com> - 2016-04-11 20:00 +0200
      Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Sebastian Andrzej Siewior <bigeasy@linutronix.de> - 2016-04-11 20:40 +0200
        Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Peter Hurley <peter@hurleysoftware.com> - 2016-04-11 22:20 +0200
          Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Sebastian Andrzej Siewior <bigeasy@linutronix.de> - 2016-04-12 19:10 +0200
            Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Peter Hurley <peter@hurleysoftware.com> - 2016-04-12 20:50 +0200
              Re: [PATCH] tty: serial: 8250_omap: do not defer termios changes Peter Hurley <peter@hurleysoftware.com> - 2016-04-14 18:10 +0200
            8250 dma issues ( was Re: [PATCH] tty: serial: 8250_omap: do not  defer termios changes) Peter Hurley <peter@hurleysoftware.com> - 2016-04-13 01:30 +0200
              Re: 8250 dma issues ( was Re: [PATCH] tty: serial: 8250_omap: do  not defer termios changes) One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> - 2016-04-14 17:10 +0200
                Re: 8250 dma issues ( was Re: [PATCH] tty: serial: 8250_omap: do not  defer termios changes) Peter Hurley <peter@hurleysoftware.com> - 2016-04-14 20:00 +0200
            omap uart + dma issues (Re: [PATCH] tty: serial: 8250_omap: do not  defer termios changes) Peter Hurley <peter@hurleysoftware.com> - 2016-04-13 02:10 +0200
              Re: omap uart + dma issues (Re: [PATCH] tty: serial: 8250_omap: do  not defer termios changes) Sekhar Nori <nsekhar@ti.com> - 2016-04-13 13:20 +0200
                Re: omap uart + dma issues (Re: [PATCH] tty: serial: 8250_omap: do  not defer termios changes) Peter Hurley <peter@hurleysoftware.com> - 2016-04-14 03:20 +0200

csiph-web