From: Geert Uytterhoeven <geert@linux-m68k.org>
To: Marek Vasut <marex@denx.de>
Cc: "Niklas Söderlund" <niklas.soderlund+renesas@ragnatech.se>,
linux-arm-kernel@lists.infradead.org, andrew@lunn.ch,
kernel@dh-electronics.com, "kernel test robot" <lkp@intel.com>,
"Conor Dooley" <conor+dt@kernel.org>,
"Khuong Dinh" <khuong@os.amperecomputing.com>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Magnus Damm" <magnus.damm@gmail.com>,
"Rob Herring" <robh@kernel.org>,
devicetree@vger.kernel.org, linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH 2/2] arm64: dts: renesas: Drop ethernet-phy-ieee802.3-c22 from PHY compatible string on all RZ boards
Date: Mon, 8 Jul 2024 09:09:12 +0200 [thread overview]
Message-ID: <CAMuHMdUtAU0uyXYK_FzHW2vMBwG6WEGNXgJALceCVvvr4DCVbw@mail.gmail.com> (raw)
In-Reply-To: <b9c2abc3-cc01-4ac7-9e42-c9ce1db64eba@denx.de>
Hi Marek,
On Fri, Jul 5, 2024 at 11:50 PM Marek Vasut <marex@denx.de> wrote:
> On 7/3/24 10:24 AM, Geert Uytterhoeven wrote:
> >>> What about moving the PHYs inside an mdio subnode, and removing the
> >>> compatible properties instead? That would protect against different
> >>> board revisions using different PHYs or PHY revisions.
> >>>
> >>> According to Niklas[1], using an mdio subnode cancels the original
> >>> reason (failure to identify the PHY in reset state after unbind/rebind
> >>> or kexec) for adding the compatible values[2].
> >>
> >> My understanding is that the compatible string is necessary if the PHY
> >> needs clock/reset sequencing of any kind. Without the compatible string,
> >> it is not possible to select the correct PHY driver which would handle
> >> that sequencing according to the PHY requirements. This board here does
> >> use reset-gpio property in the PHY node (it is not visible in this diff
> >> context), so I believe a compatible string should be present here.
> >
> > With the introduction of an mdio subnode, the reset-gpios would move
> > from the PHY node to the mio subnode, cfr. commit b4944dc7b7935a02
> > ("arm64: dts: renesas: white-hawk: ethernet: Describe AVB1 and AVB2")
> > in linux-next.
>
> That's a different use case, that commit uses generic
> "ethernet-phy-ieee802.3-c45" compatible string and the PHY type is
> determined by reading out the PHY ID registers after the reset is released.
>
> This here uses specific compatible string, so the kernel can determine
> the PHY ID from the DT before the reset is released .
I am suggesting removing the specific compatible string here, too,
introducing an mdio subnode, so the kernel can read it from the PHY
ID registers after the reset is released?
> >> What would happen if this board got a revision with another PHY with
> >> different PHY reset sequencing requirements ? The MDIO node level reset
> >> handling might no longer be viable.
> >
> > True. However, please consider these two cases, both assuming
> > reset-gpios is in the MDIO node:
> >
> > 1. The PHY node has a compatible value, and a different PHY is
> > mounted: the new PHY will not work, as the wrong PHY driver
> > is used.
>
> What is the likelihood of such PHY exchange happening with these three
> specific boards ? I think close to none, as that would require a board
> redesign to swap in a different PHY.
I don't know about the likelihood for these boards.
It did happen before on other boards, e.g. commit a0d23b8645b2d577
("arm64: dts: renesas: beacon-renesom: Update Ethernet PHY ID").
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
next prev parent reply other threads:[~2024-07-08 7:09 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-30 3:46 [PATCH 1/2] ARM: dts: renesas: Drop ethernet-phy-ieee802.3-c22 from PHY compatible string on all RZ boards Marek Vasut
2024-06-30 3:46 ` [PATCH 2/2] arm64: " Marek Vasut
2024-07-01 13:29 ` Andrew Lunn
2024-07-02 8:38 ` Geert Uytterhoeven
2024-07-02 20:02 ` Marek Vasut
2024-07-03 8:24 ` Geert Uytterhoeven
2024-07-03 9:36 ` Niklas Söderlund
2024-07-05 21:49 ` Marek Vasut
2024-07-06 8:39 ` Niklas Söderlund
2024-07-08 7:02 ` Geert Uytterhoeven
2024-07-05 21:48 ` Marek Vasut
2024-07-08 7:09 ` Geert Uytterhoeven [this message]
2024-07-09 3:22 ` Marek Vasut
2024-07-09 23:37 ` Adam Ford
2024-07-10 12:02 ` Marek Vasut
2024-07-01 13:26 ` [PATCH 1/2] ARM: " Andrew Lunn
2024-07-01 14:52 ` Geert Uytterhoeven
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=CAMuHMdUtAU0uyXYK_FzHW2vMBwG6WEGNXgJALceCVvvr4DCVbw@mail.gmail.com \
--to=geert@linux-m68k.org \
--cc=andrew@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=kernel@dh-electronics.com \
--cc=khuong@os.amperecomputing.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=lkp@intel.com \
--cc=magnus.damm@gmail.com \
--cc=marex@denx.de \
--cc=niklas.soderlund+renesas@ragnatech.se \
--cc=robh@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).