mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: eg.news@free.fr
To: linux-kernel@vger.kernel.org
Subject: Huge DMA feasibility with linux 2.6.17
Date: Mon, 19 Nov 2007 10:21:15 +0100	[thread overview]
Message-ID: <1195464075.4741558b0f3c6@imp.free.fr> (raw)

Before to post you this request, I have read J BOTTOMLEY documentation
(inside kernel doc and linux journal).
May be I have not understood but I currently have the following
problem.

DESCRIPTION
------------------
On a PC (x86_64 SMP using linux kernel 2.6.17) there is a device
dedicated to data acquisition linked via a PCIe bus (using 4 PCIe x4
slots), this device has 2GB of memory.

We need to perform huge DMA transfer (from the device to the PC) using
16 PCIe lanes, on the PC side the resulting buffer can be 480 MB long
(each lane transferring 30 MB).
Because of ping-pong (2 buffers available for the same acquisition)
and multi-modality (several kind of data acquired), the total aperture
accessible by DMA can reach 1.6 GB.
The datarate has to be greater than 180MB/s per lane ( 2,8 GB/s for
the whole device).

To reach that datarate we plan to make the device initiate the
transfer and use local Scatter Gather List.

QUESTIONS
---------------
At this point we have the following questions
Q1: It is possible to get the private usage of these 1.6GB of memory
for the DMA (by getting it out of the memory managed by linux)?
Q1.1 : If yes what are the ways ?
Q1.2 : Is kernel function "init_memory_mapping" a way to get that
(according to arch/x86_64/kernel/setup.c:643) ?
Q2: Otherwise do we only have to reserve pages in DMA32 zone during
the early bootup stage?
Q3 :  Other solutions?

Any help is welcome

THX
Eric Guiffard




                 reply	other threads:[~2007-11-19  9:22 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=1195464075.4741558b0f3c6@imp.free.fr \
    --to=eg.news@free.fr \
    --cc=linux-kernel@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

all inboxes | Powered by JetHome®