[openib-general] Re: mstflint failing on sparc64

Michael S. Tsirkin mst at mellanox.co.il
Fri Jan 7 03:39:04 PST 2005


Hello!
Quoting r. Grant Grundler (iod00d at hp.com) "Re: [openib-general] Re: mstflint failing on sparc64":
> On Thu, Jan 06, 2005 at 03:26:13PM -0800, Roland Dreier wrote:
> > > > Generally, do yo happend to know if mmapping /dev/mem
> > > > to userspace works on this architecture?
> > 
> > > I can't imagine that it would not.  I will see if I can dig info up.
> > > The one thing that is weird on sparc64 is that the pci bus is virtually
> > > (not physically) addressed.  I don't know if you take that into account.
> > 
> > Actually I would suspect that it doesn't.  If you look at drivers/char/mem.c,
> > you can see that there's nothing there to set up the IOMMU, so I don't
> > think access to PCI space will work -- a simple remap_pfn_range won't work
> > (sparc64 doesn't even define pgprot_noncached).
> 
> IOMMU is only relevant for DMA.  I read Tom's reply to mean the host
> access PCI bus involves a tranlation as well. e.g a 32-bit bus address
> is mapped above 4GB in the host physical address space.
> ergo reading the BAR values won't give one the physical address one
> needs to access and program device registers.
> 
> grant

So PCI addresses are different from physical addresses, and
/dev/mem deals with physical addresses, right?
If that's the case, changing mmapped access to pread/pwrite
wont help either?
So is there a way to get at the pci bus from userspace
on that platform?
mst



More information about the general mailing list