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>