Currently, the FreeBSD X11 port, and associated src bits, are lagging behind the Linux versions. This is exacerbated by the fact the Xorg developers seem increasingly Linux-centric.
There are several major tasks to fix this problem.
(The following is taken from an email posted by RobertNoland to the freebsd-x11@ mailing list on 20091128.)
The current difficulty with updating is due to Intel and nouveau dropping support for kernel configurations without GEM/TTM. GEM/TTM are non-trivial to port into the kernel, although I do have WIP on both, there is no ETA.
For nouveau, that means that an older version of libdrm will be needed, which will have to conflict with the current version. That just kinda makes my skin crawl, since I really despise conflicting ports to begin with and the dependecy management gets overly complicated.
For Intel, going beyond the 2.7 DDX driver, doesn't support drm without GEM. The current 2.7.1 driver doesn't build against 1.7.1/2 server. So, either the existing Intel driver has to be fixed to work with the new server, or we import the 2.9 series and lose drm support. Were we to do both, again we have conflicts, but since the drivers are leaf ports, the dependency management isn't such an issue.
My roadmap is basically, GEM -> TTM -> KMS. GEM, I think I have sorted out what we need to do. TTM, is a bit more tricky, but at least now, I think that I now understand the VM system well enough to get some of this working. KMS on the other hand, needs GEM/TTM to start with and I'm not yet sure how well it will integrate with syscons.