From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: "Måns Rullgård" <mans@mansr.com>, "Julian Margetson" <runaway@candw.ms>
Cc: Tejun Heo <tj@kernel.org>,
linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/3] ata: sata_dwc_460ex: use "dmas" DT property to find dma channel
Date: Thu, 17 Dec 2015 18:53:04 +0200 [thread overview]
Message-ID: <1450371184.30729.175.camel@linux.intel.com> (raw)
In-Reply-To: <yw1xk2odcb87.fsf@unicorn.mansr.com>
On Thu, 2015-12-17 at 16:04 +0000, Måns Rullgård wrote:
> Andy Shevchenko <andriy.shevchenko@linux.intel.com> writes:
>
> > On Thu, 2015-12-17 at 15:13 +0000, Måns Rullgård wrote:
> > > Andy Shevchenko <andriy.shevchenko@linux.intel.com> writes:
> > >
> > > > On Tue, 2015-12-15 at 23:34 +0000, Måns Rullgård wrote:
> > > > > Mans Rullgard <mans@mansr.com> writes:
> > > > >
> > > > > > Currently this driver only works with a DesignWare DMA
> > > > > > engine
> > > > > > which it registers manually using the second "reg" address
> > > > > > range and interrupt number from the DT node.
> > > > > >
> > > > > > This patch makes the driver instead use the "dmas" property
> > > > > > if
> > > > > > present, otherwise optionally falling back on the old way
> > > > > > so
> > > > > > existing device trees can continue to work.
> > > > > >
> > > > > > With this change, there is no longer any reason to depend
> > > > > > on
> > > > > > the 460EX machine type so drop that from Kconfig.
> > > > > >
> > > > > > Signed-off-by: Mans Rullgard <mans@mansr.com>
> > > > > > ---
> > > > > > drivers/ata/Kconfig | 10 ++-
> > > > > > drivers/ata/sata_dwc_460ex.c | 192
> > > > > > +++++++++++++++++++++++++++--
> > > > > > --------------
> > > > > > 2 files changed, 131 insertions(+), 71 deletions(-)
> > > > >
> > > > > The corresponding patch for the canyonlands devicetree looks
> > > > > something
> > > > > like this. I don't have any such hardware or even a manual,
> > > > > so I
> > > > > don't
> > > > > know what values to use for the various required DT
> > > > > properties of
> > > > > the
> > > > > DMA controller node, nor can I test it. The SATA driver
> > > > > works
> > > > > with a
> > > > > different DMA controller on a Sigma Designs chip.
> > > > >
> > > > > diff --git a/arch/powerpc/boot/dts/canyonlands.dts
> > > > > b/arch/powerpc/boot/dts/canyonlands.dts
> > > > > index 3dc75de..959f36e 100644
> > > > > --- a/arch/powerpc/boot/dts/canyonlands.dts
> > > > > +++ b/arch/powerpc/boot/dts/canyonlands.dts
> > > > > @@ -190,12 +190,22 @@
> > > > > /* DMA */ 0x2 &UIC0
> > > > > 0xc
> > > > > 0x4>;
> > > > > };
> > > > >
> > > > > + DMA0: dma@bffd0800 {
> > > > > + compatible = "snps,dma-spear1340";
> > > > > + reg = <4 0xbffd0800 0x400>;
> > > > > + interrupt-parent = <&UIC3>;
> > > > > + interrupts = <0x5 0x4>;
> > > > > + #dma-cells = <3>;
> > > > > + /* required properties here */
> > > >
> > > > You have to move the master assignments and other custom
> > > > dw_dmac
> > > > properties. Maybe at some point I will fix that in
> > > > dw/platform.c.
> > > >
> > > > > + };
> > >
> > > The current sata_dwc driver calls dw_dma_probe() with null pdata
> > > which causes the dw_dma driver to auto-detect most
> > > parameters. It
> > > looks like simply omitting those properties here results in the
> > > same
> > > thing, although in this case dw_dma_parse_dt() leaves a
> > > devm-allocated pdata struct adrift. Deferring the allocation of
> > > that
> > > and changing the DT binding doc to make these properties optional
> > > for
> > > auto-detect-capable hardware should just work.
> >
> > Yeah, I would like to allow autoconfiguration in case of DT as well
> > and
> > translate it to use unified device property API.
> >
> > > Something like this:
> >
> > If it works for you, please, submit as a patch. Thanks.
>
> I can't test it since I have no such hardware.
It's currently broken, last person who seems to have it is
(was?) Julian Margetson [1]
[1] https://patchwork.ozlabs.org/patch/439850/
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
next prev parent reply other threads:[~2015-12-17 16:55 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-15 23:25 [PATCH 1/3] ata: sata_dwc_460ex: use "dmas" DT property to find dma channel Mans Rullgard
2015-12-15 23:25 ` [PATCH 2/3] ata: sata_dwc_460ex: add phy support Mans Rullgard
2015-12-16 11:14 ` Sergei Shtylyov
2015-12-16 11:24 ` Måns Rullgård
2015-12-15 23:25 ` [PATCH 3/3] ata: sata_dwc_460ex: get rid of global data Mans Rullgard
2015-12-17 15:06 ` Andy Shevchenko
2015-12-17 15:19 ` Måns Rullgård
2015-12-17 15:37 ` Andy Shevchenko
2015-12-17 15:57 ` Måns Rullgård
2015-12-15 23:34 ` [PATCH 1/3] ata: sata_dwc_460ex: use "dmas" DT property to find dma channel Måns Rullgård
2015-12-17 14:59 ` Andy Shevchenko
2015-12-17 15:13 ` Måns Rullgård
2015-12-17 15:55 ` Andy Shevchenko
2015-12-17 16:04 ` Måns Rullgård
2015-12-17 16:53 ` Andy Shevchenko [this message]
2015-12-17 17:57 ` Julian Margetson
2015-12-17 17:59 ` Måns Rullgård
[not found] ` <567302E8.5050303@candw.ms>
2015-12-17 18:51 ` Måns Rullgård
[not found] ` <5673061A.4070700@candw.ms>
2015-12-17 19:53 ` Måns Rullgård
[not found] ` <56732C04.9040100@candw.ms>
2015-12-18 0:06 ` Måns Rullgård
2015-12-18 0:59 ` Julian Margetson
2015-12-18 1:38 ` Måns Rullgård
2015-12-18 11:48 ` Julian Margetson
2015-12-18 12:04 ` Måns Rullgård
2015-12-18 12:23 ` Andy Shevchenko
2015-12-18 12:49 ` Måns Rullgård
[not found] ` <5674271B.9090308@candw.ms>
2015-12-18 17:18 ` Måns Rullgård
2015-12-18 18:48 ` Andy Shevchenko
[not found] ` <56745BA4.1090607@candw.ms>
2015-12-18 22:33 ` Måns Rullgård
2015-12-18 22:49 ` Julian Margetson
2015-12-18 23:16 ` Måns Rullgård
2015-12-19 2:34 ` Andy Shevchenko
2015-12-19 11:39 ` Julian Margetson
2015-12-19 15:40 ` Måns Rullgård
[not found] ` <567585CD.9080105@candw.ms>
2015-12-19 16:39 ` Måns Rullgård
2015-12-19 16:56 ` Andy Shevchenko
2015-12-19 17:05 ` Måns Rullgård
2015-12-19 17:09 ` Julian Margetson
2015-12-19 17:11 ` Andy Shevchenko
2015-12-19 17:19 ` Måns Rullgård
2015-12-19 18:56 ` Julian Margetson
2015-12-19 19:07 ` Måns Rullgård
2015-12-19 20:16 ` Julian Margetson
2015-12-19 20:39 ` Andy Shevchenko
2015-12-19 20:41 ` Måns Rullgård
2015-12-19 20:48 ` Julian Margetson
2015-12-19 20:55 ` Julian Margetson
2015-12-20 17:11 ` Måns Rullgård
2015-12-20 17:41 ` Andy Shevchenko
2015-12-20 17:54 ` Måns Rullgård
2015-12-20 17:44 ` Julian Margetson
2015-12-20 18:49 ` Måns Rullgård
2015-12-20 20:17 ` Andy Shevchenko
2015-12-20 20:55 ` Andy Shevchenko
2015-12-21 1:19 ` Måns Rullgård
2015-12-21 19:08 ` Andy Shevchenko
2015-12-21 19:27 ` Måns Rullgård
2015-12-21 20:54 ` Andy Shevchenko
2015-12-21 21:06 ` Måns Rullgård
2015-12-22 0:08 ` Måns Rullgård
2015-12-22 10:58 ` Andy Shevchenko
2016-01-06 16:26 ` Måns Rullgård
2016-01-06 17:36 ` Andy Shevchenko
2016-01-07 9:34 ` Andy Shevchenko
2016-01-07 18:32 ` Måns Rullgård
2016-01-08 8:57 ` Andy Shevchenko
2016-01-08 10:57 ` Måns Rullgård
2016-01-20 18:50 ` Måns Rullgård
2016-01-20 19:23 ` Andy Shevchenko
2016-01-20 19:24 ` Måns Rullgård
2016-01-20 19:38 ` Andy Shevchenko
2016-01-20 19:46 ` Måns Rullgård
2016-01-20 19:51 ` Andy Shevchenko
2016-01-20 20:07 ` Måns Rullgård
2016-01-22 10:04 ` Andy Shevchenko
2016-01-22 11:13 ` Måns Rullgård
2016-01-22 11:56 ` Andy Shevchenko
2016-01-22 12:05 ` Måns Rullgård
2016-01-22 12:15 ` Andy Shevchenko
2015-12-21 16:48 ` Andy Shevchenko
2015-12-21 17:20 ` Julian Margetson
2015-12-21 17:26 ` Julian Margetson
2015-12-21 17:55 ` Andy Shevchenko
2015-12-21 18:23 ` Julian Margetson
2015-12-21 18:27 ` Måns Rullgård
2015-12-21 19:08 ` Julian Margetson
2015-12-21 19:19 ` Julian Margetson
2015-12-21 19:27 ` Måns Rullgård
2015-12-21 19:47 ` Julian Margetson
2015-12-21 20:25 ` Andy Shevchenko
2015-12-21 20:29 ` Julian Margetson
2016-01-22 10:07 ` Andy Shevchenko
2015-12-21 20:33 ` Måns Rullgård
2015-12-21 18:25 ` Måns Rullgård
2015-12-21 0:47 ` Måns Rullgård
2015-12-21 0:53 ` Måns Rullgård
2015-12-21 0:58 ` Måns Rullgård
2015-12-21 8:40 ` Andy Shevchenko
2015-12-21 12:15 ` Måns Rullgård
2015-12-21 17:24 ` Andy Shevchenko
2015-12-21 18:16 ` Måns Rullgård
2015-12-21 19:23 ` Andy Shevchenko
2015-12-21 19:50 ` Måns Rullgård
[not found] ` <5677D447.40906@candw.ms>
2015-12-21 12:16 ` Måns Rullgård
2015-12-21 13:18 ` Julian Margetson
2015-12-21 13:24 ` Måns Rullgård
2015-12-21 14:40 ` Julian Margetson
2015-12-21 15:24 ` Måns Rullgård
2015-12-21 16:44 ` Andy Shevchenko
2015-12-21 18:19 ` Måns Rullgård
2015-12-18 12:33 ` Julian Margetson
2015-12-18 12:38 ` Andy Shevchenko
2015-12-18 12:45 ` Måns Rullgård
[not found] ` <56740F9F.5020500@candw.ms>
2015-12-18 14:24 ` Andy Shevchenko
2015-12-18 14:27 ` Måns Rullgård
2015-12-18 10:08 ` Andy Shevchenko
2015-12-18 11:24 ` Måns Rullgård
2015-12-17 14:58 ` Andy Shevchenko
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=1450371184.30729.175.camel@linux.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mans@mansr.com \
--cc=runaway@candw.ms \
--cc=tj@kernel.org \
/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).