From: Andrew Lunn <andrew@lunn.ch>
To: Yijie Yang <quic_yijiyang@quicinc.com>
Cc: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Richard Cochran <richardcochran@gmail.com>,
linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [PATCH v2 2/2] arm64: dts: qcom: qcs615-ride: Enable ethernet node
Date: Mon, 9 Dec 2024 04:13:09 +0100 [thread overview]
Message-ID: <4287c838-35b2-45bb-b4a2-e128b55ddbaf@lunn.ch> (raw)
In-Reply-To: <441f37f5-3c33-4c62-b3fe-728b43669e29@quicinc.com>
On Mon, Dec 09, 2024 at 10:11:23AM +0800, Yijie Yang wrote:
>
>
> On 2024-11-29 23:29, Andrew Lunn wrote:
> > > I was mistaken earlier; it is actually the EMAC that will introduce a time
> > > skew by shifting the phase of the clock in 'rgmii' mode.
> >
> > This is fine, but not the normal way we do this. The Linux preference
> > is that the PHY adds the delays. There are a few exceptions, boards
> > which have PHYs which cannot add delays. In that case the MAC adds the
> > delays. But this is pretty unusual.
>
> After testing, it has been observed that modes other than 'rgmii' do not
> function properly due to the current configuration sequence in the driver
> code.
O.K, so now you need to find out why.
It not working probably suggests you are adding double delays, both in
the MAC and the PHY. Where the PHY driver add delays is generally easy
to see in the code. Just search for PHY_INTERFACE_MODE_RGMII_ID. For
the MAC driver you probably need to read the datasheet and find
registers which control the delay.
> > If you decided you want to be unusual and have the MAC add the delays,
> > it should not be hard coded. You need to look at phy-mode. Only add
>
> Are you suggesting that 'rgmii' indicates the delay is introduced by the
> board rather than the EMAC?
Yes.
> But according to the
> Documentation/devicetree/bindings/net/ethernet-controller.yaml, this mode
> explicitly states that 'RX and TX delays are added by the MAC when
> required'. That is indeed my preference.
You need to be careful with context. If the board is not adding
delays, and you pass PHY_INTERFACE_MODE_RGMII to the PHY, the MAC must
be adding the delays, otherwise there will not be any delays, and it
will not work.
> > delays for rgmii-id. And you then need to mask the value passed to the
> > PHY, pass PHY_INTERFACE_MODE_RGMII, not PHY_INTERFACE_MODE_RGMII_ID,
> > so the PHY does not add delays as well.
Andrew
next prev parent reply other threads:[~2024-12-09 3:13 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-18 6:44 [PATCH v2 0/2] Enable ethernet on qcs615 Yijie Yang
2024-11-18 6:44 ` [PATCH v2 1/2] arm64: dts: qcom: qcs615: add ethernet node Yijie Yang
2024-11-18 6:44 ` [PATCH v2 2/2] arm64: dts: qcom: qcs615-ride: Enable " Yijie Yang
2024-11-19 1:27 ` Andrew Lunn
2024-11-19 10:09 ` Yijie Yang
2024-11-22 12:27 ` Konrad Dybcio
2024-11-22 13:19 ` Andrew Lunn
2024-11-27 6:17 ` Yijie Yang
2024-11-27 7:00 ` Yijie Yang
2024-11-29 15:29 ` Andrew Lunn
2024-12-09 2:11 ` Yijie Yang
2024-12-09 3:13 ` Andrew Lunn [this message]
2024-12-10 3:29 ` Yijie Yang
2024-12-10 4:09 ` Andrew Lunn
2024-12-16 6:56 ` Yijie Yang
2024-12-16 9:18 ` Andrew Lunn
2024-12-17 2:26 ` Yijie Yang
2024-12-17 10:18 ` Andrew Lunn
2024-12-18 7:25 ` Yijie Yang
2024-12-18 16:57 ` Andrew Lunn
2024-11-29 15:15 ` Andrew Lunn
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=4287c838-35b2-45bb-b4a2-e128b55ddbaf@lunn.ch \
--to=andrew@lunn.ch \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=konrad.dybcio@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=quic_yijiyang@quicinc.com \
--cc=richardcochran@gmail.com \
--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