From: "Frank.Sae" <Frank.Sae@motor-comm.com>
To: Andrew Lunn <andrew@lunn.ch>
Cc: Krzysztof Kozlowski <krzk@kernel.org>,
hkallweit1@gmail.com, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, robh@kernel.org,
krzk+dt@kernel.org, conor+dt@kernel.org, linux@armlinux.org.uk,
netdev@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, yuanlai.cui@motor-comm.com,
hua.sun@motor-comm.com, xiaoyong.li@motor-comm.com,
suting.hu@motor-comm.com, jie.han@motor-comm.com
Subject: Re: [PATCH 1/2] dt-bindings: net: motorcomm: Add chip mode cfg
Date: Sun, 11 Aug 2024 06:09:19 -0700 [thread overview]
Message-ID: <b18c7f09-dd57-4b30-a8ff-fa6136d613ed@motor-comm.com> (raw)
In-Reply-To: <e9d9c67d-e113-4a10-bd18-0d013fe7ea92@lunn.ch>
On 8/1/24 06:14, Andrew Lunn wrote:
> On Thu, Aug 01, 2024 at 02:49:12AM -0700, Frank.Sae wrote:
>> On 7/27/24 02:25, Krzysztof Kozlowski wrote:
>>
>> On 27/07/2024 11:20, Frank.Sae wrote:
>>
>> The motorcomm phy (yt8821) supports the ability to
>> config the chip mode of serdes.
>> The yt8821 serdes could be set to AUTO_BX2500_SGMII or
>> FORCE_BX2500.
>> In AUTO_BX2500_SGMII mode, SerDes
>> speed is determined by UTP, if UTP link up
>> at 2.5GBASE-T, SerDes will work as
>> 2500BASE-X, if UTP link up at
>> 1000BASE-T/100BASE-Tx/10BASE-T, SerDes will work
>> as SGMII.
>> In FORCE_BX2500, SerDes always works
>> as 2500BASE-X.
>>
>> Very weird wrapping.
>>
>> Please wrap commit message according to Linux coding style / submission
>> process (neither too early nor over the limit):
>> https://elixir.bootlin.com/linux/v6.4-rc1/source/Documentation/process/submitting-patches.rst#L597
>>
>>
>> Signed-off-by: Frank.Sae <Frank.Sae@motor-comm.com>
>>
>> Didn't you copy user-name as you name?
>>
>> sorry, not understand your mean.
>>
>> ---
>> .../bindings/net/motorcomm,yt8xxx.yaml | 17 +++++++++++++++++
>> 1 file changed, 17 insertions(+)
>>
>> Also, your threading is completely broken. Use git send-email or b4.
>>
>> sorry, not understand your mean of threading broken. the patch used git
>> send-email.
> Your indentation of replies it also very odd!
>
>> + 0: AUTO_BX2500_SGMII
>> + 1: FORCE_BX2500
>> + In AUTO_BX2500_SGMII mode, serdes speed is determined by UTP,
>> + if UTP link up at 2.5GBASE-T, serdes will work as 2500BASE-X,
>> + if UTP link up at 1000BASE-T/100BASE-Tx/10BASE-T, serdes will
>> + work as SGMII.
>> + In FORCE_BX2500 mode, serdes always works as 2500BASE-X.
>>
>>
>> Explain why this is even needed and why "auto" is not correct in all
>> cases. In commit msg or property description.
>>
>> yt8821 phy does not support strapping to config the serdes mode, so config the
>> serdes mode by dts instead.
> Strapping does not matter. You can set it on probe.
>
>> even if auto 2500base-x serdes mode is default mode after phy hard reset, and
>> auto as default must be make sense, but from most our customers's feedback,
>> force 2500base-x serdes mode is used in project usually to adapt to mac's serdes
>> settings. for customer's convenience and use simplicity, force 2500base-x serdes
>> mode selected as default here.
>
> If you are using phylink correctly, the customer should never
> know. Both the MAC and the PHY enumerate the capabilities and phylink
> will tell you what mode to change to.
>
> I still think this property should be removed, default to auto, and
> let phylink tell you if something else should be used.
The property motorcomm,chip-mode will be removed in next patch. found that
phy-mode property in dts can be used to configure the serdes mode. when
phy-mode is set to 2500base-x, the serdes is refered as always in
2500base-x, when phy-mode is set to sgmii, the serdes is refered as in
2500base-x or sgmii according to media speed.
>> + $ref: /schemas/types.yaml#/definitions/uint8
>>
>> Make it a string, not uint8.
>>
>>
>> why do you suggest string, the property value(uint8) will be wrote to phy
>> register.
> Device tree is not a list of values to poke into registers. It is a
> textual description of the hardware. The driver probably needs to
> apply conversions to get register values. e.g. delay are in ns,
> voltages are in millivolts, but register typically don't use such
> units.
>
> Andrew
next prev parent reply other threads:[~2024-08-11 13:09 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-27 9:20 [PATCH 1/2] dt-bindings: net: motorcomm: Add chip mode cfg Frank.Sae
2024-07-27 9:25 ` Krzysztof Kozlowski
2024-07-27 11:07 ` Andrew Lunn
2024-08-11 12:45 ` Frank.Sae
[not found] ` <f18fa949-b217-4373-82c4-7981872446b4@motor-comm.com>
2024-08-01 13:14 ` Andrew Lunn
2024-08-11 13:09 ` Frank.Sae [this message]
2024-08-01 14:23 ` Krzysztof Kozlowski
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=b18c7f09-dd57-4b30-a8ff-fa6136d613ed@motor-comm.com \
--to=frank.sae@motor-comm.com \
--cc=andrew@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=hkallweit1@gmail.com \
--cc=hua.sun@motor-comm.com \
--cc=jie.han@motor-comm.com \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
--cc=suting.hu@motor-comm.com \
--cc=xiaoyong.li@motor-comm.com \
--cc=yuanlai.cui@motor-comm.com \
/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