Re: [PATCH v1] RFC: of: property: fix phy-hanlde issue

From: Marek Szyprowski
Date: Tue Sep 14 2021 - 02:15:23 EST


Hi Saravana,

On 14.09.2021 06:44, Saravana Kannan wrote:
> On Mon, Sep 13, 2021 at 5:54 PM Saravana Kannan <saravanak@xxxxxxxxxx> wrote:
>> On Thu, Sep 9, 2021 at 1:03 AM Marek Szyprowski
>> <m.szyprowski@xxxxxxxxxxx> wrote:
>>> On 08.09.2021 23:58, Saravana Kannan wrote:
>>>> This is a test patch. I'll split it up into multiple commits and clean
>>>> it up once it's shown to help.
>>>>
>>>> Marek, can you please test this and let me know if it helps?
>>> I've just checked and nope, it doesn't help for my case. Ethernet is
>>> still not probed on Amlogic G12A/B SoC based boards. :(
>> Hi Marek,
>>
>> Thanks for testing out the patch. Turns out the issue was a lot more
>> complicated than I thought. Thanks to a bunch of debug logs that Rob
>> provided off-list, I was able to root cause the actual issue.
>>
>> Looks like the problem is cyclic dependency between the mdio-multiplexer and the
>> ethernet:
>> ethmac -(phy-handle)-> external_phy -(parent) ->
>> mdio-multiplexer -(mdio-bus-parent)-> mdio0 -(parent)-> ethmac
>>
>> Relevant parts of the DT combined from multiple files and trimmed and
>> pasted below.
>>
>> If fw_devlink sees a cycle, it'll stop enforcing ordering between all
>> the devices in the cycle since it can't figure out which one of the
>> dependencies isn't real. So, the confusing part was that, when Andrew
>> Lunn gave the patch for adding support for "mdio-bus-parent", that
>> should have allowed fw_devlink to see the cycle and stop enforcing the
>> dependencies. But that didn't happen because of a bug in fw_devlink
>> cycle handling (it worked for most cases, but not for this specific
>> ordering in DT). I'll send out a fix for that soon.
> Here's the fix I promised:
> https://lore.kernel.org/lkml/20210914043928.4066136-2-saravanak@xxxxxxxxxx/
>
>> That combined with
>> Andrew's "mdio-bus-parent" patch should fix things for you.
> Fairly certain the fix above and Andrew's patch should fix it for you
> if you want to test it. Rob already verified a very similar patch for me.

Right. Those both patches finally fixed the ethernet issue. Feel free to
add:

Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>

Best regards

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