Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 02bcca0d authored by Paulo Zanoni's avatar Paulo Zanoni Committed by Daniel Vetter
Browse files

drm/i915: clear the FPGA_DBG_RM_NOCLAIM bit at driver init

Otherwise, if the BIOS did anything wrong, our first I915_{WRITE,READ}
will give us "unclaimed register"  messages.

V2: Even earlier.
V3: Move it to intel_early_sanitize_regs.

Bugzilla: http://bugs.freedesktop.org/show_bug.cgi?id=58897


Signed-off-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 3f1e109a
Loading
Loading
Loading
Loading
+18 −0
Original line number Original line Diff line number Diff line
@@ -1452,6 +1452,22 @@ static void i915_dump_device_info(struct drm_i915_private *dev_priv)
#undef DEV_INFO_SEP
#undef DEV_INFO_SEP
}
}


/**
 * intel_early_sanitize_regs - clean up BIOS state
 * @dev: DRM device
 *
 * This function must be called before we do any I915_READ or I915_WRITE. Its
 * purpose is to clean up any state left by the BIOS that may affect us when
 * reading and/or writing registers.
 */
static void intel_early_sanitize_regs(struct drm_device *dev)
{
	struct drm_i915_private *dev_priv = dev->dev_private;

	if (IS_HASWELL(dev))
		I915_WRITE_NOTRACE(FPGA_DBG, FPGA_DBG_RM_NOCLAIM);
}

/**
/**
 * i915_driver_load - setup chip and create an initial config
 * i915_driver_load - setup chip and create an initial config
 * @dev: DRM device
 * @dev: DRM device
@@ -1542,6 +1558,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
		goto put_gmch;
		goto put_gmch;
	}
	}


	intel_early_sanitize_regs(dev);

	aperture_size = dev_priv->gtt.mappable_end;
	aperture_size = dev_priv->gtt.mappable_end;


	dev_priv->gtt.mappable =
	dev_priv->gtt.mappable =