mbox series

[0/6] Add PPE device tree node for Qualcomm IPQ SoC

Message ID 20240110112059.2498-1-quic_luoj@quicinc.com (mailing list archive)
Headers show
Series Add PPE device tree node for Qualcomm IPQ SoC | expand

Message

Jie Luo Jan. 10, 2024, 11:20 a.m. UTC
The PPE(packet process engine) hardware block is supported by Qualcomm
IPQ platforms, such as IPQ9574 and IPQ5332. The PPE includes the various
packet processing modules such as the routing and bridging flow engines,
L2 switch capability, VLAN and tunnels. Also included are integrated
ethernet MAC and PCS(uniphy), which is used to connect with the external
PHY devices by PCS.

This patch series enables support for the following DTSI functionality
for Qualcomm IPQ9574 and IPQ5332 chipsets. 

1. Add PPE (Packet Processing Engine) HW support

2. Add IPQ9574 RDP433 board support, where the PPE is connected
   with qca8075 PHY and AQ PHY.

3. Add IPQ5332 RDP441 board support, where the PPE is connected
   with qca8386 and SFP

PPE DTS depends on the NSSCC clock driver below, which provides the
clocks for the PPE driver.
https://lore.kernel.org/linux-arm-msm/20230825091234.32713-1-quic_devipriy@quicinc.com/
https://lore.kernel.org/linux-arm-msm/20231211-ipq5332-nsscc-v3-0-ad13bef9b137@quicinc.com/

Lei Wei (2):
  arm64: dts: qcom: ipq5332: Add RDP441 board device tree
  arm64: dts: qcom: ipq9574: Add RDP433 board device tree

Luo Jie (4):
  arm64: dts: qcom: ipq9574: Add PPE device tree node
  arm64: dts: qcom: ipq5332: Add PPE device tree node
  arm64: dts: qcom: ipq5332: Add MDIO device tree
  arm64: dts: qcom: ipq9574: Add MDIO device tree

 arch/arm64/boot/dts/qcom/ipq5332-rdp441.dts |  51 ++
 arch/arm64/boot/dts/qcom/ipq5332.dtsi       | 414 ++++++++++-
 arch/arm64/boot/dts/qcom/ipq9574-rdp433.dts |  66 ++
 arch/arm64/boot/dts/qcom/ipq9574.dtsi       | 758 +++++++++++++++++++-
 4 files changed, 1279 insertions(+), 10 deletions(-)

Comments

Konrad Dybcio Jan. 10, 2024, 11:32 a.m. UTC | #1
On 1/10/24 12:20, Luo Jie wrote:
> The PPE(packet process engine) hardware block is supported by Qualcomm
> IPQ platforms, such as IPQ9574 and IPQ5332. The PPE includes the various
> packet processing modules such as the routing and bridging flow engines,
> L2 switch capability, VLAN and tunnels. Also included are integrated
> ethernet MAC and PCS(uniphy), which is used to connect with the external
> PHY devices by PCS.
> 
> This patch series enables support for the following DTSI functionality
> for Qualcomm IPQ9574 and IPQ5332 chipsets.
> 
> 1. Add PPE (Packet Processing Engine) HW support
> 
> 2. Add IPQ9574 RDP433 board support, where the PPE is connected
>     with qca8075 PHY and AQ PHY.
> 
> 3. Add IPQ5332 RDP441 board support, where the PPE is connected
>     with qca8386 and SFP
> 
> PPE DTS depends on the NSSCC clock driver below, which provides the
> clocks for the PPE driver.
> https://lore.kernel.org/linux-arm-msm/20230825091234.32713-1-quic_devipriy@quicinc.com/
> https://lore.kernel.org/linux-arm-msm/20231211-ipq5332-nsscc-v3-0-ad13bef9b137@quicinc.com/

None of these describe (or even use) the compatible in the first
patch of this series ("qcom,ipq9574-ppe"). I didn't check the
subsequent ones, as I assume it's the same situtation, so this
is a NAK.

> Lei Wei (2):
>    arm64: dts: qcom: ipq5332: Add RDP441 board device tree
>    arm64: dts: qcom: ipq9574: Add RDP433 board device tree

These two look unrelated?

> 
> Luo Jie (4):
>    arm64: dts: qcom: ipq9574: Add PPE device tree node
>    arm64: dts: qcom: ipq5332: Add PPE device tree node
>    arm64: dts: qcom: ipq5332: Add MDIO device tree
>    arm64: dts: qcom: ipq9574: Add MDIO device tree

Konrad
Krzysztof Kozlowski Jan. 10, 2024, 12:13 p.m. UTC | #2
On 10/01/2024 12:20, Luo Jie wrote:
> The PPE(packet process engine) hardware block is supported by Qualcomm
> IPQ platforms, such as IPQ9574 and IPQ5332. The PPE includes the various
> packet processing modules such as the routing and bridging flow engines,
> L2 switch capability, VLAN and tunnels. Also included are integrated
> ethernet MAC and PCS(uniphy), which is used to connect with the external
> PHY devices by PCS.
> 
> This patch series enables support for the following DTSI functionality
> for Qualcomm IPQ9574 and IPQ5332 chipsets. 
> 
> 1. Add PPE (Packet Processing Engine) HW support
> 
> 2. Add IPQ9574 RDP433 board support, where the PPE is connected
>    with qca8075 PHY and AQ PHY.
> 
> 3. Add IPQ5332 RDP441 board support, where the PPE is connected
>    with qca8386 and SFP
> 
> PPE DTS depends on the NSSCC clock driver below, which provides the
> clocks for the PPE driver.

DTS cannot depend on clock drivers. Maybe you meant that it depends on
NSSCC clock controller DTS changes, which would be fine. However
depending on drivers is neither necessary nor allowed.

Best regards,
Krzysztof
Jie Luo Jan. 12, 2024, 2:55 p.m. UTC | #3
On 1/10/2024 7:32 PM, Konrad Dybcio wrote:
> 
> 
> On 1/10/24 12:20, Luo Jie wrote:
>> The PPE(packet process engine) hardware block is supported by Qualcomm
>> IPQ platforms, such as IPQ9574 and IPQ5332. The PPE includes the various
>> packet processing modules such as the routing and bridging flow engines,
>> L2 switch capability, VLAN and tunnels. Also included are integrated
>> ethernet MAC and PCS(uniphy), which is used to connect with the external
>> PHY devices by PCS.
>>
>> This patch series enables support for the following DTSI functionality
>> for Qualcomm IPQ9574 and IPQ5332 chipsets.
>>
>> 1. Add PPE (Packet Processing Engine) HW support
>>
>> 2. Add IPQ9574 RDP433 board support, where the PPE is connected
>>     with qca8075 PHY and AQ PHY.
>>
>> 3. Add IPQ5332 RDP441 board support, where the PPE is connected
>>     with qca8386 and SFP
>>
>> PPE DTS depends on the NSSCC clock driver below, which provides the
>> clocks for the PPE driver.
>> https://lore.kernel.org/linux-arm-msm/20230825091234.32713-1-quic_devipriy@quicinc.com/
>> https://lore.kernel.org/linux-arm-msm/20231211-ipq5332-nsscc-v3-0-ad13bef9b137@quicinc.com/
> 
> None of these describe (or even use) the compatible in the first
> patch of this series ("qcom,ipq9574-ppe"). I didn't check the
> subsequent ones, as I assume it's the same situtation, so this
> is a NAK.

The DT binding file was included in the PPE driver series, which
documents the compatible string.

https://lore.kernel.org/netdev/20240110142428.52026d9e@kernel.org/

I will hold off this DTSI patch series for now as per discussion in the
series. When the series is resumed later, I will mention the link of PPE 
driver patch series in the cover letter, when updating this DTS patch 
series. Sorry for this confusion caused.



> 
>> Lei Wei (2):
>>    arm64: dts: qcom: ipq5332: Add RDP441 board device tree
>>    arm64: dts: qcom: ipq9574: Add RDP433 board device tree
> 
> These two look unrelated?

These two patches are for adding the PPE port related configuration 
nodes (such as port speed, interface mode and MDIO address) which are 
board specific. RDP441 and RDP433 are two different board types. Perhaps
the title of the patches are not clear enough. I will update the title
to make it clear when the patch series resumes.

> 
>>
>> Luo Jie (4):
>>    arm64: dts: qcom: ipq9574: Add PPE device tree node
>>    arm64: dts: qcom: ipq5332: Add PPE device tree node
>>    arm64: dts: qcom: ipq5332: Add MDIO device tree
>>    arm64: dts: qcom: ipq9574: Add MDIO device tree
> 
> Konrad
Jie Luo Jan. 12, 2024, 3 p.m. UTC | #4
On 1/10/2024 8:13 PM, Krzysztof Kozlowski wrote:
> On 10/01/2024 12:20, Luo Jie wrote:
>> The PPE(packet process engine) hardware block is supported by Qualcomm
>> IPQ platforms, such as IPQ9574 and IPQ5332. The PPE includes the various
>> packet processing modules such as the routing and bridging flow engines,
>> L2 switch capability, VLAN and tunnels. Also included are integrated
>> ethernet MAC and PCS(uniphy), which is used to connect with the external
>> PHY devices by PCS.
>>
>> This patch series enables support for the following DTSI functionality
>> for Qualcomm IPQ9574 and IPQ5332 chipsets.
>>
>> 1. Add PPE (Packet Processing Engine) HW support
>>
>> 2. Add IPQ9574 RDP433 board support, where the PPE is connected
>>     with qca8075 PHY and AQ PHY.
>>
>> 3. Add IPQ5332 RDP441 board support, where the PPE is connected
>>     with qca8386 and SFP
>>
>> PPE DTS depends on the NSSCC clock driver below, which provides the
>> clocks for the PPE driver.
> 
> DTS cannot depend on clock drivers. Maybe you meant that it depends on
> NSSCC clock controller DTS changes, which would be fine. However
> depending on drivers is neither necessary nor allowed.
> 
> Best regards,
> Krzysztof
> 

Yes, this DTSI series depends on the NSSCC clock controller DTS patches 
which are referred to in the cover letter. I will rectify the cover 
letter text when the series resumes later.