From: benh@kernel.crashing.org (Benjamin Herrenschmidt)
To: linux-arm-kernel@lists.infradead.org
Subject: ARM: 2.6.3[45] PCI regression (IXP4xx and PXA?)
Date: Fri, 20 Aug 2010 07:54:28 +1000 [thread overview]
Message-ID: <1282254868.22370.370.camel@pasglop> (raw)
In-Reply-To: <20100820021915C.fujita.tomonori@lab.ntt.co.jp>
> linux/device.h defines that it's the device dma mask.
>
> Except for ARM, coherent_dma_mask represents the device dma mask.
That's just verbiage in a header file. Nobody cares. The point is, the
device DMA mask per-se is a completely useless piece of information, and
thus there is absolutely no point keeping it around there.
The only thing that matters is the intersection of all the masks on the
way to memory, which defines where memory can be allocated.
Now the mask thing itself might end up not being enough for ARM in the
long run, I wouldn't be surprised if we end up with busses that can DMA
to areas of memory that are not 0 based, but that's a discussion for
another day.
> We sometimes want to know the device dma mask. Moving to your
> definition means that we lose that information.
When ?
Cheers,
Ben.
> > This usually equals device's address space - only because CPU and
> > bridges next to it have wide (logical) address busses. It's not always
> > the case, though, and may be not the case on any arch.
> >
> > We should make sure we got it right (including drivers), since any
> > reduction of the dma*mask would be irreversible (new masks would be
> > ANDed with the existing masks).
> >
> > > I think that having the generic place for bus'
> > > dma mask would be better rather than architecture specific
> > > places.
> >
> > Definitely, if possible. BTW the dmabounce (and equivalent code on other
> > archs, including probably swiotlb on x86-64) could probably be merged as
> > well. I don't know the internals very well, though. At least it may be
> > worth it looking at them.
>
> btw, swiotlb is used by x86_64, ia64, and powerpc.
>
> I'm sure that I can convert ARM to use it instead of dmabounce. But
> well, even a bug fix patch for dmabounce haven't been merged so I'm
> not sure that ARM people would accept such change.
>
> http://marc.info/?l=linux-arm-kernel&m=128047064008554&w=2
>
>
> > > Adding a new API to set bus' dma mask would make sense too.
> >
> > Not sure. Which bus? There could be many :-)
> > In practice - 64-bit PCIe -> 32-bit PCI -> 24-bit ISA - etc.
> > Or, like with IXP/PXA - 26-bit PCI -> 32-bit device.
>
> Seems that we are not on the same page. As I said before, have you
> seen how POWERPC uses max_direct_dma_addr in dev_archdata struct? I
> was talking about moving it to the generic place and the API to set
> it.
next prev parent reply other threads:[~2010-08-19 21:54 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-10 20:36 ARM: 2.6.3[45] PCI regression (IXP4xx and PXA?) Krzysztof Halasa
2010-08-11 2:06 ` FUJITA Tomonori
2010-08-11 7:25 ` Russell King - ARM Linux
2010-08-13 6:23 ` FUJITA Tomonori
2010-08-13 21:54 ` Russell King - ARM Linux
2010-08-14 9:30 ` FUJITA Tomonori
2010-08-14 18:46 ` Russell King - ARM Linux
2010-08-15 5:42 ` FUJITA Tomonori
2010-08-15 8:23 ` Russell King - ARM Linux
2010-08-15 15:55 ` FUJITA Tomonori
2010-08-16 23:29 ` Krzysztof Halasa
2010-08-19 8:51 ` FUJITA Tomonori
2010-08-19 16:56 ` Krzysztof Halasa
2010-08-19 10:31 ` Benjamin Herrenschmidt
2010-08-19 14:50 ` FUJITA Tomonori
2010-08-19 16:53 ` Krzysztof Halasa
2010-08-19 17:20 ` FUJITA Tomonori
2010-08-19 21:54 ` Benjamin Herrenschmidt [this message]
2010-08-19 21:51 ` Benjamin Herrenschmidt
2010-08-26 11:55 ` FUJITA Tomonori
2010-08-26 13:54 ` FUJITA Tomonori
2010-08-26 17:57 ` Russell King - ARM Linux
2010-08-27 6:54 ` FUJITA Tomonori
2010-08-26 16:02 ` Krzysztof Halasa
2010-08-27 0:26 ` 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=1282254868.22370.370.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).