[Intel-gfx] [PATCH] drm/i915/kbl: Fix DMC load on Kabylake.

Jani Nikula jani.nikula at intel.com
Wed Dec 9 07:34:58 PST 2015


On Wed, 09 Dec 2015, Rodrigo Vivi <rodrigo.vivi at intel.com> wrote:
> 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 at intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>

Thanks.

Reviewed-by: Jani Nikula <jani.nikula at intel.com>

> ---
>  drivers/gpu/drm/i915/intel_csr.c | 13 ++++++++++++-
>  1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_csr.c b/drivers/gpu/drm/i915/intel_csr.c
> index 6c6a669..9bb63a8 100644
> --- a/drivers/gpu/drm/i915/intel_csr.c
> +++ b/drivers/gpu/drm/i915/intel_csr.c
> @@ -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)) {

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list