From: Jesse Barnes <jbarnes@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces.
Date: Fri, 16 May 2003 00:37:56 +0000 [thread overview]
Message-ID: <marc-linux-ia64-105590723705876@msgid-missing> (raw)
In-Reply-To: <marc-linux-ia64-105590723705823@msgid-missing>
On Thu, May 15, 2003 at 07:31:20PM -0500, James Bottomley wrote:
> > A cost sensitive PCI-X device may wish to use 32-bit addressing in
> > it's descriptors in order to keep pin counts down etc.
>
> This is certainly a property of the aic79xx driver (only using 32 bit
> descriptor tables). It has this nice code in the driver for doing it:
>
> aic79xx.c:
>
> /*
> * Although we can dma data above 4GB, our
> * "consistent" memory is below 4GB for
> * space efficiency reasons (only need a 4byte
> * address). For this reason, we have to reset
> * our dma mask when doing allocations.
> */
> if (ahd->dev_softc != NULL)
> ahd_pci_set_dma_mask(ahd->dev_softc, 0xFFFFFFFF);
> *vaddr = pci_alloc_consistent(ahd->dev_softc,
> dmat->maxsize, &map->bus_addr);
> if (ahd->dev_softc != NULL)
> ahd_pci_set_dma_mask(ahd->dev_softc,
> ahd->platform_data->hw_dma_mask);
>
> And it comes in PCI-X flavours.
Ah, ok (set_dma_mask vs. alloc_consistent bugs aside). I think there
was some confusion about the fact that the PCI-X spec. says that cards
must support DAC vs. them actually supporting 64 bit DMA addresses.
They all have to do the former, but not the latter. Also, using an
IOMMU is different than using direct mapping. Our hw can do both for
PCI cards that only handle 32 bit DMA addresses. IOMMU mapping allows
you to map pages anywhere in memory, while direct mapping gives you a
static 2GB window into system memory.
Hope this clears things up a little.
Thanks,
Jesse
next prev parent reply other threads:[~2003-05-16 0:37 UTC|newest]
Thread overview: 83+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-05-15 14:44 [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Colin Ngam
2003-05-15 14:44 ` James Bottomley
2003-05-15 15:05 ` Colin Ngam
2003-05-15 15:06 ` David Mosberger
2003-05-15 15:12 ` James Bottomley
2003-05-15 15:47 ` David Mosberger
2003-05-15 15:48 ` David Mosberger
2003-05-15 15:48 ` Colin Ngam
2003-05-15 15:50 ` Colin Ngam
2003-05-15 19:06 ` Grant Grundler
2003-05-15 19:14 ` David Mosberger
2003-05-15 19:16 ` Grant Grundler
2003-05-15 19:29 ` Grant Grundler
2003-05-15 20:07 ` David S. Miller
2003-05-15 20:15 ` David S. Miller
2003-05-15 20:19 ` David S. Miller
2003-05-15 20:24 ` Jesse Barnes
2003-05-15 21:17 ` Grant Grundler
2003-05-15 21:29 ` Matthew Wilcox
2003-05-15 22:14 ` Colin Ngam
2003-05-15 22:44 ` Colin Ngam
2003-05-15 22:47 ` James Bottomley
2003-05-15 23:24 ` James Bottomley
2003-05-15 23:25 ` Colin Ngam
2003-05-15 23:27 ` David S. Miller
2003-05-15 23:32 ` Colin Ngam
2003-05-15 23:39 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent David S. Miller
2003-05-15 23:40 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Colin Ngam
2003-05-15 23:40 ` David S. Miller
2003-05-15 23:41 ` David S. Miller
2003-05-15 23:42 ` David S. Miller
2003-05-15 23:45 ` Colin Ngam
2003-05-15 23:46 ` David S. Miller
2003-05-15 23:51 ` Colin Ngam
2003-05-15 23:53 ` David S. Miller
2003-05-15 23:57 ` Colin Ngam
2003-05-16 0:03 ` David S. Miller
2003-05-16 0:06 ` David S. Miller
2003-05-16 0:11 ` David S. Miller
2003-05-16 0:17 ` David S. Miller
2003-05-16 0:29 ` Jesse Barnes
2003-05-16 0:31 ` James Bottomley
2003-05-16 0:31 ` David S. Miller
2003-05-16 0:32 ` Colin Ngam
2003-05-16 0:32 ` David S. Miller
2003-05-16 0:36 ` Colin Ngam
2003-05-16 0:37 ` Jesse Barnes [this message]
2003-05-16 0:48 ` Colin Ngam
2003-05-16 0:59 ` David S. Miller
2003-05-16 1:20 ` Grant Grundler
2003-05-16 1:23 ` David S. Miller
2003-05-16 1:51 ` Grant Grundler
2003-05-16 1:59 ` Colin Ngam
2003-05-16 2:05 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent James Bottomley
2003-05-16 2:08 ` David S. Miller
2003-05-16 2:26 ` James Bottomley
2003-05-16 2:32 ` David S. Miller
2003-05-16 6:47 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Jeremy Higdon
2003-05-16 6:55 ` David S. Miller
2003-05-16 7:15 ` Jeremy Higdon
2003-05-16 7:35 ` Jeremy Higdon
2003-05-16 7:48 ` Jeremy Higdon
2003-05-16 7:53 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent David S. Miller
2003-05-16 8:00 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Jeremy Higdon
2003-05-16 17:36 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent James Bottomley
2003-05-16 17:59 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Grant Grundler
2003-05-16 18:13 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent James Bottomley
2003-05-16 18:18 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Russell King
2003-05-16 18:23 ` Grant Grundler
2003-05-16 18:29 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent James Bottomley
2003-05-16 21:02 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Jes Sorensen
2003-05-16 21:06 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent David S. Miller
2003-05-16 22:39 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Jeremy Higdon
2003-05-16 23:40 ` Jeremy Higdon
2003-05-16 23:53 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent David S. Miller
2003-05-17 4:26 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Grant Grundler
2003-05-17 4:34 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent David S. Miller
2003-05-17 16:44 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Jes Sorensen
2003-05-17 17:06 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Colin Ngam
2003-05-17 18:36 ` James Bottomley
2003-05-17 21:09 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces Russell King
2003-05-17 22:17 ` [Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent David S. Miller
2003-05-18 15:53 ` James Bottomley
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=marc-linux-ia64-105590723705876@msgid-missing \
--to=jbarnes@sgi.com \
--cc=linux-ia64@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