All of lore.kernel.org
 help / color / mirror / Atom feed
From: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
To: shawn.guo@linaro.org
Cc: linux-kernel@vger.kernel.org, vinod.koul@intel.com,
	dan.j.williams@intel.com, cjb@laptop.org,
	linux-mmc@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	patches@linaro.org, gregkh@suse.de
Subject: Re: [PATCH v2 1/3] dmaengine: add new dma API for max_segment_number
Date: Mon, 6 Jun 2011 17:06:03 +0900	[thread overview]
Message-ID: <20110606170420I.fujita.tomonori@lab.ntt.co.jp> (raw)
In-Reply-To: <1307345414-26872-1-git-send-email-shawn.guo@linaro.org>

On Mon,  6 Jun 2011 15:30:12 +0800
Shawn Guo <shawn.guo@linaro.org> wrote:

> Like dma_set(get)_max_seg_size for max_segment_size, the patch adds
> max_segment_number into device_dma_parameters and creates the
> corresponding dmaengine API dma_set(get)_max_seg_number for it.

As I wrote in another mail, dma_get|set_max_seg_size and
dma_get|set_seg_boundary are added to the dma mapping API. That is,
they enable the drivers (or subsystems) to tell IOMMUs about the
device dma limitations. When IOMMUs merge scatter list entries, they
look at the limitations.


> Here is the user story that tells the need of the new api.  The
> mxs-mmc is the mmc host controller for Freescale MXS architecture.
> There are a pair of  mmc host specific parameters max_seg_size and
> max_segs that mxs-mmc host driver needs to tell mmc core, so that
> mmc core can know how big each data segment could be and how many
> segments could be handled one time in a scatter list by host driver.
> 
> The mxs-mmc driver is one user of dmaengine mxs-dma, and it will call
> mxs-dma to transfer data in scatter list.  That is to say mxs-mmc has
> no idea of what max_seg_size and max_segs should be, because they are
> all mxs-dma capability parameters, and mxs-mmc needs to query them
> from mxs-dma.

max_segs isn't unrelated with the dma mapping API. I explained above,
IOMMUs doesn't increase the number of segments (could decrease the
number of segments by merging).

The limitation about the number of segment already lives elsewhere
(e.g. queue's limits.max_segments).

WARNING: multiple messages have this Message-ID (diff)
From: fujita.tomonori@lab.ntt.co.jp (FUJITA Tomonori)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/3] dmaengine: add new dma API for max_segment_number
Date: Mon, 6 Jun 2011 17:06:03 +0900	[thread overview]
Message-ID: <20110606170420I.fujita.tomonori@lab.ntt.co.jp> (raw)
In-Reply-To: <1307345414-26872-1-git-send-email-shawn.guo@linaro.org>

On Mon,  6 Jun 2011 15:30:12 +0800
Shawn Guo <shawn.guo@linaro.org> wrote:

> Like dma_set(get)_max_seg_size for max_segment_size, the patch adds
> max_segment_number into device_dma_parameters and creates the
> corresponding dmaengine API dma_set(get)_max_seg_number for it.

As I wrote in another mail, dma_get|set_max_seg_size and
dma_get|set_seg_boundary are added to the dma mapping API. That is,
they enable the drivers (or subsystems) to tell IOMMUs about the
device dma limitations. When IOMMUs merge scatter list entries, they
look at the limitations.


> Here is the user story that tells the need of the new api.  The
> mxs-mmc is the mmc host controller for Freescale MXS architecture.
> There are a pair of  mmc host specific parameters max_seg_size and
> max_segs that mxs-mmc host driver needs to tell mmc core, so that
> mmc core can know how big each data segment could be and how many
> segments could be handled one time in a scatter list by host driver.
> 
> The mxs-mmc driver is one user of dmaengine mxs-dma, and it will call
> mxs-dma to transfer data in scatter list.  That is to say mxs-mmc has
> no idea of what max_seg_size and max_segs should be, because they are
> all mxs-dma capability parameters, and mxs-mmc needs to query them
> from mxs-dma.

max_segs isn't unrelated with the dma mapping API. I explained above,
IOMMUs doesn't increase the number of segments (could decrease the
number of segments by merging).

The limitation about the number of segment already lives elsewhere
(e.g. queue's limits.max_segments).

  parent reply	other threads:[~2011-06-06  8:06 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-06  7:30 [PATCH v2 1/3] dmaengine: add new dma API for max_segment_number Shawn Guo
2011-06-06  7:30 ` Shawn Guo
2011-06-06  7:30 ` [PATCH v2 2/3] dmaengine: mxs-dma: set up max_segment_number Shawn Guo
2011-06-06  7:30   ` Shawn Guo
2011-06-06  7:30 ` [PATCH v2 3/3] mmc: mxs-mmc: call dmaengine API to set mmc->max_segs Shawn Guo
2011-06-06  7:30   ` Shawn Guo
2011-06-06  8:06 ` FUJITA Tomonori [this message]
2011-06-06  8:06   ` [PATCH v2 1/3] dmaengine: add new dma API for max_segment_number FUJITA Tomonori
2011-06-06  9:14   ` Russell King - ARM Linux
2011-06-06  9:14     ` Russell King - ARM Linux
2011-06-06  9:41     ` FUJITA Tomonori
2011-06-06  9:41       ` FUJITA Tomonori
2011-06-06  9:47       ` Russell King - ARM Linux
2011-06-06  9:47         ` Russell King - ARM Linux
2011-06-06 10:12         ` FUJITA Tomonori
2011-06-06 10:12           ` FUJITA Tomonori
2011-06-06 10:15           ` Russell King - ARM Linux
2011-06-06 10:15             ` Russell King - ARM Linux
2011-06-06 18:48           ` Dan Williams
2011-06-06 18:48             ` Dan Williams
2011-06-08  5:23             ` FUJITA Tomonori
2011-06-08  5:23               ` FUJITA Tomonori
2011-06-08  6:56               ` Dan Williams
2011-06-08  6:56                 ` Dan Williams
2011-06-08  7:10                 ` FUJITA Tomonori
2011-06-08  7:10                   ` FUJITA Tomonori
2011-06-08 20:05                   ` Dan Williams
2011-06-08 20:05                     ` Dan Williams
2011-06-08 20:05                     ` Dan Williams
2011-06-08 20:41                     ` Russell King - ARM Linux
2011-06-08 20:41                       ` Russell King - ARM Linux
2011-06-08 21:52                       ` Dan Williams
2011-06-08 21:52                         ` Dan Williams
2011-06-09  0:07                     ` FUJITA Tomonori
2011-06-09  0:07                       ` FUJITA Tomonori
2011-06-07 22:35 ` Dan Williams
2011-06-07 22:35   ` Dan Williams
2011-06-12 15:28   ` Shawn Guo
2011-06-12 15:28     ` Shawn Guo
2011-06-12 15:28     ` Shawn Guo
2011-06-15 12:08   ` [PATCH v3] " Shawn Guo
2011-06-15 12:08     ` Shawn Guo
2011-06-15 12:08     ` Shawn Guo
2011-06-15 16:25     ` FUJITA Tomonori
2011-06-15 16:25       ` FUJITA Tomonori
2011-06-16  9:54     ` Per Forlin
2011-06-16  9:54       ` Per Forlin
2011-06-16  9:54       ` Per Forlin
2011-06-16 12:30   ` [PATCH v3 RESEND] dma-mapping: add new " Shawn Guo
2011-06-16 12:30     ` Shawn Guo
2011-06-17 12:40     ` Matthew Wilcox
2011-06-17 12:40       ` Matthew Wilcox
2011-06-17 18:09       ` Per Forlin
2011-06-17 18:09         ` Per Forlin
2011-06-21 17:44       ` FUJITA Tomonori
2011-06-21 17:44         ` FUJITA Tomonori

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=20110606170420I.fujita.tomonori@lab.ntt.co.jp \
    --to=fujita.tomonori@lab.ntt.co.jp \
    --cc=cjb@laptop.org \
    --cc=dan.j.williams@intel.com \
    --cc=gregkh@suse.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=patches@linaro.org \
    --cc=shawn.guo@linaro.org \
    --cc=vinod.koul@intel.com \
    /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.