From: Tony Lindgren <tony@atomide.com>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
balbi@ti.com, Vinod Koul <vinod.koul@intel.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [PATCH 15/15] tty: serial: 8250: omap: add dma support
Date: Thu, 21 Aug 2014 11:44:16 -0700 [thread overview]
Message-ID: <20140821184416.GF10066@atomide.com> (raw)
In-Reply-To: <53F5AF0D.5060409@linutronix.de>
* Sebastian Andrzej Siewior <bigeasy@linutronix.de> [140821 01:37]:
> On 08/15/2014 11:02 PM, Tony Lindgren wrote:
> > * Sebastian Andrzej Siewior <bigeasy@linutronix.de> [140815 11:13]:
> >> +#ifdef CONFIG_SERIAL_8250_DMA
> >> + if (pdev->dev.of_node) {
> >> + /*
> >> + * Oh DMA support. If there are no DMA properties in the DT then
> >> + * we will fall back to a generic DMA channel which does not
> >> + * really work here. To ensure that we do not get a generic DMA
> >> + * channel assigned, we have the the_no_dma_filter_fn() here.
> >> + * To avoid "failed to request DMA" messages we check for DMA
> >> + * properties in DT.
> >> + */
> >> + ret = of_property_count_strings(pdev->dev.of_node, "dma-names");
> >> + if (ret == 2) {
> >> + up.dma = &priv->omap8250_dma;
> >> + priv->omap8250_dma.fn = the_no_dma_filter_fn;
> >> + priv->omap8250_dma.rx_size = RX_TRIGGER;
> >> + priv->omap8250_dma.rxconf.src_maxburst = RX_TRIGGER;
> >> + priv->omap8250_dma.txconf.dst_maxburst = TX_TRIGGER;
> >> +
> >> + if (of_machine_is_compatible("ti,am33xx"))
> >> + up.bugs |= UART_BUG_DMATX;
> >> + }
> >> + }
> >> +#endif
> >
> > Hmm I wonder if there's a more generic solution to this?
>
> To what exactly? The trigger level, the TX-bug or using DMA in the
> first place?
Oh sorry, I meant to having to do of_property_count_strings to
figure out if it's correct or not.
> > It would be also nice to be able to specify the use of DMA from
> > the board specific .dts file.
>
> Really? I don't see this requirement for MMC for instance. However you
> still could provide an empty "dma-names" property in your board .dts
> file if you do not want use DMA. Would this work?
OK yeah that works. And that's needed mostly because of the issue
below.
> > Also, with DMA enabled, looks like omap deeper idle states are
> > blocked as the DMA stays reserved. After I commented out the
> > DMA info for my console UART, PM started working.
>
> Hmm. This would explain something. This would mean that I should cancel
> the RX DMA transfer in the PM-suspend routine. Let me see how that
> works.
OK and if the DMA works with PM, then I don't see why we would not
want to have it automatically enabled.
BTW, looks like the ports move around now though. If set a port
to disabled with status = "disabled"; in the .dts file, you'll get
a different console which does not happen with omap-serial I believe.
Regards,
Tony
next prev parent reply other threads:[~2014-08-21 18:44 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-15 17:42 [PATCH v7] 8250-core based serial driver for OMAP + DMA Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 01/15] tty: serial: 8250_core: allow to overwrite & export serial8250_startup() Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 02/15] tty: serial: 8250_core: allow to set ->throttle / ->unthrottle callbacks Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 03/15] tty: serial: 8250_core: add run time pm Sebastian Andrzej Siewior
2014-08-20 9:23 ` Frans Klaver
2014-08-20 9:39 ` Frans Klaver
2014-09-01 14:48 ` Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 04/15] tty: serial: 8250_core: read only RX if there is something in the FIFO Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 05/15] tty: serial: Add 8250-core based omap driver Sebastian Andrzej Siewior
2014-08-15 18:37 ` Lennart Sorensen
2014-08-15 19:27 ` Sebastian Andrzej Siewior
2014-08-15 19:33 ` Lennart Sorensen
2014-08-15 20:20 ` Sebastian Andrzej Siewior
2014-08-15 21:07 ` Tony Lindgren
2014-08-15 22:44 ` Tony Lindgren
2014-08-29 15:49 ` Sebastian Andrzej Siewior
2014-08-29 16:08 ` Tony Lindgren
2014-08-21 11:00 ` Sebastian Andrzej Siewior
2014-08-21 18:38 ` Tony Lindgren
2014-08-18 13:46 ` Heikki Krogerus
2014-09-01 13:31 ` Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 06/15] tty: serial: 8250_dma: handle error on TX submit Sebastian Andrzej Siewior
2014-08-18 13:57 ` Heikki Krogerus
2014-09-01 14:38 ` Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 07/15] tty: serial: 8250_dma: enqueue RX dma again on completion Sebastian Andrzej Siewior
2014-08-18 10:52 ` One Thousand Gnomes
2014-08-29 15:52 ` Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 08/15] dmaengine: edma: fix two faults which happen with the 8250_dma user Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 09/15] dmaengine: omap-dma: complete the transfer on terminate_all Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 10/15] tty: serial: 8250_dma: Add a TX trigger workaround for AM33xx Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 11/15] tty: serial: 8250_dma: handle the when UART response while DMA remains idle Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 12/15] tty: serial: 8250_dma: add pm runtime Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 13/15] arm: dts: am33xx: add DMA properties for UART Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 14/15] arm: dts: dra7: " Sebastian Andrzej Siewior
2014-08-15 17:42 ` [PATCH 15/15] tty: serial: 8250: omap: add dma support Sebastian Andrzej Siewior
2014-08-15 21:02 ` Tony Lindgren
2014-08-21 8:34 ` Sebastian Andrzej Siewior
2014-08-21 18:44 ` Tony Lindgren [this message]
2014-08-27 19:54 ` Sebastian Andrzej Siewior
2014-08-27 20:23 ` Tony Lindgren
2014-08-28 8:23 ` Sebastian Andrzej Siewior
2014-08-28 16:46 ` Tony Lindgren
2014-08-28 19:37 ` Sebastian Andrzej Siewior
2014-08-28 22:54 ` Tony Lindgren
2014-08-29 9:32 ` Sebastian Andrzej Siewior
2014-08-29 15:55 ` Felipe Balbi
2014-08-29 16:12 ` Tony Lindgren
2014-08-29 16:31 ` Sebastian Andrzej Siewior
2014-09-01 17:47 ` Sebastian Andrzej Siewior
2014-09-02 3:05 ` Sebastian Reichel
2014-09-02 16:55 ` Tony Lindgren
2014-09-02 18:39 ` Sebastian Andrzej Siewior
2014-09-02 20:15 ` Tony Lindgren
2014-09-02 20:38 ` Sebastian Reichel
2014-09-03 16:46 ` Sebastian Andrzej Siewior
2014-09-03 17:48 ` Tony Lindgren
2014-09-04 13:44 ` Sebastian Andrzej Siewior
2014-09-04 14:52 ` Tony Lindgren
2014-09-04 14:56 ` Sebastian Andrzej Siewior
2014-09-04 16:25 ` Tony Lindgren
2014-08-15 18:17 ` [PATCH v7] 8250-core based serial driver for OMAP + DMA Lennart Sorensen
2014-08-15 19:14 ` Sebastian Andrzej Siewior
2014-08-15 20:28 ` Tony Lindgren
2014-08-17 20:35 ` Sebastian Andrzej Siewior
2014-08-18 15:15 ` Peter Hurley
2014-08-18 16:37 ` Felipe Balbi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140821184416.GF10066@atomide.com \
--to=tony@atomide.com \
--cc=balbi@ti.com \
--cc=bigeasy@linutronix.de \
--cc=gregkh@linuxfoundation.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=vinod.koul@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).