All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yakir Yang <ykk@rock-chips.com>
To: Krzysztof Kozlowski <k.kozlowski@samsung.com>,
	Inki Dae <inki.dae@samsung.com>,
	Andrzej Hajda <a.hajda@samsung.com>,
	Joonyoung Shim <jy0922.shim@samsung.com>,
	Seung-Woo Kim <sw0312.kim@samsung.com>,
	Kyungmin Park <kyungmin.park@samsung.com>,
	Jingoo Han <jingoohan1@gmail.com>,
	Heiko Stuebner <heiko@sntech.de>,
	Mark Yao <mark.yao@rock-chips.com>,
	Thierry Reding <treding@nvidia.com>,
	joe@perches.com, Rob Herring <robh+dt@kernel.org>
Cc: devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org,
	Russell King <linux@arm.linux.org.uk>,
	Pawel Moll <pawel.moll@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	linux-kernel@vger.kernel.org, emil.l.velikov@gmail.com,
	dianders@chromium.org, Kishon Vijay Abraham I <kishon@ti.com>,
	linux-rockchip@lists.infradead.org, Kukjin Kim <kgene@kernel.org>,
	dri-devel@lists.freedesktop.org,
	Kumar Gala <galak@codeaurora.org>,
	ajaynumb@gmail.com, robherring2@gmail.com,
	Andy Yan <andy.yan@rock-chips.com>,
	Gustavo Padovan <gustavo.padovan@collabora.co.uk>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v5 05/17] drm: bridge: analogix/dp: dynamic parse sync_pol & interlace & dynamic_range
Date: Wed, 30 Sep 2015 15:19:13 +0800	[thread overview]
Message-ID: <560B8CF1.7050102@rock-chips.com> (raw)
In-Reply-To: <560B73D4.30109@samsung.com>


[-- Attachment #1.1: Type: text/plain, Size: 13807 bytes --]

Hi Krzysztof,

On 09/30/2015 01:32 PM, Krzysztof Kozlowski wrote:
> On 22.09.2015 16:37, Yakir Yang wrote:
>> Both hsync/vsync polarity and interlace mode can be parsed from
>> drm display mode, and dynamic_range and ycbcr_coeff can be judge
>> by the video code.
>>
>> But presumably Exynos still relies on the DT properties, so take
>> good use of mode_fixup() in to achieve the compatibility hacks.
>>
>> Signed-off-by: Yakir Yang <ykk@rock-chips.com>
>> ---
>> Changes in v5:
>> - Switch video timing type to "u32", so driver could use "of_property_read_u32"
>>    to get the backword timing values.
> Okay
>
>> Krzysztof suggest me that driver could use
>>    the "of_property_read_bool" to get backword timing values, but that interfacs
>>    would modify the original drm_display_mode timing directly (whether those
>>    properties exists or not).
> Hmm, I don't understand. You have a:
> 	struct video_info {
> 		bool h_sync_polarity;
> 		bool v_sync_polarity;
> 		bool interlaced;
> 	};
>
> so what is wrong with:
> 	dp_video_config->h_sync_polarity =
> 		of_property_read_bool(dp_node, "hsync-active-high");
>
> Is it exactly the same binding as previously?

Yes, it is the same binding as previously. But just a note that we already
mark those DT binding as deprecated.

+-interlaced:            deprecated prop that can parsed frm drm_display_mode.
+-vsync-active-high:     deprecated prop that can parsed frm drm_display_mode.
+-hsync-active-high:     deprecated prop that can parsed frm drm_display_mode.


For now those values should come from "struct drm_display_mode",
and we already parsed them out from "drm_display_mode" before
driver provide the backward compatibility.

Let's used the "hsync-active-high" example:
     As for now the code would like:
     static void analogix_dp_bridge_mode_set(...)
     {
         // Parsed timing value from "drm_display_mode"
         video->h_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NHSYNC);

         // Try to detect the deprecated property, providing
         // the backward compatibility
         of_property_read_u32(dp_node, "hsync-active-high",
                                  &video->h_sync_polarity);

         /*
          * In this case, if "hsync-active-high" property haven't been
          * found, then the video timing "h_sync_polarity" would keep
          * no change, keeping the parsed value from "drm_display_mode"
          */
     }

     But if keep the "of_property_read_bool", then code would like:
     static void analogix_dp_bridge_mode_set(...)
     {
         // Parsed timing value from "drm_display_mode"
         video->h_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NHSYNC);

         // Try to detect the deprecated property, providing
         // the backward compatibility
video->h_sync_polarity =
of_property_read_bool(dp_node, "hsync-active-high");

         /*
          * In this case, if "hsync-active-high" property haven't been
          * found, then the video timing "h_sync_polarity" would just
          * modify to "false". That is the place we don't want, cause
          * it would always modify the timing value parsed from
          * "drm_display_mode"
          */
     }


Thanks,
- Yakir

> Best regards,
> Krzysztof
>
>> Changes in v4:
>> - Provide backword compatibility with samsung. (Krzysztof)
>>
>> Changes in v3:
>> - Dynamic parse video timing info from struct drm_display_mode and
>>    struct drm_display_info. (Thierry)
>>
>> Changes in v2: None
>>
>>   drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 144 +++++++++++++--------
>>   drivers/gpu/drm/bridge/analogix/analogix_dp_core.h |   8 +-
>>   drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c  |  14 +-
>>   3 files changed, 104 insertions(+), 62 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
>> index 1e3c8d3..6be139b 100644
>> --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
>> +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c
>> @@ -890,8 +890,8 @@ static void analogix_dp_commit(struct analogix_dp_device *dp)
>>   		return;
>>   	}
>>   
>> -	ret = analogix_dp_set_link_train(dp, dp->video_info->lane_count,
>> -					 dp->video_info->link_rate);
>> +	ret = analogix_dp_set_link_train(dp, dp->video_info.lane_count,
>> +					 dp->video_info.link_rate);
>>   	if (ret) {
>>   		dev_err(dp->dev, "unable to do link train\n");
>>   		return;
>> @@ -1030,6 +1030,85 @@ static void analogix_dp_bridge_disable(struct drm_bridge *bridge)
>>   	dp->dpms_mode = DRM_MODE_DPMS_OFF;
>>   }
>>   
>> +static void analogix_dp_bridge_mode_set(struct drm_bridge *bridge,
>> +					struct drm_display_mode *orig_mode,
>> +					struct drm_display_mode *mode)
>> +{
>> +	struct analogix_dp_device *dp = bridge->driver_private;
>> +	struct drm_display_info *display_info = &dp->connector->display_info;
>> +	struct video_info *video = &dp->video_info;
>> +	struct device_node *dp_node = dp->dev->of_node;
>> +	int vic;
>> +
>> +	/* Input video interlaces & hsync pol & vsync pol */
>> +	video->interlaced = !!(mode->flags & DRM_MODE_FLAG_INTERLACE);
>> +	video->v_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NVSYNC);
>> +	video->h_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NHSYNC);
>> +
>> +	/* Input video dynamic_range & colorimetry */
>> +	vic = drm_match_cea_mode(mode);
>> +	if ((vic == 6) || (vic == 7) || (vic == 21) || (vic == 22) ||
>> +	    (vic == 2) || (vic == 3) || (vic == 17) || (vic == 18)) {
>> +		video->dynamic_range = CEA;
>> +		video->ycbcr_coeff = COLOR_YCBCR601;
>> +	} else if (vic) {
>> +		video->dynamic_range = CEA;
>> +		video->ycbcr_coeff = COLOR_YCBCR709;
>> +	} else {
>> +		video->dynamic_range = VESA;
>> +		video->ycbcr_coeff = COLOR_YCBCR709;
>> +	}
>> +
>> +	/* Input vide bpc and color_formats */
>> +	switch (display_info->bpc) {
>> +	case 12:
>> +		video->color_depth = COLOR_12;
>> +		break;
>> +	case 10:
>> +		video->color_depth = COLOR_10;
>> +		break;
>> +	case 8:
>> +		video->color_depth = COLOR_8;
>> +		break;
>> +	case 6:
>> +		video->color_depth = COLOR_6;
>> +		break;
>> +	default:
>> +		video->color_depth = COLOR_8;
>> +		break;
>> +	}
>> +	if (display_info->color_formats & DRM_COLOR_FORMAT_YCRCB444)
>> +		video->color_space = COLOR_YCBCR444;
>> +	else if (display_info->color_formats & DRM_COLOR_FORMAT_YCRCB422)
>> +		video->color_space = COLOR_YCBCR422;
>> +	else if (display_info->color_formats & DRM_COLOR_FORMAT_RGB444)
>> +		video->color_space = COLOR_RGB;
>> +	else
>> +		video->color_space = COLOR_RGB;
>> +
>> +	/*
>> +	 * NOTE: those property parsing code is used for providing backward
>> +	 * compatibility for samsung platform.
>> +	 * Due to we used the "of_property_read_u32" interfaces, when this
>> +	 * property isn't present, the "video_info" can keep the original
>> +	 * values and wouldn't be modified.
>> +	 */
>> +	of_property_read_u32(dp_node, "samsung,color-space",
>> +			     &video->color_space);
>> +	of_property_read_u32(dp_node, "samsung,dynamic-range",
>> +			     &video->dynamic_range);
>> +	of_property_read_u32(dp_node, "samsung,ycbcr-coeff",
>> +			     &video->ycbcr_coeff);
>> +	of_property_read_u32(dp_node, "samsung,color-depth",
>> +			     &video->color_depth);
>> +	of_property_read_u32(dp_node, "hsync-active-high",
>> +			     &video->h_sync_polarity);
>> +	of_property_read_u32(dp_node, "vsync-active-high",
>> +			     &video->v_sync_polarity);
>> +	of_property_read_u32(dp_node, "interlaced",
>> +			     &video->interlaced);
>> +}
>> +
>>   static void analogix_dp_bridge_nop(struct drm_bridge *bridge)
>>   {
>>   	/* do nothing */
>> @@ -1040,6 +1119,7 @@ static const struct drm_bridge_funcs analogix_dp_bridge_funcs = {
>>   	.disable = analogix_dp_bridge_disable,
>>   	.pre_enable = analogix_dp_bridge_nop,
>>   	.post_disable = analogix_dp_bridge_nop,
>> +	.mode_set = analogix_dp_bridge_mode_set,
>>   	.attach = analogix_dp_bridge_attach,
>>   };
>>   
>> @@ -1070,62 +1150,24 @@ static int analogix_dp_create_bridge(struct drm_device *drm_dev,
>>   	return 0;
>>   }
>>   
>> -static struct video_info *analogix_dp_dt_parse_pdata(struct device *dev)
>> +static int analogix_dp_dt_parse_pdata(struct analogix_dp_device *dp)
>>   {
>> -	struct device_node *dp_node = dev->of_node;
>> -	struct video_info *dp_video_config;
>> -
>> -	dp_video_config = devm_kzalloc(dev, sizeof(*dp_video_config),
>> -				       GFP_KERNEL);
>> -	if (!dp_video_config)
>> -		return ERR_PTR(-ENOMEM);
>> -
>> -	dp_video_config->h_sync_polarity =
>> -		of_property_read_bool(dp_node, "hsync-active-high");
>> -
>> -	dp_video_config->v_sync_polarity =
>> -		of_property_read_bool(dp_node, "vsync-active-high");
>> -
>> -	dp_video_config->interlaced =
>> -		of_property_read_bool(dp_node, "interlaced");
>> -
>> -	if (of_property_read_u32(dp_node, "samsung,color-space",
>> -				 &dp_video_config->color_space)) {
>> -		dev_err(dev, "failed to get color-space\n");
>> -		return ERR_PTR(-EINVAL);
>> -	}
>> -
>> -	if (of_property_read_u32(dp_node, "samsung,dynamic-range",
>> -				 &dp_video_config->dynamic_range)) {
>> -		dev_err(dev, "failed to get dynamic-range\n");
>> -		return ERR_PTR(-EINVAL);
>> -	}
>> -
>> -	if (of_property_read_u32(dp_node, "samsung,ycbcr-coeff",
>> -				 &dp_video_config->ycbcr_coeff)) {
>> -		dev_err(dev, "failed to get ycbcr-coeff\n");
>> -		return ERR_PTR(-EINVAL);
>> -	}
>> -
>> -	if (of_property_read_u32(dp_node, "samsung,color-depth",
>> -				 &dp_video_config->color_depth)) {
>> -		dev_err(dev, "failed to get color-depth\n");
>> -		return ERR_PTR(-EINVAL);
>> -	}
>> +	struct device_node *dp_node = dp->dev->of_node;
>> +	struct video_info *video_info = &dp->video_info
>>   
>>   	if (of_property_read_u32(dp_node, "samsung,link-rate",
>> -				 &dp_video_config->link_rate)) {
>> +				 &video_info->link_rate)) {
>>   		dev_err(dev, "failed to get link-rate\n");
>> -		return ERR_PTR(-EINVAL);
>> +		return -EINVAL;
>>   	}
>>   
>>   	if (of_property_read_u32(dp_node, "samsung,lane-count",
>> -				 &dp_video_config->lane_count)) {
>> +				 &video_info->lane_count)) {
>>   		dev_err(dev, "failed to get lane-count\n");
>> -		return ERR_PTR(-EINVAL);
>> +		return -EINVAL;
>>   	}
>>   
>> -	return dp_video_config;
>> +	return 0;
>>   }
>>   
>>   int analogix_dp_bind(struct device *dev, struct drm_device *drm_dev,
>> @@ -1158,9 +1200,9 @@ int analogix_dp_bind(struct device *dev, struct drm_device *drm_dev,
>>   	 */
>>   	dp->plat_data = plat_data;
>>   
>> -	dp->video_info = analogix_dp_dt_parse_pdata(&pdev->dev);
>> -	if (IS_ERR(dp->video_info))
>> -		return PTR_ERR(dp->video_info);
>> +	ret = analogix_dp_dt_parse_pdata(dp);
>> +	if (ret)
>> +		return ret;
>>   
>>   	dp->phy = devm_phy_get(dp->dev, "dp");
>>   	if (IS_ERR(dp->phy)) {
>> diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h
>> index 9a90a18..730486d 100644
>> --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h
>> +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h
>> @@ -120,9 +120,9 @@ enum dp_irq_type {
>>   struct video_info {
>>   	char *name;
>>   
>> -	bool h_sync_polarity;
>> -	bool v_sync_polarity;
>> -	bool interlaced;
>> +	u32 h_sync_polarity;
>> +	u32 v_sync_polarity;
>> +	u32 interlaced;
>>   
>>   	enum color_space color_space;
>>   	enum dynamic_range dynamic_range;
>> @@ -154,7 +154,7 @@ struct analogix_dp_device {
>>   	unsigned int		irq;
>>   	void __iomem		*reg_base;
>>   
>> -	struct video_info	*video_info;
>> +	struct video_info	video_info;
>>   	struct link_train	link_train;
>>   	struct work_struct	hotplug_work;
>>   	struct phy		*phy;
>> diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c
>> index a388c0a..861097a 100644
>> --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c
>> +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c
>> @@ -1084,15 +1084,15 @@ void analogix_dp_set_video_color_format(struct analogix_dp_device *dp)
>>   	u32 reg;
>>   
>>   	/* Configure the input color depth, color space, dynamic range */
>> -	reg = (dp->video_info->dynamic_range << IN_D_RANGE_SHIFT) |
>> -		(dp->video_info->color_depth << IN_BPC_SHIFT) |
>> -		(dp->video_info->color_space << IN_COLOR_F_SHIFT);
>> +	reg = (dp->video_info.dynamic_range << IN_D_RANGE_SHIFT) |
>> +		(dp->video_info.color_depth << IN_BPC_SHIFT) |
>> +		(dp->video_info.color_space << IN_COLOR_F_SHIFT);
>>   	writel(reg, dp->reg_base + ANALOGIX_DP_VIDEO_CTL_2);
>>   
>>   	/* Set Input Color YCbCr Coefficients to ITU601 or ITU709 */
>>   	reg = readl(dp->reg_base + ANALOGIX_DP_VIDEO_CTL_3);
>>   	reg &= ~IN_YC_COEFFI_MASK;
>> -	if (dp->video_info->ycbcr_coeff)
>> +	if (dp->video_info.ycbcr_coeff)
>>   		reg |= IN_YC_COEFFI_ITU709;
>>   	else
>>   		reg |= IN_YC_COEFFI_ITU601;
>> @@ -1229,17 +1229,17 @@ void analogix_dp_config_video_slave_mode(struct analogix_dp_device *dp)
>>   
>>   	reg = readl(dp->reg_base + ANALOGIX_DP_VIDEO_CTL_10);
>>   	reg &= ~INTERACE_SCAN_CFG;
>> -	reg |= (dp->video_info->interlaced << 2);
>> +	reg |= (dp->video_info.interlaced << 2);
>>   	writel(reg, dp->reg_base + ANALOGIX_DP_VIDEO_CTL_10);
>>   
>>   	reg = readl(dp->reg_base + ANALOGIX_DP_VIDEO_CTL_10);
>>   	reg &= ~VSYNC_POLARITY_CFG;
>> -	reg |= (dp->video_info->v_sync_polarity << 1);
>> +	reg |= (dp->video_info.v_sync_polarity << 1);
>>   	writel(reg, dp->reg_base + ANALOGIX_DP_VIDEO_CTL_10);
>>   
>>   	reg = readl(dp->reg_base + ANALOGIX_DP_VIDEO_CTL_10);
>>   	reg &= ~HSYNC_POLARITY_CFG;
>> -	reg |= (dp->video_info->h_sync_polarity << 0);
>> +	reg |= (dp->video_info.h_sync_polarity << 0);
>>   	writel(reg, dp->reg_base + ANALOGIX_DP_VIDEO_CTL_10);
>>   
>>   	reg = AUDIO_MODE_SPDIF_MODE | VIDEO_MODE_SLAVE_MODE;
>>
>
>
>


[-- Attachment #1.2: Type: text/html, Size: 15579 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2015-09-30  7:19 UTC|newest]

Thread overview: 370+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-01  5:46 [PATCH v4 0/16] Add Analogix Core Display Port Driver Yakir Yang
2015-09-01  5:46 ` Yakir Yang
2015-09-01  5:46 ` [PATCH v4 01/16] drm: exynos/dp: fix code style Yakir Yang
2015-09-01  5:46   ` Yakir Yang
2015-09-03  0:21   ` Krzysztof Kozlowski
2015-09-03  0:21     ` Krzysztof Kozlowski
2015-09-03  5:04     ` Yakir Yang
2015-09-03  5:04       ` Yakir Yang
2015-09-03  5:08       ` Krzysztof Kozlowski
2015-09-03  5:08         ` Krzysztof Kozlowski
2015-09-03  5:33         ` Yakir Yang
2015-09-03  5:33           ` Yakir Yang
2015-09-03  5:57           ` Joe Perches
2015-09-03  5:57             ` Joe Perches
2015-09-03  5:57             ` Joe Perches
2015-09-06  1:33             ` Yakir Yang
2015-09-06  1:33               ` Yakir Yang
2015-09-06  1:33               ` Yakir Yang
2015-09-01  5:49 ` [PATCH v4 02/16] drm: exynos/dp: convert to drm bridge mode Yakir Yang
2015-09-01  5:49   ` Yakir Yang
2015-09-01  5:49 ` [PATCH v4 03/16] drm: bridge: analogix/dp: split exynos dp driver to bridge dir Yakir Yang
2015-09-01  5:49   ` Yakir Yang
2015-09-01 20:46   ` Heiko Stuebner
2015-09-01 20:46     ` Heiko Stuebner
2015-09-01 20:46     ` Heiko Stuebner
2015-09-02  1:45     ` Yakir Yang
2015-09-02  1:45       ` Yakir Yang
2015-09-04 21:06     ` Rob Herring
2015-09-04 21:06       ` Rob Herring
2015-09-04 21:06       ` Rob Herring
2015-09-04 21:29       ` Heiko Stuebner
2015-09-04 21:29         ` Heiko Stuebner
2015-09-04 21:29         ` Heiko Stuebner
2015-09-07  8:11         ` Thierry Reding
2015-09-07  8:11           ` Thierry Reding
2015-09-07  8:11           ` Thierry Reding
2015-09-02 14:50   ` Emil Velikov
2015-09-02 14:50     ` Emil Velikov
2015-09-02 14:50     ` Emil Velikov
2015-09-03  3:55     ` Yakir Yang
2015-09-03  3:55       ` Yakir Yang
2015-09-03  3:55       ` Yakir Yang
2015-09-03  0:58   ` Krzysztof Kozlowski
2015-09-03  0:58     ` Krzysztof Kozlowski
2015-09-03  5:30     ` Yakir Yang
2015-09-03  5:30       ` Yakir Yang
2015-09-04  0:41       ` Krzysztof Kozlowski
2015-09-04  0:41         ` Krzysztof Kozlowski
2015-09-06  7:49         ` Yakir Yang
2015-09-06  7:49           ` Yakir Yang
2015-09-07  0:22           ` Krzysztof Kozlowski
2015-09-07  0:22             ` Krzysztof Kozlowski
2015-09-07  0:22             ` Krzysztof Kozlowski
2015-09-07  2:27             ` Yakir Yang
2015-09-07  2:27               ` Yakir Yang
2015-09-01  5:52 ` [PATCH v4 04/16] drm: bridge: analogix/dp: remove duplicate configuration of link rate and link count Yakir Yang
2015-09-01  5:52   ` Yakir Yang
2015-09-01  5:55 ` [PATCH v4 05/16] drm: bridge: analogix/dp: dynamic parse sync_pol & interlace & colorimetry Yakir Yang
2015-09-01  5:55   ` Yakir Yang
2015-09-03  8:04   ` Krzysztof Kozlowski
2015-09-03  8:04     ` Krzysztof Kozlowski
2015-09-06  2:00     ` Yakir Yang
2015-09-06  2:00       ` Yakir Yang
2015-09-06  2:00       ` Yakir Yang
2015-09-01  5:58 ` [PATCH v4 06/16] Documentation: drm/bridge: add document for analogix_dp Yakir Yang
2015-09-01  5:58   ` Yakir Yang
2015-09-01  6:01 ` [PATCH v4 07/16] ARM: dts: exynos/dp: remove some properties that deprecated by analogix_dp driver Yakir Yang
2015-09-01  6:01   ` Yakir Yang
2015-09-03  0:01   ` Krzysztof Kozlowski
2015-09-03  0:01     ` Krzysztof Kozlowski
2015-09-03  4:51     ` Yakir Yang
2015-09-01  6:01 ` [PATCH v4 08/16] drm: rockchip/dp: add rockchip platform dp driver Yakir Yang
2015-09-01  6:01   ` Yakir Yang
2015-09-01  6:01   ` Yakir Yang
2015-09-01 14:24   ` Heiko Stuebner
2015-09-01 14:24     ` Heiko Stuebner
2015-09-01 14:24     ` Heiko Stuebner
2015-09-01 14:48     ` Yakir Yang
2015-09-01 14:48       ` Yakir Yang
2015-09-01 21:00   ` Heiko Stuebner
2015-09-01 21:00     ` Heiko Stuebner
2015-09-01 21:00     ` Heiko Stuebner
2015-09-02  1:52     ` Yakir Yang
2015-09-02  1:52       ` Yakir Yang
2015-09-01  6:01 ` [PATCH v4 09/16] drm: rockchip: add bpc and color mode setting Yakir Yang
2015-09-01  6:01   ` Yakir Yang
2015-09-01  6:01   ` Yakir Yang
2015-09-01 21:00   ` Heiko Stuebner
2015-09-01 21:00     ` Heiko Stuebner
2015-09-01 21:00     ` Heiko Stuebner
2015-09-02  2:06     ` Yakir Yang
2015-09-02  2:06       ` Yakir Yang
2015-09-02  8:34       ` Thierry Reding
2015-09-02  8:34         ` Thierry Reding
2015-09-02 10:02         ` Yakir Yang
2015-09-02 10:02           ` Yakir Yang
2015-09-03  8:38           ` Thierry Reding
2015-09-03  8:38             ` Thierry Reding
2015-09-06  2:06             ` Yakir Yang
2015-09-06  2:06               ` Yakir Yang
2015-09-01  6:04 ` [PATCH v4 10/16] phy: Add driver for rockchip Display Port PHY Yakir Yang
2015-09-01  6:04   ` Yakir Yang
2015-09-01  6:04   ` Yakir Yang
2015-09-01 16:51   ` Heiko Stuebner
2015-09-01 16:51     ` Heiko Stuebner
2015-09-01 16:51     ` Heiko Stuebner
2015-09-01 20:58     ` Heiko Stuebner
2015-09-01 20:58       ` Heiko Stuebner
2015-09-01 20:58       ` Heiko Stuebner
2015-09-02  1:46       ` Yakir Yang
2015-09-02  1:46         ` Yakir Yang
2015-09-02  1:02     ` Yakir Yang
2015-09-02  1:02       ` Yakir Yang
2015-09-02 13:27   ` Rob Herring
2015-09-02 13:27     ` Rob Herring
2015-09-02 13:27     ` Rob Herring
2015-09-03  3:25     ` Yakir Yang
2015-09-03  3:25       ` Yakir Yang
2015-09-03  3:25       ` Yakir Yang
2015-09-03 13:52       ` Heiko Stuebner
2015-09-03 13:52         ` Heiko Stuebner
2015-09-03 13:52         ` Heiko Stuebner
2015-09-06  4:09         ` Yakir Yang
2015-09-06  4:09           ` Yakir Yang
2015-09-01  6:07 ` [PATCH v4 11/16] drm: bridge: analogix/dp: add platform device type support Yakir Yang
2015-09-01  6:07   ` Yakir Yang
2015-09-04  0:36   ` Krzysztof Kozlowski
2015-09-04  0:36     ` Krzysztof Kozlowski
2015-09-06  4:07     ` Yakir Yang
2015-09-06  4:07       ` Yakir Yang
2015-09-06 23:55       ` Krzysztof Kozlowski
2015-09-06 23:55         ` Krzysztof Kozlowski
2015-09-07  1:47         ` Yakir Yang
2015-09-01  6:09 ` [PATCH v4 12/16] drm: bridge: analogix/dp: add some rk3288 special registers setting Yakir Yang
2015-09-01  6:09   ` Yakir Yang
2015-09-01  6:11 ` [PATCH v4 13/16] drm: bridge: analogix/dp: add max link rate and lane count limit for RK3288 Yakir Yang
2015-09-01  6:11   ` Yakir Yang
2015-09-01  6:14 ` [PATCH v4 14/16] drm: bridge: analogix/dp: try force hpd after plug in lookup failed Yakir Yang
2015-09-01  6:14   ` Yakir Yang
2015-09-02 20:17   ` Rob Herring
2015-09-02 20:17     ` Rob Herring
2015-09-02 20:17     ` Rob Herring
2015-09-03  4:27     ` Yakir Yang
2015-09-03  4:27       ` Yakir Yang
2015-09-03  4:27       ` Yakir Yang
2015-09-03  9:04       ` Thierry Reding
2015-09-03  9:04         ` Thierry Reding
2015-09-03  9:04         ` Thierry Reding
2015-09-04 10:20         ` Russell King - ARM Linux
2015-09-04 10:20           ` Russell King - ARM Linux
2015-09-04 10:20           ` Russell King - ARM Linux
2015-09-07  9:01           ` Thierry Reding
2015-09-07  9:01             ` Thierry Reding
2015-09-07  9:01             ` Thierry Reding
2015-09-06  3:59         ` Yakir Yang
2015-09-06  3:59           ` Yakir Yang
2015-09-07  8:20           ` Thierry Reding
2015-09-07  8:20             ` Thierry Reding
2015-09-07  8:20             ` Thierry Reding
2015-09-21  9:10             ` Yakir Yang
2015-09-04 21:46       ` Rob Herring
2015-09-04 21:46         ` Rob Herring
2015-09-04 21:46         ` Rob Herring
2015-09-06  8:20         ` Yakir Yang
2015-09-06  8:20           ` Yakir Yang
2015-09-06  8:20           ` Yakir Yang
2015-09-07  8:39           ` Thierry Reding
2015-09-07  8:39             ` Thierry Reding
2015-09-07  8:39             ` Thierry Reding
2015-09-03  8:47     ` Thierry Reding
2015-09-03  8:47       ` Thierry Reding
2015-09-03  8:47       ` Thierry Reding
2015-09-03 21:55       ` Rob Herring
2015-09-03 21:55         ` Rob Herring
2015-09-03 21:55         ` Rob Herring
2015-09-04 10:01         ` Thierry Reding
2015-09-04 10:01           ` Thierry Reding
2015-09-04 10:01           ` Thierry Reding
2015-09-01  6:17 ` [PATCH v4 15/16] drm: bridge: analogix/dp: move hpd detect to connector detect function Yakir Yang
2015-09-01  6:17   ` Yakir Yang
2015-09-01  6:20 ` [PATCH v4 16/16] drm: bridge: analogix/dp: add edid modes parse in get_modes method Yakir Yang
2015-09-01  6:20   ` Yakir Yang
2015-09-01  6:20   ` Yakir Yang
2015-09-01 21:47 ` [PATCH v4 0/16] Add Analogix Core Display Port Driver Heiko Stuebner
2015-09-01 21:47   ` Heiko Stuebner
2015-09-01 21:47   ` Heiko Stuebner
2015-09-02  2:15   ` Yakir Yang
2015-09-02  2:15     ` Yakir Yang
2015-09-21  8:45     ` Yakir Yang
2015-09-21  9:15       ` Thierry Reding
2015-09-21  9:15         ` Thierry Reding
2015-09-21 10:27         ` Yakir Yang
2015-09-21 10:27           ` Yakir Yang
2015-09-21 11:22           ` Thierry Reding
2015-09-21 11:22             ` Thierry Reding
2015-09-21 11:43             ` Yakir Yang
2015-09-22  7:20 ` [PATCH v5 0/17] " Yakir Yang
2015-09-22  7:20   ` Yakir Yang
2015-09-22  7:26   ` [PATCH v5 01/17] drm: exynos: dp: convert to drm bridge mode Yakir Yang
2015-09-22  7:26     ` Yakir Yang
2015-09-22  7:29   ` [PATCH v5 02/17] drm: bridge: analogix/dp: split exynos dp driver to bridge directory Yakir Yang
2015-09-22  7:29     ` Yakir Yang
2015-09-30  5:17     ` Krzysztof Kozlowski
2015-09-30  5:17       ` Krzysztof Kozlowski
2015-09-30  6:48       ` Yakir Yang
2015-09-30  6:48         ` Yakir Yang
2015-09-30  6:48         ` Yakir Yang
2015-09-22  7:34   ` [PATCH v5 03/17] drm: bridge: analogix/dp: fix some obvious code style Yakir Yang
2015-09-22  7:34     ` Yakir Yang
2015-09-30  5:22     ` Krzysztof Kozlowski
2015-09-30  5:22       ` Krzysztof Kozlowski
2015-09-30  6:52       ` Yakir Yang
2015-09-30  6:52         ` Yakir Yang
2015-09-22  7:35   ` [PATCH v5 04/17] drm: bridge: analogix/dp: remove duplicate configuration of link rate and link count Yakir Yang
2015-09-22  7:35     ` Yakir Yang
2015-09-22  7:35     ` Yakir Yang
2015-09-22  7:37   ` [PATCH v5 05/17] drm: bridge: analogix/dp: dynamic parse sync_pol & interlace & dynamic_range Yakir Yang
2015-09-22  7:37     ` Yakir Yang
2015-09-22  7:37     ` Yakir Yang
2015-09-30  5:32     ` Krzysztof Kozlowski
2015-09-30  5:32       ` Krzysztof Kozlowski
2015-09-30  5:32       ` Krzysztof Kozlowski
2015-09-30  7:19       ` Yakir Yang [this message]
2015-09-30  7:34         ` Krzysztof Kozlowski
2015-09-30  7:34           ` Krzysztof Kozlowski
2015-09-30  8:20           ` Yakir Yang
2015-09-30  8:26             ` Krzysztof Kozlowski
2015-09-30  8:26               ` Krzysztof Kozlowski
2015-09-30  8:26               ` Krzysztof Kozlowski
2015-09-30  9:39               ` Yakir Yang
2015-09-30  9:39                 ` Yakir Yang
2015-09-22  7:40   ` [PATCH v5 06/17] Documentation: drm/bridge: add document for analogix_dp Yakir Yang
2015-09-22  7:40     ` Yakir Yang
2015-09-22  7:43   ` [PATCH v5 07/17] ARM: dts: exynos/dp: remove some properties that deprecated by analogix_dp driver Yakir Yang
2015-09-22  7:43     ` Yakir Yang
2015-09-30  5:39     ` Krzysztof Kozlowski
2015-09-30  5:39       ` Krzysztof Kozlowski
2015-09-30  7:20       ` Yakir Yang
2015-09-30  7:20         ` Yakir Yang
2015-09-30  7:20         ` Yakir Yang
2015-09-22  7:45   ` [PATCH v5 08/17] drm: rockchip: dp: add rockchip platform dp driver Yakir Yang
2015-09-22  7:45     ` Yakir Yang
2015-09-22  7:48   ` [PATCH v5 09/17] Documentation: drm/bridge: add document for analogix_dp Yakir Yang
2015-09-22  7:48     ` Yakir Yang
2015-09-22  7:48   ` [PATCH v5 10/17] phy: Add driver for rockchip Display Port PHY Yakir Yang
2015-09-22  7:48     ` Yakir Yang
2015-09-22  7:51   ` [PATCH v5 11/17] Documentation: phy: add document for rockchip dp phy Yakir Yang
2015-09-22  7:51     ` Yakir Yang
2015-09-22  7:55   ` [PATCH v5 12/17] drm: rockchip: vop: add bpc and color mode setting Yakir Yang
2015-09-22  7:55     ` Yakir Yang
2015-09-22  7:55     ` Yakir Yang
2015-09-22  7:57   ` [PATCH v5 13/17] drm: bridge: analogix/dp: add some rk3288 special registers setting Yakir Yang
2015-09-22  7:57     ` Yakir Yang
2015-09-22  8:00   ` [PATCH v5 14/17] drm: bridge: analogix/dp: add max link rate and lane count limit for RK3288 Yakir Yang
2015-09-22  8:00     ` Yakir Yang
2015-09-22  8:02   ` [PATCH v5 15/17] drm: bridge: analogix/dp: try force hpd after plug in lookup failed Yakir Yang
2015-09-22  8:02     ` Yakir Yang
2015-09-22  8:05   ` [PATCH v5 16/17] drm: bridge: analogix/dp: move hpd detect to connector detect function Yakir Yang
2015-09-22  8:05     ` Yakir Yang
2015-09-22  8:05     ` Yakir Yang
2015-09-22  8:07   ` [PATCH v5 17/17] drm: bridge: analogix/dp: add edid modes parse in get_modes method Yakir Yang
2015-09-22  8:07     ` Yakir Yang
2015-09-22  8:07     ` Yakir Yang
2015-10-07  6:25   ` [PATCH v5 0/17] Add Analogix Core Display Port Driver Yakir Yang
2015-10-07  6:25     ` Yakir Yang
2015-10-07  8:46     ` Javier Martinez Canillas
2015-10-07  8:46       ` Javier Martinez Canillas
2015-10-07  9:02       ` Yakir Yang
2015-10-07  9:02         ` Yakir Yang
2015-10-07  9:26         ` Javier Martinez Canillas
2015-10-07  9:26           ` Javier Martinez Canillas
2015-10-07 11:05           ` Yakir Yang
2015-10-07 11:25             ` Javier Martinez Canillas
2015-10-07 11:25               ` Javier Martinez Canillas
2015-10-08  0:40               ` Yakir Yang
2015-10-08  0:40                 ` Yakir Yang
2015-10-10 14:31                 ` Yakir Yang
2015-10-10 14:31                   ` Yakir Yang
2015-10-10 14:31                   ` Yakir Yang
2015-10-13  9:21                   ` Javier Martinez Canillas
2015-10-13  9:21                     ` Javier Martinez Canillas
2015-10-13  9:21                     ` Javier Martinez Canillas
2015-10-13 13:50                     ` Yakir Yang
2015-10-13 13:50                       ` Yakir Yang
2015-10-14  8:18                       ` Javier Martinez Canillas
2015-10-14  8:18                         ` Javier Martinez Canillas
2015-10-14  8:18                         ` Javier Martinez Canillas
2015-10-10 15:35 ` [PATCH v6 " Yakir Yang
2015-10-10 15:35   ` Yakir Yang
2015-10-10 15:38   ` [PATCH v6 01/17] drm: exynos: dp: convert to drm bridge mode Yakir Yang
2015-10-10 15:38     ` Yakir Yang
2015-10-10 15:39   ` [PATCH v6 02/17] drm: bridge: analogix/dp: split exynos dp driver to bridge directory Yakir Yang
2015-10-10 15:39     ` Yakir Yang
2015-10-10 15:41   ` [PATCH v6 03/17] drm: bridge: analogix/dp: fix some obvious code style Yakir Yang
2015-10-10 15:41     ` Yakir Yang
2015-10-10 15:43   ` [PATCH v6 04/17] drm: bridge: analogix/dp: remove duplicate configuration of link rate and link count Yakir Yang
2015-10-10 15:43     ` Yakir Yang
2015-10-10 15:43     ` Yakir Yang
2015-10-10 15:46   ` [PATCH v6 05/17] drm: bridge: analogix/dp: dynamic parse sync_pol & interlace & dynamic_range Yakir Yang
2015-10-10 15:46     ` Yakir Yang
2015-10-12  0:37     ` Yakir Yang
2015-10-12  0:37       ` Yakir Yang
2015-10-12  0:49       ` Krzysztof Kozlowski
2015-10-12  0:49         ` Krzysztof Kozlowski
2015-10-12  0:49         ` Krzysztof Kozlowski
2015-10-12  2:43         ` Yakir Yang
2015-10-12  2:43           ` Yakir Yang
2015-10-12  3:51           ` Krzysztof Kozlowski
2015-10-12  3:51             ` Krzysztof Kozlowski
2015-10-12  4:09             ` Yakir Yang
2015-10-12  4:09               ` Yakir Yang
2015-10-12  4:09               ` Yakir Yang
2015-10-12  4:16               ` Krzysztof Kozlowski
2015-10-12  4:16                 ` Krzysztof Kozlowski
2015-10-10 15:49   ` [PATCH v6 06/17] Documentation: drm/bridge: add document for analogix_dp Yakir Yang
2015-10-10 15:49     ` Yakir Yang
2015-10-10 15:49   ` [PATCH v6 07/17] ARM: dts: exynos/dp: remove some properties that deprecated by analogix_dp driver Yakir Yang
2015-10-10 15:49     ` Yakir Yang
2015-10-10 15:51   ` [PATCH v6 08/17] drm: rockchip: dp: add rockchip platform dp driver Yakir Yang
2015-10-10 15:51     ` Yakir Yang
2015-10-10 15:53   ` [PATCH v6 09/17] Documentation: drm/bridge: add document for analogix_dp Yakir Yang
2015-10-10 15:53     ` Yakir Yang
2015-10-10 15:53     ` Yakir Yang
2015-10-10 15:55   ` [PATCH v6 10/17] phy: Add driver for rockchip Display Port PHY Yakir Yang
2015-10-10 15:55     ` Yakir Yang
2015-10-12 15:02     ` Kishon Vijay Abraham I
2015-10-12 15:02       ` Kishon Vijay Abraham I
2015-10-12 15:02       ` Kishon Vijay Abraham I
2015-10-12 16:18       ` Heiko Stübner
2015-10-12 16:18         ` Heiko Stübner
2015-10-12 16:18         ` Heiko Stübner
2015-10-13  1:20       ` Yakir Yang
2015-10-13  1:20         ` Yakir Yang
2015-10-10 15:58   ` [PATCH v6 11/17] Documentation: phy: add document for rockchip dp phy Yakir Yang
2015-10-10 15:58     ` Yakir Yang
2015-10-12 22:28     ` Kishon Vijay Abraham I
2015-10-12 22:28       ` Kishon Vijay Abraham I
2015-10-12 22:28       ` Kishon Vijay Abraham I
2015-10-13  1:21       ` Yakir Yang
2015-10-13  1:21         ` Yakir Yang
2015-10-10 16:00   ` [PATCH v6 12/17] drm: rockchip: vop: add bpc and color mode setting Yakir Yang
2015-10-10 16:00     ` Yakir Yang
2015-10-10 16:05   ` [PATCH v6 13/17] drm: bridge: analogix/dp: add some rk3288 special registers setting Yakir Yang
2015-10-10 16:05     ` Yakir Yang
2015-10-10 16:05     ` Yakir Yang
2015-10-10 16:05   ` [PATCH v6 14/17] drm: bridge: analogix/dp: add max link rate and lane count limit for RK3288 Yakir Yang
2015-10-10 16:05     ` Yakir Yang
2015-10-10 16:05   ` [PATCH v6 15/17] drm: bridge: analogix/dp: try force hpd after plug in lookup failed Yakir Yang
2015-10-10 16:05     ` Yakir Yang
2015-10-10 16:05   ` [PATCH v6 16/17] drm: bridge: analogix/dp: move hpd detect to connector detect function Yakir Yang
2015-10-10 16:05     ` Yakir Yang
2015-10-10 16:06   ` [PATCH v6 17/17] drm: bridge: analogix/dp: add edid modes parse in get_modes method Yakir Yang
2015-10-10 16:06     ` Yakir Yang
2015-10-12  4:29   ` [PATCH v7 05/17] drm: bridge: analogix/dp: dynamic parse sync_pol & interlace & dynamic_range Yakir Yang
2015-10-12  4:29     ` Yakir Yang
2015-10-12  6:54     ` Krzysztof Kozlowski
2015-10-12  6:54       ` Krzysztof Kozlowski
2015-10-12  7:20       ` Yakir Yang
2015-10-12  7:20         ` Yakir Yang
2015-10-12  7:20         ` Yakir Yang
2015-10-19 10:40   ` [PATCH v6 0/17] Add Analogix Core Display Port Driver Javier Martinez Canillas
2015-10-19 10:40     ` Javier Martinez Canillas
2015-10-19 10:40     ` Javier Martinez Canillas
2015-10-20  2:10     ` Yakir Yang
2015-10-20  2:10       ` Yakir Yang
2015-10-20  9:48       ` Javier Martinez Canillas
2015-10-20  9:48         ` Javier Martinez Canillas
2015-10-20  9:48         ` Javier Martinez Canillas
2015-10-20 11:40         ` Yakir Yang
2015-10-20 11:40           ` Yakir Yang

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=560B8CF1.7050102@rock-chips.com \
    --to=ykk@rock-chips.com \
    --cc=a.hajda@samsung.com \
    --cc=ajaynumb@gmail.com \
    --cc=andy.yan@rock-chips.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dianders@chromium.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=emil.l.velikov@gmail.com \
    --cc=galak@codeaurora.org \
    --cc=gustavo.padovan@collabora.co.uk \
    --cc=heiko@sntech.de \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=inki.dae@samsung.com \
    --cc=jingoohan1@gmail.com \
    --cc=joe@perches.com \
    --cc=jy0922.shim@samsung.com \
    --cc=k.kozlowski@samsung.com \
    --cc=kgene@kernel.org \
    --cc=kishon@ti.com \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mark.yao@rock-chips.com \
    --cc=pawel.moll@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=robherring2@gmail.com \
    --cc=sw0312.kim@samsung.com \
    --cc=treding@nvidia.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.