All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomasz Figa <t.figa@samsung.com>
To: Inki Dae <inki.dae@samsung.com>,
	airlied@linux.ie, dri-devel@lists.freedesktop.org
Cc: a.hajda@samsung.com, kyungmin.park@samsung.com,
	'Marek Szyprowski' <m.szyprowski@samsung.com>
Subject: Re: [PATCH v2 1/7] drm/exynos: add super device support
Date: Fri, 04 Apr 2014 15:55:18 +0200	[thread overview]
Message-ID: <533EB9C6.80302@samsung.com> (raw)
In-Reply-To: <1396355882-17010-2-git-send-email-inki.dae@samsung.com>

Hi Inki,

On 01.04.2014 14:37, Inki Dae wrote:
> This patch adds super device support to bind sub drivers
> using device tree.
>
> For this, you should add a super device node to each machine dt files
> like belows,
>
> In case of using MIPI-DSI,
> 	display-subsystem {
> 		compatible = "samsung,exynos-display-subsystem";
> 		ports = <&fimd>, <&dsi>;
> 	};
>
> In case of using DisplayPort,
> 	display-subsystem {
> 		compatible = "samsung,exynos-display-subsystem";
> 		ports = <&fimd>, <&dp>;
> 	};
>
> In case of using Parallel panel,
> 	display-subsystem {
> 		compatible = "samsung,exynos-display-subsystem";
> 		ports = <&fimd>;
> 	};
>
> And if you don't add connector device node to ports property,
> default parallel panel driver, exynos_drm_dpi module, will be used.
>
> ports property can have the following device nodes,
> 	fimd, mixer, Image Enhancer, MIPI-DSI, eDP, LVDS Bridge, or HDMI
>
> With this patch, we can resolve the probing order issue without
> some global lists. So this patch also removes the unnecessary lists and
> stuff related to these lists.

I can see several problems with this approach:

1) It breaks compatibility with existing DT. After this patch it is no 
longer possible to use old device trees and get a working DRM. However, 
in my opinion, this requirement can be relaxed if we make sure that any 
users are properly converted.

2) What happens if in Kconfig you disable a driver for a component that 
is listed in supernode? If I'm reading the code correctly, Exynos DRM 
will not register, which is completely wrong. Users should be able to 
select which drivers should be compiled into their kernels.

3) Such approach leads to complete integration of all Exynos DRM 
drivers, without possibility of loading some sub-drivers as modules. I 
know that current driver design doesn't support it either, but if this 
series is claimed to improve things, it should really do so.

4) Exactly the same can be achieved without changing the DT bindings at 
all. In fact even without adding any new single property or node to DT. 
We discussed this with Andrzej and Marek today and came to a solution in 
which just by adding a little bit of code to Exynos DRM subdrivers, you 
could guarantee correct registration of Exynos DRM platform and also get 
rid of #ifdeffery in exynos_drm_drv.c. Andrzej will send an RFC after 
the weekend.

5) This series seems to break DPI display support with runtime PM 
enabled. Universal C210 just hangs on second FIMD probe, after first one 
fails with probe deferral. This needs more investigation, though.

Best regards,
Tomasz

  parent reply	other threads:[~2014-04-04 13:55 UTC|newest]

Thread overview: 47+ 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   ` Tomasz Figa [this message]
2014-04-04 15:44     ` [PATCH v2 1/7] drm/exynos: add super device support 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 ` [PATCH v2 0/7] drm/exynos: more cleanup with super device support 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=533EB9C6.80302@samsung.com \
    --to=t.figa@samsung.com \
    --cc=a.hajda@samsung.com \
    --cc=airlied@linux.ie \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=inki.dae@samsung.com \
    --cc=kyungmin.park@samsung.com \
    --cc=m.szyprowski@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.