From: Dave Airlie Date: Mon, 27 Aug 2012 06:22:20 +0000 (+1000) Subject: Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux... X-Git-Tag: v3.7-rc1~118^2~31 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=93bb70e0c00f1be4cc857e4d8375c44058cce71e;p=~emulex%2Finfiniband.git Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next There was some merge conflicts in -next and they weren't so pretty, so backmerge now to avoid them. Conflicts: drivers/gpu/drm/i915/i915_gem.c drivers/gpu/drm/i915/intel_modes.c --- 93bb70e0c00f1be4cc857e4d8375c44058cce71e diff --cc drivers/gpu/drm/Kconfig index 45536db74d8,90e28081712..3a8c68345fe --- a/drivers/gpu/drm/Kconfig +++ b/drivers/gpu/drm/Kconfig @@@ -22,8 -22,8 +22,9 @@@ menuconfig DR config DRM_USB tristate depends on DRM + depends on USB_ARCH_HAS_HCD select USB + select USB_SUPPORT config DRM_KMS_HELPER tristate diff --cc drivers/gpu/drm/i915/i915_gem.c index 05145932482,489e2b162b2..31054fa44c4 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@@ -2277,9 -2369,13 +2277,9 @@@ int i915_gpu_idle(struct drm_device *de if (ret) return ret; - ret = i915_switch_context(ring, NULL, DEFAULT_CONTEXT_ID); + ret = i915_ring_idle(ring); if (ret) return ret; - - /* Is the device fubar? */ - if (WARN_ON(!list_empty(&ring->gpu_write_list))) - return -EBUSY; } return 0; diff --cc drivers/gpu/drm/i915/intel_modes.c index 7a5238fc1a0,29b72593fbb..4bc1c0fc342 --- a/drivers/gpu/drm/i915/intel_modes.c +++ b/drivers/gpu/drm/i915/intel_modes.c @@@ -32,6 -32,25 +32,24 @@@ #include "intel_drv.h" #include "i915_drv.h" + /** + * intel_connector_update_modes - update connector from edid + * @connector: DRM connector device to use + * @edid: previously read EDID information + */ + int intel_connector_update_modes(struct drm_connector *connector, + struct edid *edid) + { + int ret; + + drm_mode_connector_update_edid_property(connector, edid); + ret = drm_add_edid_modes(connector, edid); + drm_edid_to_eld(connector, edid); - connector->display_info.raw_edid = NULL; + kfree(edid); + + return ret; + } + /** * intel_ddc_get_modes - get modelist from monitor * @connector: DRM connector device to use diff --cc drivers/gpu/drm/i915/intel_pm.c index c0407aa5baa,1881c8c83f0..9b05f7832dc --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c @@@ -2479,20 -2438,13 +2479,13 @@@ static void gen6_enable_rps(struct drm_ I915_WRITE(GEN6_RP_DOWN_TIMEOUT, 1000000); I915_WRITE(GEN6_RP_INTERRUPT_LIMITS, - dev_priv->max_delay << 24 | - dev_priv->min_delay << 16); + dev_priv->rps.max_delay << 24 | + dev_priv->rps.min_delay << 16); - if (IS_HASWELL(dev)) { - I915_WRITE(GEN6_RP_UP_THRESHOLD, 59400); - I915_WRITE(GEN6_RP_DOWN_THRESHOLD, 245000); - I915_WRITE(GEN6_RP_UP_EI, 66000); - I915_WRITE(GEN6_RP_DOWN_EI, 350000); - } else { - I915_WRITE(GEN6_RP_UP_THRESHOLD, 10000); - I915_WRITE(GEN6_RP_DOWN_THRESHOLD, 1000000); - I915_WRITE(GEN6_RP_UP_EI, 100000); - I915_WRITE(GEN6_RP_DOWN_EI, 5000000); - } + I915_WRITE(GEN6_RP_UP_THRESHOLD, 59400); + I915_WRITE(GEN6_RP_DOWN_THRESHOLD, 245000); + I915_WRITE(GEN6_RP_UP_EI, 66000); + I915_WRITE(GEN6_RP_DOWN_EI, 350000); I915_WRITE(GEN6_RP_IDLE_HYSTERSIS, 10); I915_WRITE(GEN6_RP_CONTROL,