lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ