[PATCH v4 0/6] drm: exynos: dsi: Convert drm bridge

Marek Szyprowski m.szyprowski at samsung.com
Fri Dec 17 23:16:16 UTC 2021


Hi Jagan,

On 15.12.2021 15:56, Jagan Teki wrote:
> On Wed, Dec 15, 2021 at 7:49 PM Marek Szyprowski
> <m.szyprowski at samsung.com> wrote:
>> On 15.12.2021 13:57, Jagan Teki wrote:
>>> On Wed, Dec 15, 2021 at 5:31 PM Marek Szyprowski
>>> <m.szyprowski at samsung.com> wrote:
>>>> On 15.12.2021 11:15, Jagan Teki wrote:
>>>>> Updated series about drm bridge conversion of exynos dsi.
>>>>> Previous version can be accessible, here [1].
>>>>>
>>>>> Patch 1: connector reset
>>>>>
>>>>> Patch 2: panel_bridge API
>>>>>
>>>>> Patch 3: Bridge conversion
>>>>>
>>>>> Patch 4: Atomic functions
>>>>>
>>>>> Patch 5: atomic_set
>>>>>
>>>>> Patch 6: DSI init in enable
>>>> There is a little progress! :)
>>>>
>>>> Devices with a simple display pipeline (only a DSI panel, like
>>>> Trats/Trats2) works till the last patch. Then, after applying ("[PATCH
>>>> v4 6/6] drm: exynos: dsi: Move DSI init in bridge enable"), I get no
>>>> display at all.
>>>>
>>>> A TM2e board with in-bridge (Exynos MIC) stops displaying anything after
>>>> applying patch "[PATCH v4 2/6] drm: exynos: dsi: Use drm panel_bridge API".
>>>>
>>>> In case of the Arndale board with tc358764 bridge, no much progress. The
>>>> display is broken just after applying the "[PATCH v2] drm: bridge:
>>>> tc358764: Use drm panel_bridge API" patch on top of linux-next.
>>>>
>>>> In all cases the I had "drm: of: Lookup if child node has panel or
>>>> bridge" patch applied.
>>> Just skip the 6/6 for now.
>>>
>>> Apply
>>> - https://protect2.fireeye.com/v1/url?k=a24f3f76-fdd40659-a24eb439-0cc47a31cdf8-97ea12b4c5258d11&q=1&e=37a169bf-7ca5-4362-aad7-486018c7a708&u=https%3A%2F%2Fpatchwork.amarulasolutions.com%2Fpatch%2F1825%2F
>>> - https://protect2.fireeye.com/v1/url?k=a226360f-fdbd0f20-a227bd40-0cc47a31cdf8-ebd66aebee1058d7&q=1&e=37a169bf-7ca5-4362-aad7-486018c7a708&u=https%3A%2F%2Fpatchwork.amarulasolutions.com%2Fpatch%2F1823%2F
>>>
>>> Then apply 1/6 to 5/6.  and update the status?
>> Okay, my fault, I didn't check that case on Arndale.
>>
>> I've checked and indeed, Trats/Trats2 and Arndale works after the above
>> 2 patches AND patches 1-5.
>>
>> The only problem is now on TM2e, which uses Exynos MIC as in-bridge for
>> Exynos DSI:
>>
>> [    4.068866] [drm] Exynos DRM: using 13800000.decon device for DMA
>> mapping operations
>> [    4.069183] exynos-drm exynos-drm: bound 13800000.decon (ops
>> decon_component_ops)
>> [    4.128983] exynos-drm exynos-drm: bound 13880000.decon (ops
>> decon_component_ops)
>> [    4.129261] exynos-drm exynos-drm: bound 13930000.mic (ops
>> exynos_mic_component_ops)
>> [    4.133508] exynos-dsi 13900000.dsi: [drm:exynos_dsi_host_attach]
>> *ERROR* failed to find the bridge: -19
>> [    4.136392] exynos-drm exynos-drm: bound 13900000.dsi (ops
>> exynos_dsi_component_ops)
>> [    4.145499] rc_core: Couldn't load IR keymap rc-cec
>> [    4.145666] Registered IR keymap rc-empty
>> [    4.148402] rc rc0: sii8620 as /devices/virtual/rc/rc0
>> [    4.156051] input: sii8620 as /devices/virtual/rc/rc0/input1
>> [    4.160647] exynos-drm exynos-drm: bound 13970000.hdmi (ops
>> hdmi_component_ops)
>> [    4.169923] exynos-drm exynos-drm: [drm] Cannot find any crtc or sizes
>> [    4.173958] exynos-drm exynos-drm: [drm] Cannot find any crtc or sizes
>> [    4.182304] [drm] Initialized exynos 1.1.0 20180330 for exynos-drm on
>> minor 0
>>
>> The display pipeline for TM2e is:
>>
>> Exynos5433 Decon -> Exynos MIC -> Exynos DSI -> s6e3ha2 DSI panel
> If Trats/Trats2 is working then it has to work. I don't see any
> difference in output pipeline. Can you please share the full log, I
> cannot see host_attach print saying "Attached.."

Well, there is a failure message about the panel:

exynos-dsi 13900000.dsi: [drm:exynos_dsi_host_attach] *ERROR* failed to 
find the bridge: -19

however it looks that something might be broken in dts. The in-bridge 
(Exynos MIC) is on port 0 and the panel is @0, what imho might cause the 
issue.

I've tried to change in in-bridge ('mic_to_dsi') port to 1 in 
exynos5433.dtsi. Then the panel has been attached:

exynos-dsi 13900000.dsi: [drm:exynos_dsi_host_attach] Attached s6e3hf2 
device

but the display is still not working, probably due to lack of proper 
Exynos MIC handling. I will investigate it later and let You know.

Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland



More information about the dri-devel mailing list