From: Andrzej Hajda <a.hajda@samsung.com>
To: Inki Dae <inki.dae@samsung.com>
Cc: Kukjin Kim <kgene.kim@samsung.com>,
Seung-Woo Kim <sw0312.kim@samsung.com>,
open list <linux-kernel@vger.kernel.org>,
"open list:DRM DRIVERS FOR E..."
<dri-devel@lists.freedesktop.org>,
Kyungmin Park <kyungmin.park@samsung.com>,
"moderated list:ARM/S5P EXYNOS AR..."
<linux-samsung-soc@vger.kernel.org>,
m.szyprowski@samsung.com
Subject: Re: [PATCH] drm/exynos: remove explicit encoder/connector de-initialization
Date: Tue, 07 Oct 2014 16:11:23 +0200 [thread overview]
Message-ID: <5433F48B.8060306@samsung.com> (raw)
In-Reply-To: <1411378248-17479-1-git-send-email-a.hajda@samsung.com>
Hi Inki,
Another gently ping :)
Andrzej
On 09/22/2014 11:30 AM, Andrzej Hajda wrote:
> All KMS objects are destroyed by drm_mode_config_cleanup in proper order
> so component drivers should not care about it.
>
> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
> ---
> Hi Inki,
>
> This is another spin-off of exynos_drm tests regarding your
> component support update.
> The patch is based as usual on the latest exynos-drm-next branch.
>
> Regards
> Andrzej
> ---
> drivers/gpu/drm/exynos/exynos_dp_core.c | 5 -----
> drivers/gpu/drm/exynos/exynos_drm_dpi.c | 4 ----
> drivers/gpu/drm/exynos/exynos_drm_dsi.c | 4 ----
> drivers/gpu/drm/exynos/exynos_drm_vidi.c | 3 ---
> drivers/gpu/drm/exynos/exynos_hdmi.c | 6 ------
> 5 files changed, 22 deletions(-)
>
> diff --git a/drivers/gpu/drm/exynos/exynos_dp_core.c b/drivers/gpu/drm/exynos/exynos_dp_core.c
> index cd50ece..6adb1e5 100644
> --- a/drivers/gpu/drm/exynos/exynos_dp_core.c
> +++ b/drivers/gpu/drm/exynos/exynos_dp_core.c
> @@ -1355,13 +1355,8 @@ static void exynos_dp_unbind(struct device *dev, struct device *master,
> void *data)
> {
> struct exynos_drm_display *display = dev_get_drvdata(dev);
> - struct exynos_dp_device *dp = display->ctx;
> - struct drm_encoder *encoder = dp->encoder;
>
> exynos_dp_dpms(display, DRM_MODE_DPMS_OFF);
> -
> - exynos_dp_connector_destroy(&dp->connector);
> - encoder->funcs->destroy(encoder);
> }
>
> static const struct component_ops exynos_dp_ops = {
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c
> index 96c87db..3dc678e 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dpi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c
> @@ -338,14 +338,10 @@ err_del_component:
>
> int exynos_dpi_remove(struct device *dev)
> {
> - struct drm_encoder *encoder = exynos_dpi_display.encoder;
> struct exynos_dpi *ctx = exynos_dpi_display.ctx;
>
> exynos_dpi_dpms(&exynos_dpi_display, DRM_MODE_DPMS_OFF);
>
> - exynos_dpi_connector_destroy(&ctx->connector);
> - encoder->funcs->destroy(encoder);
> -
> if (ctx->panel)
> drm_panel_detach(ctx->panel);
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> index 24741d8..acf7e9e 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> @@ -1660,13 +1660,9 @@ static void exynos_dsi_unbind(struct device *dev, struct device *master,
> void *data)
> {
> struct exynos_dsi *dsi = exynos_dsi_display.ctx;
> - struct drm_encoder *encoder = dsi->encoder;
>
> exynos_dsi_dpms(&exynos_dsi_display, DRM_MODE_DPMS_OFF);
>
> - exynos_dsi_connector_destroy(&dsi->connector);
> - encoder->funcs->destroy(encoder);
> -
> mipi_dsi_host_unregister(&dsi->dsi_host);
> }
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.c b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
> index d565207..9395e85 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_vidi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
> @@ -639,9 +639,6 @@ static int vidi_remove(struct platform_device *pdev)
> return -EINVAL;
> }
>
> - encoder->funcs->destroy(encoder);
> - drm_connector_cleanup(&ctx->connector);
> -
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
> index 7910fb3..563a19e 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmi.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
> @@ -2312,12 +2312,6 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
>
> static void hdmi_unbind(struct device *dev, struct device *master, void *data)
> {
> - struct exynos_drm_display *display = get_hdmi_display(dev);
> - struct drm_encoder *encoder = display->encoder;
> - struct hdmi_context *hdata = display->ctx;
> -
> - hdmi_connector_destroy(&hdata->connector);
> - encoder->funcs->destroy(encoder);
> }
>
> static const struct component_ops hdmi_component_ops = {
WARNING: multiple messages have this Message-ID (diff)
From: Andrzej Hajda <a.hajda@samsung.com>
To: Inki Dae <inki.dae@samsung.com>
Cc: Joonyoung Shim <jy0922.shim@samsung.com>,
Seung-Woo Kim <sw0312.kim@samsung.com>,
Kyungmin Park <kyungmin.park@samsung.com>,
David Airlie <airlied@linux.ie>,
Kukjin Kim <kgene.kim@samsung.com>,
"open list:DRM DRIVERS FOR E..."
<dri-devel@lists.freedesktop.org>,
"moderated list:ARM/S5P EXYNOS AR..."
<linux-samsung-soc@vger.kernel.org>,
open list <linux-kernel@vger.kernel.org>,
m.szyprowski@samsung.com
Subject: Re: [PATCH] drm/exynos: remove explicit encoder/connector de-initialization
Date: Tue, 07 Oct 2014 16:11:23 +0200 [thread overview]
Message-ID: <5433F48B.8060306@samsung.com> (raw)
In-Reply-To: <1411378248-17479-1-git-send-email-a.hajda@samsung.com>
Hi Inki,
Another gently ping :)
Andrzej
On 09/22/2014 11:30 AM, Andrzej Hajda wrote:
> All KMS objects are destroyed by drm_mode_config_cleanup in proper order
> so component drivers should not care about it.
>
> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
> ---
> Hi Inki,
>
> This is another spin-off of exynos_drm tests regarding your
> component support update.
> The patch is based as usual on the latest exynos-drm-next branch.
>
> Regards
> Andrzej
> ---
> drivers/gpu/drm/exynos/exynos_dp_core.c | 5 -----
> drivers/gpu/drm/exynos/exynos_drm_dpi.c | 4 ----
> drivers/gpu/drm/exynos/exynos_drm_dsi.c | 4 ----
> drivers/gpu/drm/exynos/exynos_drm_vidi.c | 3 ---
> drivers/gpu/drm/exynos/exynos_hdmi.c | 6 ------
> 5 files changed, 22 deletions(-)
>
> diff --git a/drivers/gpu/drm/exynos/exynos_dp_core.c b/drivers/gpu/drm/exynos/exynos_dp_core.c
> index cd50ece..6adb1e5 100644
> --- a/drivers/gpu/drm/exynos/exynos_dp_core.c
> +++ b/drivers/gpu/drm/exynos/exynos_dp_core.c
> @@ -1355,13 +1355,8 @@ static void exynos_dp_unbind(struct device *dev, struct device *master,
> void *data)
> {
> struct exynos_drm_display *display = dev_get_drvdata(dev);
> - struct exynos_dp_device *dp = display->ctx;
> - struct drm_encoder *encoder = dp->encoder;
>
> exynos_dp_dpms(display, DRM_MODE_DPMS_OFF);
> -
> - exynos_dp_connector_destroy(&dp->connector);
> - encoder->funcs->destroy(encoder);
> }
>
> static const struct component_ops exynos_dp_ops = {
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c
> index 96c87db..3dc678e 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dpi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c
> @@ -338,14 +338,10 @@ err_del_component:
>
> int exynos_dpi_remove(struct device *dev)
> {
> - struct drm_encoder *encoder = exynos_dpi_display.encoder;
> struct exynos_dpi *ctx = exynos_dpi_display.ctx;
>
> exynos_dpi_dpms(&exynos_dpi_display, DRM_MODE_DPMS_OFF);
>
> - exynos_dpi_connector_destroy(&ctx->connector);
> - encoder->funcs->destroy(encoder);
> -
> if (ctx->panel)
> drm_panel_detach(ctx->panel);
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> index 24741d8..acf7e9e 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> @@ -1660,13 +1660,9 @@ static void exynos_dsi_unbind(struct device *dev, struct device *master,
> void *data)
> {
> struct exynos_dsi *dsi = exynos_dsi_display.ctx;
> - struct drm_encoder *encoder = dsi->encoder;
>
> exynos_dsi_dpms(&exynos_dsi_display, DRM_MODE_DPMS_OFF);
>
> - exynos_dsi_connector_destroy(&dsi->connector);
> - encoder->funcs->destroy(encoder);
> -
> mipi_dsi_host_unregister(&dsi->dsi_host);
> }
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.c b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
> index d565207..9395e85 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_vidi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
> @@ -639,9 +639,6 @@ static int vidi_remove(struct platform_device *pdev)
> return -EINVAL;
> }
>
> - encoder->funcs->destroy(encoder);
> - drm_connector_cleanup(&ctx->connector);
> -
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
> index 7910fb3..563a19e 100644
> --- a/drivers/gpu/drm/exynos/exynos_hdmi.c
> +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
> @@ -2312,12 +2312,6 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
>
> static void hdmi_unbind(struct device *dev, struct device *master, void *data)
> {
> - struct exynos_drm_display *display = get_hdmi_display(dev);
> - struct drm_encoder *encoder = display->encoder;
> - struct hdmi_context *hdata = display->ctx;
> -
> - hdmi_connector_destroy(&hdata->connector);
> - encoder->funcs->destroy(encoder);
> }
>
> static const struct component_ops hdmi_component_ops = {
next prev parent reply other threads:[~2014-10-07 14:11 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-22 9:30 [PATCH] drm/exynos: remove explicit encoder/connector de-initialization Andrzej Hajda
2014-09-22 9:30 ` Andrzej Hajda
2014-10-07 14:11 ` Andrzej Hajda [this message]
2014-10-07 14:11 ` Andrzej Hajda
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=5433F48B.8060306@samsung.com \
--to=a.hajda@samsung.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=inki.dae@samsung.com \
--cc=kgene.kim@samsung.com \
--cc=kyungmin.park@samsung.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=sw0312.kim@samsung.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.