All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Philippe Rétornaz" <philippe.retornaz@epfl.ch>
To: linux-arm-kernel@lists.infradead.org
Cc: Sascha Hauer <s.hauer@pengutronix.de>,
	Baruch Siach <baruch@tkos.co.il>,
	Linus Walleij <linus.ml.walleij@gmail.com>,
	Dan Williams <dan.j.williams@intel.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 3/3] dmaengine: Add Freescale i.MX SDMA support
Date: Wed, 18 Aug 2010 13:17:48 +0200	[thread overview]
Message-ID: <201008181317.48948.philippe.retornaz@epfl.ch> (raw)
In-Reply-To: <20100817064734.GS27749@pengutronix.de>

Le mardi, 17 août 2010 08.47:34, Sascha Hauer a écrit :
> On Tue, Aug 17, 2010 at 07:36:12AM +0300, Baruch Siach wrote:
> > Hi Sascha,
> >
> > On Mon, Aug 16, 2010 at 04:15:40PM +0200, Sascha Hauer wrote:
> > > On Mon, Aug 16, 2010 at 02:21:06PM +0200, Linus Walleij wrote:
> > > > 2010/8/16 Sascha Hauer <s.hauer@pengutronix.de>:
> > > > > The SDMA engine is a scatter/gather DMA engine which is implemented
> > > > > as a seperate coprocessor. SDMA needs its own firmware which is
> > > > > requested using the standard request_firmware mechanism. The
> > > > > firmware has different entry points for each peripheral type, so
> > > > > drivers have to pass the peripheral type to the DMA engine which in
> > > > > turn picks the correct firmware entry point from a table contained
> > > > > in the firmware image itself.
> > > >
> > > > Quite fun, if the spec for the microcode is open this opens up
> > > > for dynamic firmware generation for specific DMA jobs does it
> > > > not?
> > >
> > > Unfortunately the specs are not open, so we are sticked to the binary
> > > microcode from Freescale. I'm pretty sure though that the SDMA engine
> > > could do at least a device_prep_dma_xor operation.
> >
> > Chapter 38 in the i.MX25 Reference Manual seems to include almost
> > everything there is to know about the SDMA. Isn't this enough for writing
> > custom SDMA microcodes?
> 
> Unfortunately not, the assembler is missing.
> 

I think the instruction list and encoding is available in the imx31 reference 
manual at section 40.19.

BTW, I tested the non-dmaengine version of your patch on imx31, works great !

Regards,

Philippe

WARNING: multiple messages have this Message-ID (diff)
From: philippe.retornaz@epfl.ch (Philippe Rétornaz)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/3] dmaengine: Add Freescale i.MX SDMA support
Date: Wed, 18 Aug 2010 13:17:48 +0200	[thread overview]
Message-ID: <201008181317.48948.philippe.retornaz@epfl.ch> (raw)
In-Reply-To: <20100817064734.GS27749@pengutronix.de>

Le mardi, 17 ao?t 2010 08.47:34, Sascha Hauer a ?crit :
> On Tue, Aug 17, 2010 at 07:36:12AM +0300, Baruch Siach wrote:
> > Hi Sascha,
> >
> > On Mon, Aug 16, 2010 at 04:15:40PM +0200, Sascha Hauer wrote:
> > > On Mon, Aug 16, 2010 at 02:21:06PM +0200, Linus Walleij wrote:
> > > > 2010/8/16 Sascha Hauer <s.hauer@pengutronix.de>:
> > > > > The SDMA engine is a scatter/gather DMA engine which is implemented
> > > > > as a seperate coprocessor. SDMA needs its own firmware which is
> > > > > requested using the standard request_firmware mechanism. The
> > > > > firmware has different entry points for each peripheral type, so
> > > > > drivers have to pass the peripheral type to the DMA engine which in
> > > > > turn picks the correct firmware entry point from a table contained
> > > > > in the firmware image itself.
> > > >
> > > > Quite fun, if the spec for the microcode is open this opens up
> > > > for dynamic firmware generation for specific DMA jobs does it
> > > > not?
> > >
> > > Unfortunately the specs are not open, so we are sticked to the binary
> > > microcode from Freescale. I'm pretty sure though that the SDMA engine
> > > could do at least a device_prep_dma_xor operation.
> >
> > Chapter 38 in the i.MX25 Reference Manual seems to include almost
> > everything there is to know about the SDMA. Isn't this enough for writing
> > custom SDMA microcodes?
> 
> Unfortunately not, the assembler is missing.
> 

I think the instruction list and encoding is available in the imx31 reference 
manual at section 40.19.

BTW, I tested the non-dmaengine version of your patch on imx31, works great !

Regards,

Philippe

  parent reply	other threads:[~2010-08-18 11:24 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-16 11:07 [RFC] dmaengine: assorted patches and Freescale SDMA support Sascha Hauer
2010-08-16 11:07 ` Sascha Hauer
2010-08-16 11:07 ` [PATCH 1/3] dmaengine: add possibility for cyclic transfers Sascha Hauer
2010-08-16 11:07   ` Sascha Hauer
2010-08-16 11:56   ` Lothar Waßmann
2010-08-16 11:56     ` Lothar Waßmann
2010-08-16 12:27     ` Linus Walleij
2010-08-16 12:27       ` Linus Walleij
2010-08-16 12:32     ` Sascha Hauer
2010-08-16 12:32       ` Sascha Hauer
2010-08-16 12:22   ` Linus Walleij
2010-08-16 12:22     ` Linus Walleij
2010-09-20 13:01   ` Sascha Hauer
2010-09-20 13:01     ` Sascha Hauer
2010-09-23 19:42     ` Dan Williams
2010-09-23 19:42       ` Dan Williams
2010-09-24  7:25       ` Sascha Hauer
2010-09-24  7:25         ` Sascha Hauer
2010-08-16 11:07 ` [PATCH 2/3] dmaengine: add wrapper functions for dmaengine Sascha Hauer
2010-08-16 11:07   ` Sascha Hauer
2010-08-23  7:17   ` Sascha Hauer
2010-08-23  7:17     ` Sascha Hauer
2010-09-20 13:02   ` Sascha Hauer
2010-09-23 19:53   ` Dan Williams
2010-09-23 19:53     ` Dan Williams
2010-09-24  7:25     ` Sascha Hauer
2010-09-24  7:25       ` Sascha Hauer
2010-09-24 15:45       ` Dan Williams
2010-09-24 15:45         ` Dan Williams
2010-08-16 11:07 ` [PATCH 3/3] dmaengine: Add Freescale i.MX SDMA support Sascha Hauer
2010-08-16 11:07   ` Sascha Hauer
2010-08-16 12:21   ` Linus Walleij
2010-08-16 12:21     ` Linus Walleij
2010-08-16 14:15     ` Sascha Hauer
2010-08-16 14:15       ` Sascha Hauer
2010-08-17  4:36       ` Baruch Siach
2010-08-17  4:36         ` Baruch Siach
2010-08-17  6:47         ` Sascha Hauer
2010-08-17  6:47           ` Sascha Hauer
2010-08-18  3:49           ` Alexei Babich
2010-08-18  4:41             ` Baruch Siach
2010-08-18 11:17           ` Philippe Rétornaz [this message]
2010-08-18 11:17             ` Philippe Rétornaz
2010-08-24  7:10     ` [PATCH 3/3 v3] " Sascha Hauer
2010-08-24  7:10       ` Sascha Hauer
2010-09-02 14:06     ` [PATCH 3/3] " Russell King - ARM Linux
2010-09-02 14:06       ` Russell King - ARM Linux
2010-08-23 12:57   ` [PATCH 3/3 v2] " Sascha Hauer
2010-08-23 12:57     ` Sascha Hauer
2010-08-23 17:30     ` Linus Walleij
2010-08-23 17:30       ` Linus Walleij
2010-08-24  6:58       ` Sascha Hauer
2010-08-24  6:58         ` Sascha Hauer
2010-08-23 17:48     ` Uwe Kleine-König
2010-08-23 17:48       ` Uwe Kleine-König
2010-08-28 15:18       ` Linus Walleij
2010-08-28 15:18         ` Linus Walleij
2010-08-28 15:27         ` Marek Vasut
2010-08-28 15:27           ` Marek Vasut
2010-08-28 16:18           ` Sascha Hauer
2010-08-28 16:18             ` Sascha Hauer
2010-08-28 16:30             ` Marek Vasut
2010-08-28 16:30               ` Marek Vasut
2010-08-28 17:20               ` Sascha Hauer
2010-08-28 17:20                 ` Sascha Hauer
2010-09-02 11:20               ` Russell King - ARM Linux
2010-09-02 11:20                 ` Russell King - ARM Linux
2010-08-29 12:35             ` Linus Walleij
2010-08-29 12:35               ` Linus Walleij
2010-08-30 12:55               ` Sascha Hauer
2010-08-30 12:55                 ` Sascha Hauer
2010-08-24  7:58     ` Lothar Waßmann
2010-08-24  7:58       ` Lothar Waßmann
2010-08-24 15:01       ` Linus Walleij
2010-08-24 15:01         ` Linus Walleij
2010-08-27 12:22   ` [PATCH 3/3 v3] " Sascha Hauer
2010-08-27 12:22     ` Sascha Hauer
2010-08-29 21:46     ` Marc Reilly

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=201008181317.48948.philippe.retornaz@epfl.ch \
    --to=philippe.retornaz@epfl.ch \
    --cc=baruch@tkos.co.il \
    --cc=dan.j.williams@intel.com \
    --cc=linus.ml.walleij@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=s.hauer@pengutronix.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.