[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMuHMdWWmydtHaVwquW7E1+LaEjS+MMyO_fMaD-QpJtCMWMBWw@mail.gmail.com>
Date: Mon, 6 Nov 2017 14:27:36 +0100
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Kuninori Morimoto <kuninori.morimoto.gx@...esas.com>
Cc: Vinod Koul <vinod.koul@...el.com>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Dan Williams <dan.j.williams@...el.com>,
Niklas Söderlund
<niklas.soderlund+renesas@...natech.se>, dmaengine@...r.kernel.org,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Hiroyuki Yokoyama <hiroyuki.yokoyama.vx@...esas.com>,
Linux-Renesas <linux-renesas-soc@...r.kernel.org>
Subject: Re: [PATCH v3] dmaengine: rcar-dmac: use TCRB instead of TCR for residue
Hi Morimoto-san,
On Mon, Nov 6, 2017 at 2:24 AM, Kuninori Morimoto
<kuninori.morimoto.gx@...esas.com> wrote:
>> Large serial console input (copy and pasting long lines) works, as that uses
>> DMA. Small serial console input (typing) doesn't work.
>>
>> Apparently for the serial port, TCR contains the value we need (< 0x20),
>> while TCRB always contains 0x20.
>> Perhaps the code should use the minimum of both registers instead?
>
> TCR(= read) happen 1st, and TCRB (= write) happen next.
> "TCRB always contains 0x20" means, DMA didn't transfer data for some reason ?
In the case of the serial console, the individual characters were actually
transfered, as the console did manage to read them.
With your patch, the serial driver doesn't know about them (residue == 0),
and the console doesn't see them.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Powered by blists - more mailing lists