From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
To: linux-sh@vger.kernel.org
Subject: Re: [PATCH 01/05] dmaengine: shdma: Remove sh_dmae_slave_chan_id
Date: Fri, 19 Mar 2010 08:16:46 +0000 [thread overview]
Message-ID: <Pine.LNX.4.64.1003190913130.4490@axis700.grange> (raw)
In-Reply-To: <20100319044638.17051.97049.sendpatchset@t400s>
On Fri, 19 Mar 2010, Magnus Damm wrote:
> Hey Guennadi,
>
> On Fri, Mar 19, 2010 at 4:30 PM, Guennadi Liakhovetski
> <g.liakhovetski@gmx.de> wrote:
> > On Fri, 19 Mar 2010, Magnus Damm wrote:
> >> --- 0001/arch/sh/include/asm/dmaengine.h
> >> +++ work/arch/sh/include/asm/dmaengine.h 2010-03-18 23:30:46.000000000 +0900
> >> @@ -17,7 +17,7 @@
> >>
> >> #define SH_DMAC_MAX_CHANNELS 6
> >>
> >> -enum sh_dmae_slave_chan_id {
> >> +enum {
> >> SHDMA_SLAVE_SCIF0_TX,
> >> SHDMA_SLAVE_SCIF0_RX,
> >> SHDMA_SLAVE_SCIF1_TX,
> >> @@ -38,7 +38,7 @@ enum sh_dmae_slave_chan_id {
> >> };
> >>
> >> struct sh_dmae_slave_config {
> >> - enum sh_dmae_slave_chan_id slave_id;
> >> + unsigned int slave_id;
> >
> > I think, INT_MAX DMA slave IDs will be enough;) So, you could just use an
> > int to save typing and to reserve -1 (or -EINVAL) as an invalid DMA ID. As
> > I am currencly realising, it can be useful, e.g., if you want to enable
> > DMA only on Rx and not on Tx of some device. This, of course, throughout
> > this patch.
>
> Reserving some number sounds like a good plan, but exactly what is the
> best is a different question. If I'm allowed to nitpick then I think
> its wasteful to use one bit for the sign when only needing one value
> to mark unused. So I'd prefer to go with unsigned and 0 as unused mark
> and the rest as valid ids.
Well, personally I somewhat dislike using 0 as an invalid ID (or invalid
IRQ...). Then you have to remember to use an offset:
if ((unsigned)slave_id >= SHDMA_SLAVE_NUMBER)
gets an oddition of "|| !slave_id", and you're wasting one bit in
sh_dmae_slave_used[];) And, as I said - extra typing:)
> >> --- 0001/drivers/dma/shdma.c
> >> +++ work/drivers/dma/shdma.c 2010-03-18 23:30:46.000000000 +0900
> >> @@ -266,7 +266,7 @@ static struct sh_desc *sh_dmae_get_desc(
> >> }
> >>
> >> static struct sh_dmae_slave_config *sh_dmae_find_slave(
> >> - struct sh_dmae_chan *sh_chan, enum sh_dmae_slave_chan_id slave_id)
> >> + struct sh_dmae_chan *sh_chan, struct sh_dmae_slave *param)
> >
> > This doesn't seem to be needed, at least, not in this patch.
>
> Well, I have to change the function to something, no? =)
Yes, orry, I mean make it
struct sh_dmae_chan *sh_chan, int slave_id)
Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
next prev parent reply other threads:[~2010-03-19 8:16 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-19 4:46 [PATCH 01/05] dmaengine: shdma: Remove sh_dmae_slave_chan_id enum Magnus Damm
2010-03-19 7:30 ` [PATCH 01/05] dmaengine: shdma: Remove sh_dmae_slave_chan_id Guennadi Liakhovetski
2010-03-19 8:02 ` [PATCH 01/05] dmaengine: shdma: Remove sh_dmae_slave_chan_id enum Magnus Damm
2010-03-19 8:16 ` Guennadi Liakhovetski [this message]
2010-03-19 8:23 ` Paul Mundt
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=Pine.LNX.4.64.1003190913130.4490@axis700.grange \
--to=g.liakhovetski@gmx.de \
--cc=linux-sh@vger.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