All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrzej Hajda <a.hajda@samsung.com>
To: Inki Dae <inki.dae@samsung.com>,
	airlied@linux.ie, dri-devel@lists.freedesktop.org
Cc: kyungmin.park@samsung.com
Subject: Re: [PATCH v2 0/7] drm/exynos: more cleanup with super device support
Date: Thu, 03 Apr 2014 09:43:46 +0200	[thread overview]
Message-ID: <533D1132.9070004@samsung.com> (raw)
In-Reply-To: <1396355882-17010-1-git-send-email-inki.dae@samsung.com>

Hi Inki,

On 04/01/2014 02:37 PM, Inki Dae wrote:
> This patch series cleans up exynos drm framework and kms sub drivers
> using the component framework[1].

I have tested it on trats platform (fimd + dsi), it works.
However it seems to be suboptimal.
In case of deferred probing of any of components (due to lack of some
resources, ex. clock, regulator, phy), all components
which were already bound are unbound and re-bound later when another
driver is added, this causes multiple unnecessary free/re-allocate cycles.
Maybe I miss something, but I guess registration list(s) + DT super-node
should perform better.

Here is sample log from trats with mipi-phy driver delayed probe:

 binding 11c00000.fimd (ops fimd_component_ops)
 bound 11c00000.fimd (ops fimd_component_ops)
 binding 11c80000.dsi (ops exynos_dsi_component_ops)
 failed to bind 11c80000.dsi (ops exynos_dsi_component_ops): -517
 unbinding 11c00000.fimd (ops fimd_component_ops)
 master bind failed: -517
 binding 11c00000.fimd (ops fimd_component_ops)
 bound 11c00000.fimd (ops fimd_component_ops)
 binding 11c80000.dsi (ops exynos_dsi_component_ops)
 failed to bind 11c80000.dsi (ops exynos_dsi_component_ops): -517
 unbinding 11c00000.fimd (ops fimd_component_ops)
 master bind failed: -517
 binding 11c00000.fimd (ops fimd_component_ops)
 bound 11c00000.fimd (ops fimd_component_ops)
 binding 11c80000.dsi (ops exynos_dsi_component_ops)
 failed to bind 11c80000.dsi (ops exynos_dsi_component_ops): -517
 unbinding 11c00000.fimd (ops fimd_component_ops)
 master bind failed: -517
 binding 11c00000.fimd (ops fimd_component_ops)
 bound 11c00000.fimd (ops fimd_component_ops)
 binding 11c80000.dsi (ops exynos_dsi_component_ops)
 failed to bind 11c80000.dsi (ops exynos_dsi_component_ops): -517
 unbinding 11c00000.fimd (ops fimd_component_ops)
 master bind failed: -517
 binding 11c00000.fimd (ops fimd_component_ops)
 bound 11c00000.fimd (ops fimd_component_ops)
 binding 11c80000.dsi (ops exynos_dsi_component_ops)
 bound 11c80000.dsi (ops exynos_dsi_component_ops)

This log will grow with number of devices probed in-between.

Regards
Andrzej

> 
> And this patch series had been posted for RFC[2].
> 
> Thanks,
> Inki Dae
> 
> [1] http://lists.freedesktop.org/archives/dri-devel/2014-January/051249.html
> [2] http://comments.gmane.org/gmane.comp.video.dri.devel/101200
> 
> 
> Inki Dae (7):
>   drm/exynos: add super device support
>   drm/exynos: dpi: fix hotplug fail issue
>   drm/exynos: register platform driver at each kms sub drivers
>   ARM: dts: exynos4210-universal: add super device node for exynos drm
>   ARM: dts: exynos4210-trats: add super device node for exynos drm
>   ARM: dts: exynos4412-trats2: add super device node for exynos drm
>   exynos/drm: add DT bindings
> 
>  .../bindings/drm/exynos/samsung-exynos-drm.txt     |   32 +++
>  arch/arm/boot/dts/exynos4210-trats.dts             |    5 +
>  arch/arm/boot/dts/exynos4210-universal_c210.dts    |    5 +
>  arch/arm/boot/dts/exynos4412-trats2.dts            |    5 +
>  drivers/gpu/drm/exynos/exynos_dp_core.c            |   46 ++--
>  drivers/gpu/drm/exynos/exynos_drm_core.c           |  216 +++--------------
>  drivers/gpu/drm/exynos/exynos_drm_crtc.c           |   17 ++
>  drivers/gpu/drm/exynos/exynos_drm_crtc.h           |    4 +
>  drivers/gpu/drm/exynos/exynos_drm_dpi.c            |   21 +-
>  drivers/gpu/drm/exynos/exynos_drm_drv.c            |  256 ++++++++------------
>  drivers/gpu/drm/exynos/exynos_drm_drv.h            |   79 +++---
>  drivers/gpu/drm/exynos/exynos_drm_dsi.c            |   39 ++-
>  drivers/gpu/drm/exynos/exynos_drm_fimd.c           |   77 ++++--
>  drivers/gpu/drm/exynos/exynos_drm_vidi.c           |   61 +++--
>  drivers/gpu/drm/exynos/exynos_hdmi.c               |   46 ++--
>  drivers/gpu/drm/exynos/exynos_mixer.c              |   55 ++++-
>  16 files changed, 490 insertions(+), 474 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/drm/exynos/samsung-exynos-drm.txt
> 

  parent reply	other threads:[~2014-04-03  7:43 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-01 12:37 [PATCH v2 0/7] drm/exynos: more cleanup with super device support Inki Dae
2014-04-01 12:37 ` [PATCH v2 1/7] drm/exynos: add " Inki Dae
2014-04-02 14:06   ` Andrzej Hajda
2014-04-03  7:43     ` Inki Dae
2014-04-03  8:36   ` [PATCH v3] " Inki Dae
2014-04-03 11:47     ` [PATCH v4] " Inki Dae
2014-04-03 14:26       ` [PATCH] drm/exynos: separate dpi from fimd Andrzej Hajda
2014-04-03 16:29         ` Inki Dae
2014-04-03 16:35         ` Inki Dae
2014-04-03 17:01           ` Inki Dae
2014-04-04 13:55   ` [PATCH v2 1/7] drm/exynos: add super device support Tomasz Figa
2014-04-04 15:44     ` Inki Dae
2014-04-05 17:32       ` Tomasz Figa
2014-04-05 17:32         ` Tomasz Figa
2014-04-05 18:24         ` Russell King - ARM Linux
2014-04-05 18:24           ` Russell King - ARM Linux
2014-04-05 18:31           ` Tomasz Figa
2014-04-05 18:31             ` Tomasz Figa
2014-04-05 18:52             ` Russell King - ARM Linux
2014-04-05 18:52               ` Russell King - ARM Linux
2014-04-05 19:01               ` Tomasz Figa
2014-04-05 19:01                 ` Tomasz Figa
2014-04-06  4:21             ` Inki Dae
2014-04-06  4:21               ` Inki Dae
2014-04-06  8:47               ` Russell King - ARM Linux
2014-04-06  8:47                 ` Russell King - ARM Linux
2014-04-06  9:38                 ` Inki Dae
2014-04-06  9:38                   ` Inki Dae
2014-04-06  3:15         ` Inki Dae
2014-04-06  3:15           ` Inki Dae
2014-04-07 14:18           ` Andrzej Hajda
2014-04-07 14:18             ` Andrzej Hajda
2014-04-07 14:24             ` Tomasz Figa
2014-04-07 14:24               ` Tomasz Figa
2014-04-07 15:16             ` Inki Dae
2014-04-07 15:16               ` Inki Dae
2014-04-07 15:40               ` Tomasz Figa
2014-04-07 15:40                 ` Tomasz Figa
2014-04-08  8:37                 ` Inki Dae
2014-04-08  8:37                   ` Inki Dae
2014-04-01 12:37 ` [PATCH 2/7] drm/exynos: dpi: fix hotplug fail issue Inki Dae
2014-04-01 12:37 ` [PATCH v2 3/7] drm/exynos: register platform driver at each kms sub drivers Inki Dae
2014-04-01 12:37 ` [PATCH 4/7] ARM: dts: exynos4210-universal: add super device node for exynos drm Inki Dae
2014-04-01 12:38 ` [PATCH 5/7] ARM: dts: exynos4210-trats: " Inki Dae
2014-04-01 12:38 ` [PATCH 6/7] ARM: dts: exynos4412-trats2: " Inki Dae
2014-04-01 12:38 ` [PATCH 7/7] exynos/drm: add DT bindings Inki Dae
2014-04-03  7:43 ` Andrzej Hajda [this message]
  -- strict thread matches above, loose matches on Subject: below --
2014-04-03  9:05 Re: [PATCH v2 0/7] drm/exynos: more cleanup with super device support 대인기
2014-04-03  9:39 ` 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=533D1132.9070004@samsung.com \
    --to=a.hajda@samsung.com \
    --cc=airlied@linux.ie \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=inki.dae@samsung.com \
    --cc=kyungmin.park@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.