[PATCH v4 14/34] drm/exynos: hdmi: remove the i2c drivers and use devtree

Inki Dae inki.dae at samsung.com
Sun Feb 9 23:30:12 PST 2014


2014-02-08 11:52 GMT+09:00 Tomasz Figa <tomasz.figa at gmail.com>:
> Hi,
>
>
> On 30.01.2014 22:19, Sean Paul wrote:
>>
>> From: Daniel Kurtz <djkurtz at chromium.org>
>>
>> The i2c client was previously being passed into the hdmi driver via a
>> dedicated i2c driver, and then a global variable. This patch removes all
>> of that and just uses the device tree to get the i2c_client. This patch
>> also properly references the client so we don't lose it before we're
>> done with it.
>>
>> Signed-off-by: Daniel Kurtz <djkurtz at chromium.org>
>> [seanpaul changed to phandle lookup instead of using of node name]
>> Signed-off-by: Sean Paul <seanpaul at chromium.org>
>> ---
>>
>> Changes in v2:
>>   - Change include to linux/i2c.h instead of linux/of_i2c.h
>> Changes in v3: None
>> Changes in v4:
>>   - Changed to find phy via phandle instead of by name
>>
>>   .../devicetree/bindings/video/exynos_hdmi.txt      |  5 ++
>>   drivers/gpu/drm/exynos/Makefile                    |  1 -
>>   drivers/gpu/drm/exynos/exynos_ddc.c                | 63
>> ---------------------
>>   drivers/gpu/drm/exynos/exynos_hdmi.c               | 59
>> +++++++++-----------
>>   drivers/gpu/drm/exynos/exynos_hdmi.h               | 23 --------
>>   drivers/gpu/drm/exynos/exynos_hdmiphy.c            | 65
>> ----------------------
>>   6 files changed, 32 insertions(+), 184 deletions(-)
>>   delete mode 100644 drivers/gpu/drm/exynos/exynos_ddc.c
>>   delete mode 100644 drivers/gpu/drm/exynos/exynos_hdmi.h
>>   delete mode 100644 drivers/gpu/drm/exynos/exynos_hdmiphy.c
>>
>> diff --git a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> index 50decf8..f9187a2 100644
>> --- a/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> +++ b/Documentation/devicetree/bindings/video/exynos_hdmi.txt
>> @@ -25,6 +25,9 @@ Required properties:
>>                 sclk_pixel.
>>   - clock-names: aliases as per driver requirements for above clock IDs:
>>         "hdmi", "sclk_hdmi", "sclk_pixel", "sclk_hdmiphy" and "mout_hdmi".
>> +- ddc: phandle to the hdmi ddc node
>> +- phy: phandle to the hdmi phy node
>> +
>
>
> Adding new required properties to an already defined binding is breaking
> backwards compatibility, which is supposed to be preserved, since DT is an
> ABI.

Right, that's a problem. If we use this patch, and  we add additional
codes for these property to hdmi driver, then the existing dtb will be
broken by dt binding fail. However, as long as I know, there is
another case that phy property is used like this way; MIPI-CSI device
node. And also it seems reasonable to add ddc property in similar
reason if we could handle that the existing dt node is deplicated.

So what we could select I think are,
1. to deplicate the existing dt node, and using this patch.
2. or, to separate phy and ddc parts as each module so that each
module can bind device tree. However, this way would make hdmi part of
exynos drm to be complicated because we should resolve probe ordering
issue.

It seems that we need to discuss and make a consensus about this issue.

Tomasz and Sean, please, share your opinion. I tend to proper 1.

Thanks,
Inki Dae

>
> Now, I'm not really a big fan of DT stability, but if we decide to maintain
> it for other Exynos drivers as well (e.g. USB), then we probably should do
> the same here...
>
> Best regards,
> Tomasz
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list