[Intel-gfx] [PATCH] drm/i915: Apply correct ddi translation table for AML device

Lee, Shawn C shawn.c.lee at intel.com
Wed Sep 26 01:59:39 UTC 2018


On Tue, 2018-09-25 at 21:20, Souza, Jose wrote:
>> Amber Lake used the same gen graphics as Kaby Lake. Kernel driver 
>> should configure KBL's DDI buffer setting for AML ULX as well.
>> 
>> So far, driver would load DDI translation table that used for KBL H/S 
>> platform and apply it on AML devices. But AML is belong to ULX series. 
>> This change will lead driver to apply KBL-Y's DDI table for AML 
>> devices to avoid unexpected eDP/DP signal quality issue.
>> 
>> Cc: Jani Nikula <jani.nikula at intel.com>
>> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
>> Cc: Jose Roberto de Souza <jose.souza at intel.com>
>
>Reviewed-by: Jose Roberto de Souza <jose.souza at intel.com>
>
>But I guess CI will fail in this patch as looks like you send the first one separated from this one.
>

Yes, it depends on https://patchwork.kernel.org/patch/10613643/.

>> Signed-off-by: Lee, Shawn C <shawn.c.lee at intel.com>
>> ---
>>  drivers/gpu/drm/i915/intel_ddi.c | 6 +++---
>>  1 file changed, 3 insertions(+), 3 deletions(-)
>> 
>> diff --git a/drivers/gpu/drm/i915/intel_ddi.c
>> b/drivers/gpu/drm/i915/intel_ddi.c
>> index b6910c8b4e08..b051970912a3 100644
>> --- a/drivers/gpu/drm/i915/intel_ddi.c
>> +++ b/drivers/gpu/drm/i915/intel_ddi.c
>> @@ -642,7 +642,7 @@ skl_get_buf_trans_dp(struct drm_i915_private 
>> *dev_priv, int *n_entries)  static const struct ddi_buf_trans *  
>> kbl_get_buf_trans_dp(struct drm_i915_private *dev_priv, int
>> *n_entries)
>>  {
>> -	if (IS_KBL_ULX(dev_priv)) {
>> +	if (IS_KBL_ULX(dev_priv) || IS_AML_ULX(dev_priv)) {
>>  		*n_entries = ARRAY_SIZE(kbl_y_ddi_translations_dp);
>>  		return kbl_y_ddi_translations_dp;
>>  	} else if (IS_KBL_ULT(dev_priv) || IS_CFL_ULT(dev_priv)) { @@ -658,7 
>> +658,7 @@ static const struct ddi_buf_trans *  
>> skl_get_buf_trans_edp(struct drm_i915_private *dev_priv, int
>> *n_entries)
>>  {
>>  	if (dev_priv->vbt.edp.low_vswing) {
>> -		if (IS_SKL_ULX(dev_priv) || IS_KBL_ULX(dev_priv)) {
>> +		if (IS_SKL_ULX(dev_priv) || IS_KBL_ULX(dev_priv) ||
>> IS_AML_ULX(dev_priv)) {
>>  			*n_entries =
>> ARRAY_SIZE(skl_y_ddi_translations_edp);
>>  			return skl_y_ddi_translations_edp;
>>  		} else if (IS_SKL_ULT(dev_priv) || IS_KBL_ULT(dev_priv)
>> ||
>> @@ -680,7 +680,7 @@ skl_get_buf_trans_edp(struct drm_i915_private 
>> *dev_priv, int *n_entries)  static const struct ddi_buf_trans *  
>> skl_get_buf_trans_hdmi(struct drm_i915_private *dev_priv, int
>> *n_entries)
>>  {
>> -	if (IS_SKL_ULX(dev_priv) || IS_KBL_ULX(dev_priv)) {
>> +	if (IS_SKL_ULX(dev_priv) || IS_KBL_ULX(dev_priv) ||
>> IS_AML_ULX(dev_priv)) {
>>  		*n_entries = ARRAY_SIZE(skl_y_ddi_translations_hdmi);
>>  		return skl_y_ddi_translations_hdmi;
>>  	} else {


More information about the Intel-gfx mailing list