All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Williams <dan.j.williams@intel.com>
To: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: "linux-mips@linux-mips.org" <linux-mips@linux-mips.org>,
	"ralf@linux-mips.org" <ralf@linux-mips.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] DMA: TXx9 Soc DMA Controller driver (v2)
Date: Mon, 20 Apr 2009 14:59:28 -0700	[thread overview]
Message-ID: <49ECF040.2000508@intel.com> (raw)
In-Reply-To: <20090420.033446.65190767.anemo@mba.ocn.ne.jp>

Atsushi Nemoto wrote:
> On Sat, 18 Apr 2009 13:05:15 -0700, Dan Williams <dan.j.williams@intel.com> wrote:
>> Not quite "ackable" yet...
> 
> Thank you for review!
> 
>>> +#ifdef CONFIG_MACH_TX49XX
>>> +#define TXX9_DMA_MAY_HAVE_64BIT_REGS
>>> +#define TXX9_DMA_HAVE_CCR_LE
>>> +#define TXX9_DMA_HAVE_SMPCHN
>>> +#define TXX9_DMA_HAVE_IRQ_PER_CHAN
>>> +#endif
>>> +
>>> +#ifdef TXX9_DMA_HAVE_SMPCHN
>>> +#define TXX9_DMA_USE_SIMPLE_CHAIN
>>> +#endif
>>> +
>> There seems to be a lot of ifdef magic in the code based on these
>> defines.  Can we move this magic and some of the pure definitions to
>> drivers/dma/txx9dmac.h?  (See the "#ifdefs are ugly" section of
>> Documentation/SubmittingPatches)
> 
> OK, I will try to clean them up.  But since I don't want to export
> internal implementation details, some of the magics will be left in
> txx9dmac.c, perhaps.

You only need to hide txx9dmac magic if the header was in 
include/linux/, but since it will be in drivers/dma/ you can assume it 
is private.
                }
>> Is there a reason to keep f'irst' off of the tx_list?  It seems like
>> you could simplify this logic and get rid of the scary looking
>> list_splice followed by list_add in txx9dmac_desc_put.  It also seems
>> odd that the descriptors on tx_list are not reachable from the
>> dc->queue list after a submit... but maybe I am missing a subtle
>> detail?
> 
> Well, I'm not sure what do you mean...
> 
> The completion callback handler of the first descriptor should be
> called _after_ the completion of the _last_ child of the descriptor.
> Also I use desc_node for both dc->queue, dc->active_list and
> txd.tx_list.  So if I putted all children to dc->queue or
> dc->active_list, txx9dmac_descriptor_complete() (or its caller) will
> be more complex.
> 
> Or do you mean adding another list_head to maintain txd.tx_list?  Or
> something another at all?

The piece I was missing was that it would make 
txx9dmac_descriptor_complete() more complex.  So, I am fine with the 
leaving the current implementation.

Regards,
Dan

  reply	other threads:[~2009-04-20 22:00 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-06 15:54 [PATCH] DMA: TXx9 Soc DMA Controller driver (v2) Atsushi Nemoto
2009-04-17  1:23 ` Dan Williams
2009-04-17 14:32   ` Atsushi Nemoto
2009-04-18 20:05 ` Dan Williams
2009-04-19 18:34   ` Atsushi Nemoto
2009-04-20 21:59     ` Dan Williams [this message]
2009-04-21  0:34       ` Atsushi Nemoto

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=49ECF040.2000508@intel.com \
    --to=dan.j.williams@intel.com \
    --cc=anemo@mba.ocn.ne.jp \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@linux-mips.org \
    --cc=ralf@linux-mips.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 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.