[PATCH v2 0/5] Fix the parse_dt of exynos dsi and remove the OF graph

Inki Dae inki.dae at samsung.com
Mon Feb 20 23:24:52 UTC 2017



2017년 02월 20일 17:55에 Krzysztof Kozlowski 이(가) 쓴 글:
> On Mon, Feb 20, 2017 at 10:32 AM, Inki Dae <inki.dae at samsung.com> wrote:
>>
>>
>> 2017년 02월 20일 16:27에 Krzysztof Kozlowski 이(가) 쓴 글:
>>> On Mon, Feb 20, 2017 at 9:07 AM, Inki Dae <inki.dae at samsung.com> wrote:
>>>> Hi Krzysztof,
>>>>
>>>> Can you merge patch 2 and 5 to your tree so that they can go to mainline? Otherwise, I can merge them to my tree if you give me acked-by.
>>>
>>> Hi,
>>>
>>> Hm? Why do you need them to be merged? Do you mean that the first
>>> patch breaks not only ABI but also bisectability? Then this has to be
>>> reworked because:
>>>
>>> 1. The DTS patches cannot go through non-DT tree so no, you cannot
>>> take them into your branch. I will merge them according to point 4
>>> below.
>>> 2. Bisectability has to be preserved.
>>> 3. DTS changes in general should not be a dependency for driver changes.
>>
>> Krzysztof,
>>
>> I know that. I didn't check you gave a comment to Hoegun do rework this patch series. I just checked reviewed-by from Andrzej H. and thought no problem.
>>
>> Ideally you are right. DT changes should be no any dependency of driver changes but now Exynos DT is broken.
> 
> I didn't receive any bug reports that Exynos DT is broken so I am
> quite surprised hearing that. What do you mean by that?

Wrong usage of Display relevant DT ABI is being fixed without the backward compatibility of the DT ABI. This means device driver doesn't consider old DT binding.
So the use of old DTB binary will make kernel booting not to work correctly.

> 
>> So if we have to keep the bisectability between driver and device tree patches - this means that all drivers should always keep the backward compatibility - then the drivers will be messed up.
> 
> No, you are mixing two things. Bisectability is different than
> backward compatibility. For the backward DT ABI compatibility, we
> agreed that in this case it can be dropped. However bisectability is
> something totally different. The DTS changes always go through
> separate branch, so the driver has to be *always* ready for such case
> and should still be fully bisectable. This is a general rule existing

I meant that if this patch series considers old DT binding to keep the bisectability, then this driver would be messed up because the driver should try to bind same properties at different places and one of these two cases should be bound.
So this driver doesn't consider the old DT binding, which means that the old DTB binary isn't compatible with this driver - exynos_drm_dsi.c.

This means if only one side is merged then this driver wouldn't work correctly. 

> for long time and every deviation from the rule is pointed out by
> arm-soc guys. Whenever I accepted breaking of this rule, I had hard
> times with arm-soc so no - I am no longer giving up basic rule just
> because developer might not care.

Understood and reasonable. Seems I just hurried up. For the bisectability, this driver will have a little messed up code temporarily, and this messed up code will be removed after dt change is merged.
This thing was really what I want to avoid - if even the messed up code should be keeped forever for the backward compatibility then it would be really terribble. :(


Do you have a better idea?

> 
> There are many ways to solve the bisectability problem. Recently for
> example Marek found nice way to solve the PMU syscon handle dependency

Thanks for share but this would be a different case.

Thanks,
Inki Dae

> [1]. One can also merge first DTS changes and in next release, merge
> the driver.
> 
>> About this, we had a discussion and I think you agreed,
>> https://patchwork.kernel.org/patch/9477957/
> 
> Again, this discussion was about DT ABI. Not bisectability.
> 
>> Do you want the backward compatibility to be kept always when new dt binding relevant patch - which fixes up the wrong usage of dt binding - is posted?
>> It would be good for the backward compatibility to be kept as long as we can do but there would be several cases to make the driver to be messed up like this patch series.
> 
> Again, DT ABI not bisectability.
> 
> Best regards,
> Krzysztof
> 
> [1] https://git.kernel.org/cgit/linux/kernel/git/krzk/linux.git/commit/?h=for-v4.11/drivers-soc-exynos-pmu-the-joy-never-ends&id=76640b84bd7a9d68c70d8bc8ecd02cdc4bd8855e
> 
> 


More information about the dri-devel mailing list