Commit 928352e9eebabb814d0c38af1772af55677faf62

Authored by Linus Torvalds

Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

Pull drm fixes from Dave Airlie:
 "Just two radeon and two intel fixes: endian and regression fixes"

* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
  drm/radeon: fix endian swapping in vbios fetch for tdp table
  drm/radeon: disable native backlight control on pre-r6xx asics (v2)
  drm/i915: Kick fbdev before vgacon
  drm/i915: drop WaSetupGtModeTdRowDispatch:snb

Showing 4 changed files Side-by-side Diff

drivers/gpu/drm/i915/i915_dma.c
... ... @@ -1670,15 +1670,17 @@
1670 1670 goto out_regs;
1671 1671  
1672 1672 if (drm_core_check_feature(dev, DRIVER_MODESET)) {
1673   - ret = i915_kick_out_vgacon(dev_priv);
  1673 + /* WARNING: Apparently we must kick fbdev drivers before vgacon,
  1674 + * otherwise the vga fbdev driver falls over. */
  1675 + ret = i915_kick_out_firmware_fb(dev_priv);
1674 1676 if (ret) {
1675   - DRM_ERROR("failed to remove conflicting VGA console\n");
  1677 + DRM_ERROR("failed to remove conflicting framebuffer drivers\n");
1676 1678 goto out_gtt;
1677 1679 }
1678 1680  
1679   - ret = i915_kick_out_firmware_fb(dev_priv);
  1681 + ret = i915_kick_out_vgacon(dev_priv);
1680 1682 if (ret) {
1681   - DRM_ERROR("failed to remove conflicting framebuffer drivers\n");
  1683 + DRM_ERROR("failed to remove conflicting VGA console\n");
1682 1684 goto out_gtt;
1683 1685 }
1684 1686 }
drivers/gpu/drm/i915/intel_pm.c
... ... @@ -5469,11 +5469,6 @@
5469 5469 I915_WRITE(_3D_CHICKEN,
5470 5470 _MASKED_BIT_ENABLE(_3D_CHICKEN_HIZ_PLANE_DISABLE_MSAA_4X_SNB));
5471 5471  
5472   - /* WaSetupGtModeTdRowDispatch:snb */
5473   - if (IS_SNB_GT1(dev))
5474   - I915_WRITE(GEN6_GT_MODE,
5475   - _MASKED_BIT_ENABLE(GEN6_TD_FOUR_ROW_DISPATCH_DISABLE));
5476   -
5477 5472 /* WaDisable_RenderCache_OperationalFlush:snb */
5478 5473 I915_WRITE(CACHE_MODE_0, _MASKED_BIT_DISABLE(RC_OP_FLUSH_ENABLE));
5479 5474  
drivers/gpu/drm/radeon/r600_dpm.c
... ... @@ -1256,7 +1256,7 @@
1256 1256 (mode_info->atom_context->bios + data_offset +
1257 1257 le16_to_cpu(ext_hdr->usPowerTuneTableOffset));
1258 1258 rdev->pm.dpm.dyn_state.cac_tdp_table->maximum_power_delivery_limit =
1259   - ppt->usMaximumPowerDeliveryLimit;
  1259 + le16_to_cpu(ppt->usMaximumPowerDeliveryLimit);
1260 1260 pt = &ppt->power_tune_table;
1261 1261 } else {
1262 1262 ATOM_PPLIB_POWERTUNE_Table *ppt = (ATOM_PPLIB_POWERTUNE_Table *)
drivers/gpu/drm/radeon/radeon_encoders.c
... ... @@ -179,6 +179,9 @@
179 179 (rdev->pdev->subsystem_vendor == 0x1734) &&
180 180 (rdev->pdev->subsystem_device == 0x1107))
181 181 use_bl = false;
  182 + /* disable native backlight control on older asics */
  183 + else if (rdev->family < CHIP_R600)
  184 + use_bl = false;
182 185 else
183 186 use_bl = true;
184 187 }