[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<DS7PR19MB88838F05ADDD3BDF9B08076C9D64A@DS7PR19MB8883.namprd19.prod.outlook.com>
Date: Tue, 27 May 2025 16:13:16 +0400
From: George Moussalem <george.moussalem@...look.com>
To: Konrad Dybcio <konrad.dybcio@....qualcomm.com>,
Krzysztof Kozlowski <krzk@...nel.org>, Andrew Lunn <andrew@...n.ch>,
Heiner Kallweit <hkallweit1@...il.com>, Russell King
<linux@...linux.org.uk>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
<conor+dt@...nel.org>, Florian Fainelli <f.fainelli@...il.com>,
Philipp Zabel <p.zabel@...gutronix.de>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>,
Michael Turquette <mturquette@...libre.com>, Stephen Boyd <sboyd@...nel.org>
Cc: netdev@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org,
linux-clk@...r.kernel.org
Subject: Re: [PATCH 1/5] dt-bindings: net: qca,ar803x: Add IPQ5018 Internal GE
PHY support
On 5/27/25 15:31, Konrad Dybcio wrote:
> On 5/27/25 1:28 PM, George Moussalem wrote:
>> Hi Konrad,
>>
>> On 5/27/25 14:59, Konrad Dybcio wrote:
>>> On 5/26/25 2:55 PM, Krzysztof Kozlowski wrote:
>>>> On 26/05/2025 08:43, George Moussalem wrote:
>>>>>>> + qca,dac:
>>>>>>> + description:
>>>>>>> + Values for MDAC and EDAC to adjust amplitude, bias current settings,
>>>>>>> + and error detection and correction algorithm. Only set in a PHY to PHY
>>>>>>> + link architecture to accommodate for short cable length.
>>>>>>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>>>>>>> + items:
>>>>>>> + - items:
>>>>>>> + - description: value for MDAC. Expected 0x10, if set
>>>>>>> + - description: value for EDAC. Expected 0x10, if set
>>>>>>
>>>>>> If this is fixed to 0x10, then this is fully deducible from compatible.
>>>>>> Drop entire property.
>>>>>
>>>>> as mentioned to Andrew, I can move the required values to the driver
>>>>> itself, but a property would still be required to indicate that this PHY
>>>>> is connected to an external PHY (ex. qca8337 switch). In that case, the
>>>>> values need to be set. Otherwise, not..
>>>>>
>>>>> Would qcom,phy-to-phy-dac (boolean) do?
>>>>
>>>> Seems fine to me.
>>>
>>> Can the driver instead check for a phy reference?
>>
>> Do you mean using the existing phy-handle DT property or create a new DT property called 'qcom,phy-reference'? Either way, can add it for v2.
>
> I'm not sure how this is all wired up. Do you have an example of a DT
> with both configurations you described in your reply to Andrew?
Sure, for IPQ5018 GE PHY connected to a QCA8337 switch (phy to phy):
Link:
https://github.com/openwrt/openwrt/blob/main/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq5018-spnmx56.dts
In this scenario, the IPQ5018 single UNIPHY is freed up and can be used
with an external PHY such as QCA8081 to offer up to 2.5 gbps
connectivity, see diagram below:
* =================================================================
* _______________________ _______________________
* | IPQ5018 | | QCA8337 |
* | +------+ +--------+ | | +--------+ +------+ |
* | | MAC0 |---| GE Phy |-+--- MDI ---+ | Phy4 |---| MAC5 | |
* | +------+ +--------+ | | +--------+ +------+ |
* | | |_______________________|
* | | _______________________
* | | | QCA8081 |
* | +------+ +--------+ | | +--------+ +------+ |
* | | MAC1 |---| Uniphy |-+-- SGMII+--+ | Phy |---| RJ45 | |
* | +------+ +--------+ | | +--------+ +------+ |
* |_______________________| |_______________________|
*
* =================================================================
The other use case is when an external switch or PHY, if any, is
connected to the IPQ5018 UNIPHY over SGMII(+), freeing up the GE PHY
which can optionally be connected to an RJ45 connector. I haven't worked
on such board yet where the GE PHY is directly connected to RJ45, but I
believe the Linksys MX6200 has this architecture (which I'll look into
soon).
* =================================================================
* _______________________ ____________
* | IPQ5018 | | |
* | +------+ +--------+ | | +--------+ |
* | | MAC0 |---| GE Phy |-+--- MDI ---+ | RJ45 | +
* | +------+ +--------+ | | +--------+ |
* | | |____________|
* | | _______________________
* | | | QCA8081 Phy |
* | +------+ +--------+ | | +--------+ +------+ |
* | | MAC1 |---| Uniphy |-+-- SGMII+--+ | Phy |---| RJ45 | |
* | +------+ +--------+ | | +--------+ +------+ |
* |_______________________| |_______________________|
*
* =================================================================
>
> Konrad
Best regards,
George
Powered by blists - more mailing lists