Re: FreeBSD-amd64 driver ?
There's two more points I'd like to clarify.
I've seen claims that given the relatively small user base, NVIDIA is interested in supporting FreeBSD amd64 only if the platform provides the means to run pre-existing Linux/Solaris graphics drivers with minimal changes, and is therefore demanding features in and fundamental changes to the FreeBSD kernel that make the operating system more like already supported platforms (to minimize the porting effort).
This is not the case.
Although the core functionality is shared between platforms, the FreeBSD i386 graphics driver is still a native FreeBSD driver, as would be a FreeBSD amd64 graphics driver. Arguably, there is one exception: there's a requirement that the Linux OpenGL libraries be able to work in the Linux ABI compatibility enviroment without fundamental changes or, more specifically, without custom ioctl() memory mapping interfaces in place of mmap(). Please note that the Linux/x86 OpenGL libraries are used as-is to enable Linux/x86 OpenGL applications on FreeBSD i386 today.
I've also seen claims that the request for a vmap()-like kernel interface only serves to enable a "dirty hack" allowing for improved compatibility with systems that have large amounts of memory and GPUs with limited (e.g. 32-bit PCI/PCI-E) addressing capability installed. While improved compatibility with such configurations is desired, vmap()-like functionality only makes sense in combination with the mmap() character driver interface improvements discussed in the original writeup. It is not an enabling feature by itself. I'm not sure which aspect of this is viewed as a hack.