I agree. Every processor(SOC) has unique of setting inbound window. What I 
noticed is Inbound regions are created big enough to map whole DDR region.  And 
uses physical address of ram as a source/destination address.  For example if a 
PCI-E SATA card wants to do DMA transfers to DDR region. It will create 
dma_alloc_noncoherent() region and uses physical address as source/destination 
address for data transfers. 

________________________________

From: linuxppc-dev-bounces+tmarri=amcc....@ozlabs.org on behalf of Benjamin 
Herrenschmidt
Sent: Wed 4/8/2009 11:21 PM
To: Kumar Gala
Cc: linux-...@vger.kernel.org; Linux Kernel Mailing List; Jesse Barnes; 
Linux/PPC Development
Subject: Re: tracking of PCI address space



On Wed, 2009-04-08 at 15:53 -0500, Kumar Gala wrote:
> I was wondering if we have anything that tracks regions associated 
> with the "inbound" side of a pci_bus.
>
> What I mean is on embedded PPC we have window/mapping registers for 
> both inbound (accessing memory on the SoC) and outbound (access PCI 
> device MMIO, IO etc).  The combination of the inbound & outbound 
> convey what exists in the PCI address space vs CPU physical address 
> space (and how to map from one to the other).  Today in the PPC land 
> we only attach outbound windows to the pci_bus.  So technically the 
> inbound side information (like what subset of physical memory is 
> visible on the PCI bus) seems to be lost.

On powerpc, we do keep track of the offset, but that's about it.

Tracking inbound ranges is very platform specific though. You can have
multiple inbound windows with different translations, in some cases some
via iommu and some not, or windows aliasing the same target memory but
with different attributes, etc...

I don't think there's that much interest in trying to create generic
code to keep track.

Ben.


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to