On Thu, 2015-09-17 at 14:47 +0100, David Chisnall wrote:
> On 17 Sep 2015, at 14:41, Lundberg, Johannes <
> johan...@brilliantservice.co.jp> wrote:
> > However, the problem now is not the driver right? But the whole
> > graphics
> > stack which has to be rewritten to work with new generation
> > graphics like
> > KMS, Wayland, etc?
> There are lots of different components here that you’re conflating:
> - KMS is the thing that allows the kernel to be responsible for
> setting the graphics mode, restoring it on context switches and so
> on. This has worked on FreeBSD for a while.
> - GEM / TTM are memory managers, they allow the kernel to manage
> memory (video memory and main memory allocated to the GPU) for GPU
> -using drivers. These work on FreeBSD, but the supported version
> lags Linux slightly. This is the focus of current work.
> - The i915 driver. This is the graphics driver for Intel GPUs. It
> uses KMS and the memory manager functionality. Importing a newer
> version will be possible once the underlying parts are done.
> - Wayland is a userland application that sits on top of DRI drivers,
> just as X.org does. Most of the things Wayland needs that don’t work
> on FreeBSD are not graphics related.
> The problem is that the developers *also* conflate them. Upstream
> i915 developers will add KPIs to GEM / TTM / KMS to make their lives
> easier and these features need bringing across to FreeBSD.
Let's also not forget the following statistics:
- The DRM / GEM / TTM code is around 50k lines of code;
- The i915 driver is 120k lines of code;
- The radeon driver is 212k lines of code.
Even with a good linux compatibility layer, it's still a big project
that requires a lot of work. If we don't convince the vendors to work
on FreeBSD, I fear this problem will never be solved.
P.S.: the total linux drm stack is around 600k LOC.
firstname.lastname@example.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"