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

Commit a25c9f00 authored by Rodrigo Vivi's avatar Rodrigo Vivi
Browse files

drm/i915/kbl: Fix DMC load on Kabylake.



Kabylake A0 is based on Skylake H0.

v2: Don't assume revid+7 and only load the one we are sure about.

v3: Rebase on top of latest changes.

v4: Accept cleaner solution from Jani with kbl_stepping_info
    starting on H0 instead of put a hack on revid.

Cc: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1449676319-6959-1-git-send-email-rodrigo.vivi@intel.com
parent 893da0c9
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -166,6 +166,14 @@ struct stepping_info {
	char substepping;
};

/*
 * Kabylake derivated from Skylake H0, so SKL H0
 * is the right firmware for KBL A0 (revid 0).
 */
static const struct stepping_info kbl_stepping_info[] = {
	{'H', '0'}, {'I', '0'}
};

static const struct stepping_info skl_stepping_info[] = {
	{'A', '0'}, {'B', '0'}, {'C', '0'},
	{'D', '0'}, {'E', '0'}, {'F', '0'},
@@ -182,7 +190,10 @@ static const struct stepping_info *intel_get_stepping_info(struct drm_device *de
	const struct stepping_info *si;
	unsigned int size;

	if (IS_SKYLAKE(dev)) {
	if (IS_KABYLAKE(dev)) {
		size = ARRAY_SIZE(kbl_stepping_info);
		si = kbl_stepping_info;
	} else if (IS_SKYLAKE(dev)) {
		size = ARRAY_SIZE(skl_stepping_info);
		si = skl_stepping_info;
	} else if (IS_BROXTON(dev)) {