[Quantal] Include support for Haswell hardware

Bug #1085245 reported by Leann Ogasawara
32
This bug affects 3 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Invalid
Undecided
Unassigned
Quantal
Fix Released
Medium
Leann Ogasawara
mesa (Ubuntu)
Fix Released
Undecided
Unassigned
Quantal
Fix Released
Undecided
Unassigned
xserver-xorg-video-intel (Ubuntu)
Fix Released
Undecided
Unassigned
Quantal
Fix Released
Undecided
Unassigned

Bug Description

== Quantal SRU Justification ==

Beginning with the 12.04.2 point release, we are providing the 12.10 kernel as an enablement vehicle. Enablement for Haswell graphics has been a frequent request and highly sought after for the 12.04.2 point release coupled with the 12.10 kernel and X stack. Full enablement support for Haswell will unfortunately not be available by default until the upstream v3.8 kernel. Given our release time frames, waiting for the v3.8 kernel to land in an official Ubuntu release and propagate back into 12.04 will greatly delay our ability to support Haswell in the near future. As an alternative solution, I'm am proposing we provide an updated i915 driver in Quantal with Haswell support.

== Fix ==
We can provide an updated snapshot of the i915 driver which supports Haswell and is currently making it's way through the drm-intel tree and targeted to land in the upstream v3.8. This updated version of the i915 driver being proposed here for the Quantal kernel will only support Haswell pci id's which should greatly reduce the risk of regression to non-Haswell hardware. The following set of patches introduces this updated i915 driver as an Ubuntu driver (ie ubuntu-quantal/ubuntu/i915) and will be renamed to "i915_hsw".

The updated i915 snapshot was taken from "git://people.freedesktop.org/~danvet/drm backport-3.6" which was specifically provided by Intel to help with backporting efforts. It is a v3.6 based tree with only the Haswell enablement patches applied on top. It should be less volatile than a drm-intel-nightly branch which contains the same Haswell support. The set of patches I'm proposing for the Quantal kernel can be reviewed at:

  git://kernel.ubuntu.com/ogasawara/ubuntu-quantal.git hsw-backport-3.6

I would note I did have to backport some patches which touch outside the ubuntu/i915 space. However, I hope most are straightforward enough to see they pose no risk of regression (ie they only introduce new #define's or functions which are only used by this newer driver). I would also note I did need to also cherry-pick some drm/fb-helper patches which were listed in the backport-3.6 branch from Intel in order to resolve some VGA issues I was seeing while testing. I hope those are also straightforward when reviewing.

== Testing ==
I've tested this on a Beta Shark Bay Desktop SDP replicating the same package combination we'll see with the 12.04.2 point release, ie Precise + Quantal X stack + Quantal test kernel. I see significant improvements compared to a stock Quantal kernel. With a stock Quantal kernel, the system is unusable and the monitor powers off 3secs into booting anyways. With the proposed set of patches I'm able to successfully boot and connect a monitor over HDMI and VGA. I also did some general smoke testing of suspend/resume, audio, ethernet, wifi, reboot/shutdown, 3D, and monitor hotplugging all of which passed with the exception of suspend/resume failures over VGA which I'm told is a known issue that is being addressed. I have also tested this on all my non-Haswell hardware I have and can confirm I see no regressions.

Changed in linux (Ubuntu Quantal):
assignee: nobody → Leann Ogasawara (leannogasawara)
importance: Undecided → Medium
status: New → In Progress
Changed in linux (Ubuntu):
status: New → Invalid
description: updated
Changed in linux (Ubuntu Quantal):
status: In Progress → Fix Committed
Revision history for this message
Luis Henriques (henrix) wrote :

This bug is awaiting verification that the kernel for Quantal in -proposed solves the problem (3.5.0-20.31). Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-quantal' to 'verification-done-quantal'.

If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-quantal
tags: added: verification-done-quantal
removed: verification-needed-quantal
Revision history for this message
Harm van Bakel (hvbakel) wrote :

After installing this kernel on a new dell xps 13 (ivy bridge version), unity always freezes after a resume from suspend. The mouse still moves and I can switch to VT1 to reboot. Reverting to 3.5.0-19 resolves the problem. Not sure if the freeze is due to the introduction of haswell support or other upstream kernel changes (i.e. bug #1084539).

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Hi Harm,

If you could, please open a separate Launchpad bug (run `ubuntu-bug linux` from a Terminal) for the issue you are experiencing and let us know the bug #. I would not expect the changes introduced for Haswell support to affect your system because the updated i915 snapshot will only load and run on Haswell systems. So I do expect it is a different patch causing this regression. Thanks.

Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (24.2 KiB)

This bug was fixed in the package linux - 3.5.0-21.32

---------------
linux (3.5.0-21.32) quantal-proposed; urgency=low

  [ Luis Henriques ]

  * Release Tracking Bug
    - LP: #1088979
  * SAUCE: i915_hsw: move i915_hsw_enabled symbol to intel_ips
    - LP: #1087622

linux (3.5.0-20.31) quantal-proposed; urgency=low

  [Luis Henriques]

  * Release Tracking Bug
    - LP: #1086759

  [ Ben Widawsky ]

  * SAUCE: i915_hsw: Include #define I915_PARAM_HAS_WAIT_TIMEOUT
    - LP: #1085245
  * SAUCE: i915_hsw: Include #define DRM_I915_GEM_CONTEXT_[CREATE,DESTROY]
    - LP: #1085245
  * SAUCE: i915_hsw: drm/i915: add register read IOCTL
    - LP: #1085245
  * SAUCE: i915_hsw: Include #define i915_execbuffer2_[set,get]_context_id
    - LP: #1085245

  [ Chris Wilson ]

  * SAUCE: i915_hsw: Include #define I915_GEM_PARAM_HAS_SEMAPHORES
    - LP: #1085245
  * SAUCE: i915_hsw: Include #define I915_PARAM_HAS_SECURE_BATCHES
    - LP: #1085245

  [ Daniel Vetter ]

  * SAUCE: i915_hsw: drm/i915: call intel_enable_gtt
    - LP: #1085245
  * SAUCE: i915_hsw: drm: add helper to sort panels to the head of the
    connector list
    - LP: #1085245
  * SAUCE: i915_hsw: drm: extract dp link bw helpers
    - LP: #1085245
  * SAUCE: i915_hsw: drm: extract drm_dp_max_lane_count helper
    - LP: #1085245
  * SAUCE: i915_hsw: drm: dp helper: extract drm_dp_channel_eq_ok
    - LP: #1085245
  * SAUCE: i915_hsw: drm: extract helpers to compute new training values
    from sink request
    - LP: #1085245
  * SAUCE: i915_hsw: drm: dp helper: extract drm_dp_clock_recovery_ok
    - LP: #1085245

  [ Dave Airlie ]

  * SAUCE: i915_hsw: Include #define I915_PARAM_HAS_PRIME_VMAP_FLUSH
    - LP: #1085245

  [ Leann Ogasawara ]

  * SAUCE: i915_hsw: Provide an ubuntu/i915 driver for Haswell graphics
    - LP: #1085245
  * SAUCE: i915_hsw: Revert "drm: Make the .mode_fixup() operations mode
    argument a const pointer" for ubuntu/i915 driver
    - LP: #1085245
  * SAUCE: i915_hsw: Rename ubuntu/i915 driver i915_hsw
    - LP: #1085245
  * SAUCE: i915_hsw: Only support Haswell with ubuntu/i915 driver
    - LP: #1085245
  * SAUCE: i915_hsw: Include #define DRM_I915_GEM_WAIT
    - LP: #1085245
  * SAUCE: i915_hsw: drm: extract dp link train delay functions from radeon
    - LP: #1085245
  * SAUCE: i915_hsw: drm/dp: Update DPCD defines
    - LP: #1085245
  * SAUCE: i915_hsw: Update intel_ips.h file location
    - LP: #1085245
  * SAUCE: i915_hsw: Provide updated drm_mm.h and drm_mm.c for ubuntu/i915
    - LP: #1085245
  * SAUCE: i915_hsw: drm/i915: Replace the array of pages with a
    scatterlist
    - LP: #1085245
  * SAUCE: i915_hsw: drm/i915: Replace the array of pages with a
    scatterlist
    - LP: #1085245
  * SAUCE: i915_hsw: drm/i915: Stop using AGP layer for GEN6+
    - LP: #1085245
  * SAUCE: i915_hsw: Add i915_hsw_gpu_*() calls for ubuntu/i915
    - LP: #1085245
  * i915_hsw: [Config] Enable CONFIG_DRM_I915_HSW=m
    - LP: #1085245

  [ Paulo Zanoni ]

  * SAUCE: drm/i915: fix hsw_fdi_link_train "retry" code
    - LP: #1085245
  * SAUCE: drm/i915: reject modes the LPT FDI receiver can't handle
    - LP: #1085245
  * SAUCE: drm/i915: add support for mPHY destination on i...

Changed in linux (Ubuntu Quantal):
status: Fix Committed → Fix Released
Revision history for this message
Robert Hooker (sarvatt) wrote :

The userspace drivers for haswell were uploaded before release.

Changed in mesa (Ubuntu):
status: New → Fix Released
Changed in mesa (Ubuntu Quantal):
status: New → Fix Released
Changed in xserver-xorg-video-intel (Ubuntu):
status: New → Fix Released
Changed in xserver-xorg-video-intel (Ubuntu Quantal):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.