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

Commit fffda3f4 authored by Jani Nikula's avatar Jani Nikula
Browse files

drm/i915/bxt: add revision id for A1 stepping and use it



Prefer inclusive ranges for revision checks rather than "below B0". Per
specs A2 is not used, so revid <= A1 matches revid < B0.

Acked-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1445343722-3312-2-git-send-email-jani.nikula@intel.com


Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
parent ef712bb4
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2502,6 +2502,7 @@ struct drm_i915_cmd_table {
#define SKL_REVID_F0		0x5

#define BXT_REVID_A0		0x0
#define BXT_REVID_A1		0x1
#define BXT_REVID_B0		0x3
#define BXT_REVID_C0		0x9

+1 −1
Original line number Diff line number Diff line
@@ -3826,7 +3826,7 @@ int i915_gem_set_caching_ioctl(struct drm_device *dev, void *data,
		 * cacheline, whereas normally such cachelines would get
		 * invalidated.
		 */
		if (IS_BROXTON(dev) && INTEL_REVID(dev) < BXT_REVID_B0)
		if (IS_BROXTON(dev) && INTEL_REVID(dev) <= BXT_REVID_A1)
			return -ENODEV;

		level = I915_CACHE_LLC;
+1 −1
Original line number Diff line number Diff line
@@ -161,7 +161,7 @@ static int host2guc_sample_forcewake(struct intel_guc *guc,
	data[0] = HOST2GUC_ACTION_SAMPLE_FORCEWAKE;
	/* WaRsDisableCoarsePowerGating:skl,bxt */
	if (!intel_enable_rc6(dev_priv->dev) ||
	    (IS_BROXTON(dev) && (INTEL_REVID(dev) < BXT_REVID_B0)) ||
	    (IS_BROXTON(dev) && (INTEL_REVID(dev) <= BXT_REVID_A1)) ||
	    (IS_SKL_GT3(dev) && (INTEL_REVID(dev) <= SKL_REVID_E0)) ||
	    (IS_SKL_GT4(dev) && (INTEL_REVID(dev) <= SKL_REVID_E0)))
		data[1] = 0;
+1 −1
Original line number Diff line number Diff line
@@ -3247,7 +3247,7 @@ void intel_ddi_init(struct drm_device *dev, enum port port)
		 * On BXT A0/A1, sw needs to activate DDIA HPD logic and
		 * interrupts to check the external panel connection.
		 */
		if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) < BXT_REVID_B0)
		if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) <= BXT_REVID_A1)
					 && port == PORT_B)
			dev_priv->hotplug.irq_port[PORT_A] = intel_dig_port;
		else
+1 −1
Original line number Diff line number Diff line
@@ -6087,7 +6087,7 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
		break;
	case PORT_B:
		intel_encoder->hpd_pin = HPD_PORT_B;
		if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) < BXT_REVID_B0))
		if (IS_BROXTON(dev_priv) && (INTEL_REVID(dev) <= BXT_REVID_A1))
			intel_encoder->hpd_pin = HPD_PORT_A;
		break;
	case PORT_C:
Loading