Update i915 GPU driver to Linux 3.8

Our kernel-side i915 GPU driver is getting old: platforms starting with Haswell are not supported at all.

Current status (2015-10-07)

Work continued on stabilizing the driver. Modesettings seems ok for a couple users of Haswell. There are regressions however for previously supported Intel GPUs. A possible cause is the new memory mapping initialization code; this needs further investigation. Then, several other ioctls are broken: it prevents the X.Org server from starting for some people, and Mesa does not work for everyone.

How to test

The branch is on GitHub: https://github.com/freebsd/freebsd-base-graphics/tree/drm-i915-update-38

  1. Make sure you have everything setup to have kernel dumps. Especially, it helps to have the following sysctl:

    # In /etc/sysctl.conf.
  2. Enable i915 debug messages:

    # In /boot/loader.conf.
  3. You need to clone the repository and switch to the drm-i915-update-38 branch:

    git clone -b drm-i915-update-38 \
  4. Build and install a kernel from this clone; I suggest you install the kernel with a non-default name:

    cd freebsd-base-graphics
    sudo make kernel INSTKERNNAME=kernel.i915
  5. Select the new kernel for the next boot and reboot:

    sudo nextboot -k kernel.i915
    sudo reboot
  6. Try to load the new driver:

    sudo kldload i915kms
  7. Try to start an X.Org server and use it.

No matter if it works or not, I'm interested in the output of dmesg and, in case of a kernel crash, the corresponding /var/crash/core.txt.*. Send them to the freebsd-x11 mailing list.

At this time, we won't provide user support. However, if you have patches, they are very much welcome!

Thank you for your help!

Graphics/Update i915 GPU driver to Linux 3.8 (last edited 2015-10-07 22:54:59 by JeanSébastienPédron)