[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20090326.231243.112855442.anemo@mba.ocn.ne.jp>
Date: Thu, 26 Mar 2009 23:12:43 +0900 (JST)
From: Atsushi Nemoto <anemo@....ocn.ne.jp>
To: dan.j.williams@...el.com
Cc: linux-mips@...ux-mips.org, ralf@...ux-mips.org,
linux-kernel@...r.kernel.org, haavard.skinnemoen@...el.com
Subject: Re: [PATCH 1/2] dmaengine: TXx9 Soc DMA Controller driver
On Sat, 21 Mar 2009 21:29:20 +0900 (JST), Atsushi Nemoto <anemo@....ocn.ne.jp> wrote:
> > I think creating a dma_device instance per channel and specifying that
> > device like atmel-mci is the more future-proof way to go.
>
> Well, I have considered it but it looks overkill for me at that time.
> Maybe time to think again...
>
> > > And I want to call Channel-3 of DMAC-0 "dma0chan3" even if Channel-2
> > > was assigned to for public memcpy channel.
> >
> > The problem is you could pass in the chan_id to guarantee 'chan3', but
> > there is no guarantee that you will get 'dma0', as the driver has no
> > knowledge of what other dma devices may be in the system.
>
> Yes, I do not expect 'dma0'. My filter function uses
> dev_name(chan->device->dev), which is "txx9dmac.0" in this case.
>
> Anyway, "one dma-device per channel" manner will make things much simpler.
Unfortunately, not so simple. If I created a dma_device for each
channel, all chan->chan_id will be 0 and all chan->device->dev points
same platform device. This makes client driver hard to select the
particular channel. Making a platform device for each channel will
solve this, but it looks wrong way to go for me.
So I will go back to multiple channels per device style, and try to
simplify "reservation". While all client should know correct channel
number, the reservation is just for detecting bad configuration.
---
Atsushi Nemoto
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists