Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Aug 2001 14:23:36 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Ronald G Minnich <rminnich@lanl.gov>
Cc:        Mike Smith <msmith@FreeBSD.ORG>, djohnson <johnson@faradayco.com>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: PCI Enumeration
Message-ID:  <3B8968D8.51AD0871@mindspring.com>
References:  <Pine.LNX.4.33.0108261055240.10092-100000@snaresland.acl.lanl.gov>

next in thread | previous in thread | raw e-mail | index | archive | help
Ronald G Minnich wrote:
> On Sat, 25 Aug 2001, Mike Smith wrote:
> 
> > I/O space is easy, but memory space is hard.  Userspace access to
> > physical memory is a big no-no in the *nix world.
> 
> I want to disagree just a bit. If you look at myrinet, or the many fpga
> cards, it's the standard modus operandi. You have to do it that way.

I think that Mike's point is that even when you access
physical memory from user space, you are accessing it as
virtual memory.

Normally, the device RAM window is mapped into the KVA,
and such access is done via /dev/kmem, which is translated
through the KVA virtual mapping.  Even if you mmap such a
region into a user space processes address space, you end
up translating through the UVA of the process to get at the
RAM (X does this for linear frame buffers, etc.).

If you are trying to do this windowed, or through another
mapping (e.g., for a frame buffer card with 16M of RAM
plugged into a 4G system, with no way to map the full 16M
into the KVA, no matter how you slice it), it's not just
"hard", it's "nearly impossible to do correctly".

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B8968D8.51AD0871>