All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v3 4/6] drm/i915/dsi: add support for sequence block v3 gpio for VLV
Date: Thu, 7 Apr 2016 16:04:52 +0300	[thread overview]
Message-ID: <20160407130452.GI4329@intel.com> (raw)
In-Reply-To: <3a95dde1692543977f853cd5f5953bc98588f9d9.1459884518.git.jani.nikula@intel.com>

On Tue, Apr 05, 2016 at 10:30:52PM +0300, Jani Nikula wrote:
> Just put the iosf port in the gpio table. The table might include some
> duplication, but this approach keeps the code the cleanest.
> 
> v2: pack the struct better (Ville), use designated initializers, add
> debug logging for mismatching ports

Is that even possible? As in is the index global instead of per port?
Was there a patch to add !NC GPIOs for VLV?

> 
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_dsi_panel_vbt.c | 31 ++++++++++++++++--------------
>  1 file changed, 17 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c b/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
> index ff0731420677..98583f37f5c7 100644
> --- a/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
> +++ b/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
> @@ -77,22 +77,23 @@ static inline struct vbt_panel *to_vbt_panel(struct drm_panel *panel)
>  
>  struct gpio_map {
>  	u16 base_offset;
> +	u8 port;
>  	bool init;
>  };
>  
>  static struct gpio_map vlv_gpio_table[] = {
> -	{ VLV_GPIO_NC_0_HV_DDI0_HPD },
> -	{ VLV_GPIO_NC_1_HV_DDI0_DDC_SDA },
> -	{ VLV_GPIO_NC_2_HV_DDI0_DDC_SCL },
> -	{ VLV_GPIO_NC_3_PANEL0_VDDEN },
> -	{ VLV_GPIO_NC_4_PANEL0_BKLTEN },
> -	{ VLV_GPIO_NC_5_PANEL0_BKLTCTL },
> -	{ VLV_GPIO_NC_6_HV_DDI1_HPD },
> -	{ VLV_GPIO_NC_7_HV_DDI1_DDC_SDA },
> -	{ VLV_GPIO_NC_8_HV_DDI1_DDC_SCL },
> -	{ VLV_GPIO_NC_9_PANEL1_VDDEN },
> -	{ VLV_GPIO_NC_10_PANEL1_BKLTEN },
> -	{ VLV_GPIO_NC_11_PANEL1_BKLTCTL },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_0_HV_DDI0_HPD },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_1_HV_DDI0_DDC_SDA },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_2_HV_DDI0_DDC_SCL },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_3_PANEL0_VDDEN },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_4_PANEL0_BKLTEN },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_5_PANEL0_BKLTCTL },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_6_HV_DDI1_HPD },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_7_HV_DDI1_DDC_SDA },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_8_HV_DDI1_DDC_SCL },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_9_PANEL1_VDDEN },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_10_PANEL1_BKLTEN },
> +	{ .port = IOSF_PORT_GPIO_NC, .base_offset = VLV_GPIO_NC_11_PANEL1_BKLTCTL },
>  };
>  
>  static inline enum port intel_dsi_seq_port_to_port(u8 port)
> @@ -203,8 +204,7 @@ static void vlv_exec_gpio(struct drm_i915_private *dev_priv,
>  	map = &vlv_gpio_table[gpio_index];
>  
>  	if (dev_priv->vbt.dsi.seq_version >= 3) {
> -		DRM_DEBUG_KMS("GPIO element v3 not supported\n");
> -		return;
> +		port = map->port;
>  	} else {
>  		if (gpio_source == 0) {
>  			port = IOSF_PORT_GPIO_NC;
> @@ -214,6 +214,9 @@ static void vlv_exec_gpio(struct drm_i915_private *dev_priv,
>  			DRM_DEBUG_KMS("unknown gpio source %u\n", gpio_source);
>  			return;
>  		}
> +
> +		if (port != map->port)
> +			DRM_DEBUG_KMS("suspect gpio source %u\n", gpio_source);
>  	}
>  
>  	pconf0 = VLV_GPIO_PCONF0(map->base_offset);
> -- 
> 2.1.4

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2016-04-07 13:05 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-05 19:30 [PATCH v3 0/6] drm/i915/dsi: improved gpio element support for vlv/chv/bxt Jani Nikula
2016-04-05 19:30 ` [PATCH v3 1/6] drm/i915/dsi: clean up vlv gpio table and definitions Jani Nikula
2016-04-07 12:59   ` Ville Syrjälä
2016-04-05 19:30 ` [PATCH v3 2/6] drm/i915/dsi: abstract VLV gpio element execution to a separate function Jani Nikula
2016-04-07 13:00   ` Ville Syrjälä
2016-04-05 19:30 ` [PATCH v3 3/6] drm/i915/dsi: use a temp variable for referencing the gpio table Jani Nikula
2016-04-07 13:01   ` Ville Syrjälä
2016-04-07 13:39     ` Jani Nikula
2016-04-05 19:30 ` [PATCH v3 4/6] drm/i915/dsi: add support for sequence block v3 gpio for VLV Jani Nikula
2016-04-07 13:04   ` Ville Syrjälä [this message]
2016-04-07 13:14     ` Jani Nikula
2016-04-05 19:30 ` [PATCH v3 5/6] drm/i915/dsi: add support for gpio elements on CHV Jani Nikula
2016-04-07 13:16   ` Ville Syrjälä
2016-04-05 19:30 ` [PATCH v3 6/6] drm/i915/bxt: add bxt dsi gpio element support Jani Nikula
2016-04-07 11:47   ` [PATCH] " Jani Nikula
2016-04-07 12:21     ` Ville Syrjälä
2016-04-07 12:55       ` Jani Nikula
2016-04-06  7:27 ` ✗ Fi.CI.BAT: failure for drm/i915/dsi: improved gpio element support for vlv/chv/bxt (rev2) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160407130452.GI4329@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.