* [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4
@ 2025-09-04 6:22 Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 1/4] dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY Wenbin Yao
` (4 more replies)
0 siblings, 5 replies; 12+ messages in thread
From: Wenbin Yao @ 2025-09-04 6:22 UTC (permalink / raw)
To: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
Wenbin Yao, konrad.dybcio, qiang.yu, Prudhvi Yarlagadda,
Dmitry Baryshkov
Glymur is the next generation compute SoC of Qualcomm. This patch series
aims to add support for the fifth PCIe instance on it. The fifth PCIe
instance on Glymur has a Gen5 4-lane PHY. Patch [1/4] documents PHY as a
separate compatible and Patch [2/4] documents controller as a separate
compatible. Patch [3/4] describles the new PCS offsets in a dedicated
header file. Patch [4/4] adds configuration and compatible for PHY.
The device tree changes and whatever driver patches that are not part of
this patch series will be posted separately after official announcement of
the SOC.
Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
---
Changes in v4:
- Rebase Patch[1/4] onto next branch of linux-phy.
- Rebase Patch[4/4] onto next branch of linux-phy.
- Link to v3: https://lore.kernel.org/r/20250825-glymur_pcie5-v3-0-5c1d1730c16f@oss.qualcomm.com
Changes in v3:
- Keep qmp_pcie_of_match_table array sorted.
- Drop qref supply for PCIe Gen5x4 PHY.
- Link to v2: https://lore.kernel.org/r/20250821-glymur_pcie5-v2-0-cd516784ef20@oss.qualcomm.com
Changes in v2:
- Add offsets of PLL and TXRXZ register blocks for v8.50 PHY in Patch[4/4].
- Link to v1: https://lore.kernel.org/r/20250819-glymur_pcie5-v1-0-2ea09f83cbb0@oss.qualcomm.com
---
Prudhvi Yarlagadda (4):
dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY
dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
phy: qcom-qmp: pcs: Add v8.50 register offsets
phy: qcom: qmp-pcie: Add support for Glymur PCIe Gen5x4 PHY
.../bindings/pci/qcom,pcie-x1e80100.yaml | 7 ++++-
.../bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 3 ++
drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 32 ++++++++++++++++++++++
drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8_50.h | 13 +++++++++
drivers/phy/qualcomm/phy-qcom-qmp.h | 2 ++
5 files changed, 56 insertions(+), 1 deletion(-)
---
base-commit: 356590cd61cf89e2420d5628e35b6e73c6b6a770
change-id: 20250902-glymur_pcie5-bec675b7bdba
Best regards,
--
Wenbin Yao <wenbin.yao@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH v4 1/4] dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY
2025-09-04 6:22 [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao
@ 2025-09-04 6:22 ` Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller Wenbin Yao
` (3 subsequent siblings)
4 siblings, 0 replies; 12+ messages in thread
From: Wenbin Yao @ 2025-09-04 6:22 UTC (permalink / raw)
To: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
Wenbin Yao, konrad.dybcio, qiang.yu, Prudhvi Yarlagadda
From: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
The fifth PCIe instance on Glymur has a Gen5 4-lane PHY. Document it as a
separate compatible.
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml
index cb706cf8219d015cc21c1c7ea1cae49b4bf0319f..1527616902ebeab975c9c79d75cb1eada64ae55a 100644
--- a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml
+++ b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml
@@ -16,6 +16,7 @@ description:
properties:
compatible:
enum:
+ - qcom,glymur-qmp-gen5x4-pcie-phy
- qcom,qcs615-qmp-gen3x1-pcie-phy
- qcom,qcs8300-qmp-gen4x2-pcie-phy
- qcom,sa8775p-qmp-gen4x2-pcie-phy
@@ -178,6 +179,7 @@ allOf:
compatible:
contains:
enum:
+ - qcom,glymur-qmp-gen5x4-pcie-phy
- qcom,sc8280xp-qmp-gen3x1-pcie-phy
- qcom,sc8280xp-qmp-gen3x2-pcie-phy
- qcom,sc8280xp-qmp-gen3x4-pcie-phy
@@ -213,6 +215,7 @@ allOf:
compatible:
contains:
enum:
+ - qcom,glymur-qmp-gen5x4-pcie-phy
- qcom,sm8550-qmp-gen4x2-pcie-phy
- qcom,sm8650-qmp-gen4x2-pcie-phy
- qcom,x1e80100-qmp-gen4x2-pcie-phy
--
2.34.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-09-04 6:22 [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 1/4] dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY Wenbin Yao
@ 2025-09-04 6:22 ` Wenbin Yao
2025-10-11 12:15 ` Abel Vesa
2025-09-04 6:22 ` [PATCH v4 3/4] phy: qcom-qmp: pcs: Add v8.50 register offsets Wenbin Yao
` (2 subsequent siblings)
4 siblings, 1 reply; 12+ messages in thread
From: Wenbin Yao @ 2025-09-04 6:22 UTC (permalink / raw)
To: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
Wenbin Yao, konrad.dybcio, qiang.yu, Prudhvi Yarlagadda
From: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
On the Qualcomm Glymur platform the PCIe host is compatible with the DWC
controller present on the X1E80100 platform. So document the PCIe
controllers found on Glymur and use the X1E80100 compatible string as a
fallback in the schema.
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
index 257068a1826492a7071600d03ca0c99babb75bd9..8600f2c74cb81bcb924fa2035d992c3bd147db31 100644
--- a/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
+++ b/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
@@ -16,7 +16,12 @@ description:
properties:
compatible:
- const: qcom,pcie-x1e80100
+ oneOf:
+ - const: qcom,pcie-x1e80100
+ - items:
+ - enum:
+ - qcom,glymur-pcie
+ - const: qcom,pcie-x1e80100
reg:
minItems: 6
--
2.34.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v4 3/4] phy: qcom-qmp: pcs: Add v8.50 register offsets
2025-09-04 6:22 [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 1/4] dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller Wenbin Yao
@ 2025-09-04 6:22 ` Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 4/4] phy: qcom: qmp-pcie: Add support for Glymur PCIe Gen5x4 PHY Wenbin Yao
2025-09-09 6:10 ` [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao (Consultant)
4 siblings, 0 replies; 12+ messages in thread
From: Wenbin Yao @ 2025-09-04 6:22 UTC (permalink / raw)
To: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
Wenbin Yao, konrad.dybcio, qiang.yu, Prudhvi Yarlagadda,
Dmitry Baryshkov
From: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
The new Glymur SoC bumps up the HW version of QMP phy to v8.50 for PCIE
g5x4. Add the new PCS offsets in a dedicated header file.
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8_50.h | 13 +++++++++++++
drivers/phy/qualcomm/phy-qcom-qmp.h | 2 ++
2 files changed, 15 insertions(+)
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8_50.h b/drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8_50.h
new file mode 100644
index 0000000000000000000000000000000000000000..325c127e8eb7ad842018dce51d09a6ee54ed86ff
--- /dev/null
+++ b/drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8_50.h
@@ -0,0 +1,13 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+#ifndef QCOM_PHY_QMP_PCS_V8_50_H_
+#define QCOM_PHY_QMP_PCS_V8_50_H_
+
+#define QPHY_V8_50_PCS_STATUS1 0x010
+#define QPHY_V8_50_PCS_START_CONTROL 0x05c
+#define QPHY_V8_50_PCS_POWER_DOWN_CONTROL 0x64
+
+#endif
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp.h b/drivers/phy/qualcomm/phy-qcom-qmp.h
index f58c82b2dd23e1bda616d67ab7993794b997063b..da2a7ad2cdccef1308a2b7aa71a2e5cf8bd7c1d7 100644
--- a/drivers/phy/qualcomm/phy-qcom-qmp.h
+++ b/drivers/phy/qualcomm/phy-qcom-qmp.h
@@ -58,6 +58,8 @@
#include "phy-qcom-qmp-pcs-v8.h"
+#include "phy-qcom-qmp-pcs-v8_50.h"
+
/* QPHY_SW_RESET bit */
#define SW_RESET BIT(0)
/* QPHY_POWER_DOWN_CONTROL */
--
2.34.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH v4 4/4] phy: qcom: qmp-pcie: Add support for Glymur PCIe Gen5x4 PHY
2025-09-04 6:22 [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao
` (2 preceding siblings ...)
2025-09-04 6:22 ` [PATCH v4 3/4] phy: qcom-qmp: pcs: Add v8.50 register offsets Wenbin Yao
@ 2025-09-04 6:22 ` Wenbin Yao
2025-09-09 6:10 ` [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao (Consultant)
4 siblings, 0 replies; 12+ messages in thread
From: Wenbin Yao @ 2025-09-04 6:22 UTC (permalink / raw)
To: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
Wenbin Yao, konrad.dybcio, qiang.yu, Prudhvi Yarlagadda,
Dmitry Baryshkov
From: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Add support for Gen5 x4 PCIe QMP PHY found on Glymur platform.
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Acked-by: Manivannan Sadhasivam <mani@kernel.org>
---
drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c
index 8fdc146ef73221392371c00afb21d673dbf46d49..dc741fa8900a3a89c88fa51aea13fb912347915b 100644
--- a/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c
+++ b/drivers/phy/qualcomm/phy-qcom-qmp-pcie.c
@@ -100,6 +100,12 @@ static const unsigned int pciephy_v7_regs_layout[QPHY_LAYOUT_SIZE] = {
[QPHY_PCS_POWER_DOWN_CONTROL] = QPHY_V7_PCS_POWER_DOWN_CONTROL,
};
+static const unsigned int pciephy_v8_50_regs_layout[QPHY_LAYOUT_SIZE] = {
+ [QPHY_START_CTRL] = QPHY_V8_50_PCS_START_CONTROL,
+ [QPHY_PCS_STATUS] = QPHY_V8_50_PCS_STATUS1,
+ [QPHY_PCS_POWER_DOWN_CONTROL] = QPHY_V8_50_PCS_POWER_DOWN_CONTROL,
+};
+
static const struct qmp_phy_init_tbl msm8998_pcie_serdes_tbl[] = {
QMP_PHY_INIT_CFG(QSERDES_V3_COM_BIAS_EN_CLKBUFLR_EN, 0x14),
QMP_PHY_INIT_CFG(QSERDES_V3_COM_CLK_SELECT, 0x30),
@@ -3072,6 +3078,7 @@ struct qmp_pcie_offsets {
u16 rx2;
u16 txz;
u16 rxz;
+ u16 txrxz;
u16 ln_shrd;
};
@@ -3348,6 +3355,12 @@ static const struct qmp_pcie_offsets qmp_pcie_offsets_v6_30 = {
.ln_shrd = 0x8000,
};
+static const struct qmp_pcie_offsets qmp_pcie_offsets_v8_50 = {
+ .serdes = 0x8000,
+ .pcs = 0x9000,
+ .txrxz = 0xd000,
+};
+
static const struct qmp_phy_cfg ipq8074_pciephy_cfg = {
.lanes = 1,
@@ -4404,6 +4417,22 @@ static const struct qmp_phy_cfg qmp_v6_gen4x4_pciephy_cfg = {
.phy_status = PHYSTATUS_4_20,
};
+static const struct qmp_phy_cfg glymur_qmp_gen5x4_pciephy_cfg = {
+ .lanes = 4,
+
+ .offsets = &qmp_pcie_offsets_v8_50,
+
+ .reset_list = sdm845_pciephy_reset_l,
+ .num_resets = ARRAY_SIZE(sdm845_pciephy_reset_l),
+ .vreg_list = qmp_phy_vreg_l,
+ .num_vregs = ARRAY_SIZE(qmp_phy_vreg_l),
+
+ .regs = pciephy_v8_50_regs_layout,
+
+ .pwrdn_ctrl = SW_PWRDN | REFCLK_DRV_DSBL,
+ .phy_status = PHYSTATUS_4_20,
+};
+
static void qmp_pcie_init_port_b(struct qmp_pcie *qmp, const struct qmp_phy_cfg_tbls *tbls)
{
const struct qmp_phy_cfg *cfg = qmp->cfg;
@@ -5150,6 +5179,9 @@ static int qmp_pcie_probe(struct platform_device *pdev)
static const struct of_device_id qmp_pcie_of_match_table[] = {
{
+ .compatible = "qcom,glymur-qmp-gen5x4-pcie-phy",
+ .data = &glymur_qmp_gen5x4_pciephy_cfg,
+ }, {
.compatible = "qcom,ipq6018-qmp-pcie-phy",
.data = &ipq6018_pciephy_cfg,
}, {
--
2.34.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4
2025-09-04 6:22 [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao
` (3 preceding siblings ...)
2025-09-04 6:22 ` [PATCH v4 4/4] phy: qcom: qmp-pcie: Add support for Glymur PCIe Gen5x4 PHY Wenbin Yao
@ 2025-09-09 6:10 ` Wenbin Yao (Consultant)
4 siblings, 0 replies; 12+ messages in thread
From: Wenbin Yao (Consultant) @ 2025-09-09 6:10 UTC (permalink / raw)
To: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
konrad.dybcio, qiang.yu, Prudhvi Yarlagadda, Dmitry Baryshkov
On 9/4/2025 2:22 PM, Wenbin Yao wrote:
> Glymur is the next generation compute SoC of Qualcomm. This patch series
> aims to add support for the fifth PCIe instance on it. The fifth PCIe
> instance on Glymur has a Gen5 4-lane PHY. Patch [1/4] documents PHY as a
> separate compatible and Patch [2/4] documents controller as a separate
> compatible. Patch [3/4] describles the new PCS offsets in a dedicated
> header file. Patch [4/4] adds configuration and compatible for PHY.
>
> The device tree changes and whatever driver patches that are not part of
> this patch series will be posted separately after official announcement of
> the SOC.
>
> Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
> ---
> Changes in v4:
> - Rebase Patch[1/4] onto next branch of linux-phy.
> - Rebase Patch[4/4] onto next branch of linux-phy.
> - Link to v3: https://lore.kernel.org/r/20250825-glymur_pcie5-v3-0-5c1d1730c16f@oss.qualcomm.com
>
> Changes in v3:
> - Keep qmp_pcie_of_match_table array sorted.
> - Drop qref supply for PCIe Gen5x4 PHY.
> - Link to v2: https://lore.kernel.org/r/20250821-glymur_pcie5-v2-0-cd516784ef20@oss.qualcomm.com
>
> Changes in v2:
> - Add offsets of PLL and TXRXZ register blocks for v8.50 PHY in Patch[4/4].
> - Link to v1: https://lore.kernel.org/r/20250819-glymur_pcie5-v1-0-2ea09f83cbb0@oss.qualcomm.com
>
> ---
> Prudhvi Yarlagadda (4):
> dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY
> dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
> phy: qcom-qmp: pcs: Add v8.50 register offsets
> phy: qcom: qmp-pcie: Add support for Glymur PCIe Gen5x4 PHY
>
> .../bindings/pci/qcom,pcie-x1e80100.yaml | 7 ++++-
> .../bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 3 ++
> drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 32 ++++++++++++++++++++++
> drivers/phy/qualcomm/phy-qcom-qmp-pcs-v8_50.h | 13 +++++++++
> drivers/phy/qualcomm/phy-qcom-qmp.h | 2 ++
> 5 files changed, 56 insertions(+), 1 deletion(-)
> ---
> base-commit: 356590cd61cf89e2420d5628e35b6e73c6b6a770
> change-id: 20250902-glymur_pcie5-bec675b7bdba
>
> Best regards,
Hello, do you have any futher comments?
--
With best wishes
Wenbin
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-09-04 6:22 ` [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller Wenbin Yao
@ 2025-10-11 12:15 ` Abel Vesa
2025-10-12 3:01 ` Krzysztof Kozlowski
2025-10-15 1:42 ` Qiang Yu
0 siblings, 2 replies; 12+ messages in thread
From: Abel Vesa @ 2025-10-11 12:15 UTC (permalink / raw)
To: Wenbin Yao
Cc: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson, linux-arm-msm, linux-phy, devicetree,
linux-kernel, linux-pci, konrad.dybcio, qiang.yu,
Prudhvi Yarlagadda
On 25-09-03 23:22:03, Wenbin Yao wrote:
> From: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
>
> On the Qualcomm Glymur platform the PCIe host is compatible with the DWC
> controller present on the X1E80100 platform. So document the PCIe
> controllers found on Glymur and use the X1E80100 compatible string as a
> fallback in the schema.
>
> Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
> Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
> Acked-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
> index 257068a1826492a7071600d03ca0c99babb75bd9..8600f2c74cb81bcb924fa2035d992c3bd147db31 100644
> --- a/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
> +++ b/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
> @@ -16,7 +16,12 @@ description:
>
> properties:
> compatible:
> - const: qcom,pcie-x1e80100
> + oneOf:
> + - const: qcom,pcie-x1e80100
> + - items:
> + - enum:
> + - qcom,glymur-pcie
> + - const: qcom,pcie-x1e80100
>
The cnoc_sf_axi clock is not found on Glymur, at least according to this:
https://lore.kernel.org/all/20250925-v3_glymur_introduction-v1-19-24b601bbecc0@oss.qualcomm.com/
And dtbs_check reports the following:
arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): clock-names: ['aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'noc_aggr'] is too short
from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
One more thing:
arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): max-link-speed: 5 is not one of [1, 2, 3, 4]
from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
max-link-speed = <5> isn't yet supported and of_pci_get_max_link_speed returns -EINVAL and sets pci->max_link_speed to that
without checking the error.
So I guess fun stuff is happening based on that later on ...
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-10-11 12:15 ` Abel Vesa
@ 2025-10-12 3:01 ` Krzysztof Kozlowski
2025-10-15 1:50 ` Qiang Yu
2025-10-15 1:42 ` Qiang Yu
1 sibling, 1 reply; 12+ messages in thread
From: Krzysztof Kozlowski @ 2025-10-12 3:01 UTC (permalink / raw)
To: Abel Vesa, Wenbin Yao
Cc: Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson, linux-arm-msm, linux-phy, devicetree,
linux-kernel, linux-pci, konrad.dybcio, qiang.yu,
Prudhvi Yarlagadda
On 11/10/2025 14:15, Abel Vesa wrote:
>>
>> properties:
>> compatible:
>> - const: qcom,pcie-x1e80100
>> + oneOf:
>> + - const: qcom,pcie-x1e80100
>> + - items:
>> + - enum:
>> + - qcom,glymur-pcie
>> + - const: qcom,pcie-x1e80100
>>
>
> The cnoc_sf_axi clock is not found on Glymur, at least according to this:
>
> https://lore.kernel.org/all/20250925-v3_glymur_introduction-v1-19-24b601bbecc0@oss.qualcomm.com/
>
> And dtbs_check reports the following:
>
> arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): clock-names: ['aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'noc_aggr'] is too short
> from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
>
> One more thing:
>
> arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): max-link-speed: 5 is not one of [1, 2, 3, 4]
> from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
>
So that's another Glymur patch which wasn't ever tested?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-10-11 12:15 ` Abel Vesa
2025-10-12 3:01 ` Krzysztof Kozlowski
@ 2025-10-15 1:42 ` Qiang Yu
1 sibling, 0 replies; 12+ messages in thread
From: Qiang Yu @ 2025-10-15 1:42 UTC (permalink / raw)
To: Abel Vesa
Cc: Wenbin Yao, Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson, linux-arm-msm, linux-phy, devicetree,
linux-kernel, linux-pci, konrad.dybcio, Prudhvi Yarlagadda
On Sat, Oct 11, 2025 at 03:15:56PM +0300, Abel Vesa wrote:
> On 25-09-03 23:22:03, Wenbin Yao wrote:
> > From: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
> >
> > On the Qualcomm Glymur platform the PCIe host is compatible with the DWC
> > controller present on the X1E80100 platform. So document the PCIe
> > controllers found on Glymur and use the X1E80100 compatible string as a
> > fallback in the schema.
> >
> > Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
> > Signed-off-by: Wenbin Yao <wenbin.yao@oss.qualcomm.com>
> > Acked-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
> > Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml | 7 ++++++-
> > 1 file changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
> > index 257068a1826492a7071600d03ca0c99babb75bd9..8600f2c74cb81bcb924fa2035d992c3bd147db31 100644
> > --- a/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
> > +++ b/Documentation/devicetree/bindings/pci/qcom,pcie-x1e80100.yaml
> > @@ -16,7 +16,12 @@ description:
> >
> > properties:
> > compatible:
> > - const: qcom,pcie-x1e80100
> > + oneOf:
> > + - const: qcom,pcie-x1e80100
> > + - items:
> > + - enum:
> > + - qcom,glymur-pcie
> > + - const: qcom,pcie-x1e80100
> >
>
> The cnoc_sf_axi clock is not found on Glymur, at least according to this:
>
> https://lore.kernel.org/all/20250925-v3_glymur_introduction-v1-19-24b601bbecc0@oss.qualcomm.com/
There is another dtbinding patch to fix this issue
https://lore.kernel.org/all/20250919142325.1090059-1-pankaj.patil@oss.qualcomm.com/
>
> And dtbs_check reports the following:
>
> arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): clock-names: ['aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'noc_aggr'] is too short
> from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
>
> One more thing:
>
> arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): max-link-speed: 5 is not one of [1, 2, 3, 4]
> from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
>
> max-link-speed = <5> isn't yet supported and of_pci_get_max_link_speed returns -EINVAL and sets pci->max_link_speed to that
> without checking the error.
>
> So I guess fun stuff is happening based on that later on ...
My bad, but at least on QCOM platform, we will get max_link_speed from
config space if < 1.
if (pci->max_link_speed < 1) {
pci->max_link_speed = FIELD_GET(PCI_EXP_LNKCAP_SLS, cap);
return;
}
- Qiang Yu
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-10-12 3:01 ` Krzysztof Kozlowski
@ 2025-10-15 1:50 ` Qiang Yu
2025-10-15 6:58 ` Abel Vesa
0 siblings, 1 reply; 12+ messages in thread
From: Qiang Yu @ 2025-10-15 1:50 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Abel Vesa, Wenbin Yao, Vinod Koul, Kishon Vijay Abraham I,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Lorenzo Pieralisi,
Krzysztof Wilczyński, Manivannan Sadhasivam, Bjorn Helgaas,
Bjorn Andersson, linux-arm-msm, linux-phy, devicetree,
linux-kernel, linux-pci, konrad.dybcio, Prudhvi Yarlagadda
On Sun, Oct 12, 2025 at 05:01:45AM +0200, Krzysztof Kozlowski wrote:
> On 11/10/2025 14:15, Abel Vesa wrote:
> >>
> >> properties:
> >> compatible:
> >> - const: qcom,pcie-x1e80100
> >> + oneOf:
> >> + - const: qcom,pcie-x1e80100
> >> + - items:
> >> + - enum:
> >> + - qcom,glymur-pcie
> >> + - const: qcom,pcie-x1e80100
> >>
> >
> > The cnoc_sf_axi clock is not found on Glymur, at least according to this:
> >
> > https://lore.kernel.org/all/20250925-v3_glymur_introduction-v1-19-24b601bbecc0@oss.qualcomm.com/
> >
> > And dtbs_check reports the following:
> >
> > arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): clock-names: ['aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'noc_aggr'] is too short
> > from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
> >
> > One more thing:
> >
> > arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): max-link-speed: 5 is not one of [1, 2, 3, 4]
> > from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
> >
>
> So that's another Glymur patch which wasn't ever tested?
I tested all of these patch and also did dtb checks. That's how I found
cnoc_sf_axi clock is not required. There was a discussion about whether we
need to limit max speed to 16 GT and I limited it. I may forget to do dtb
checks again after changing it to 32 GT. Let me push another patch to fix
this.
- Qiang Yu
>
> Best regards,
> Krzysztof
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-10-15 1:50 ` Qiang Yu
@ 2025-10-15 6:58 ` Abel Vesa
2025-10-16 7:23 ` Qiang Yu
0 siblings, 1 reply; 12+ messages in thread
From: Abel Vesa @ 2025-10-15 6:58 UTC (permalink / raw)
To: Qiang Yu
Cc: Krzysztof Kozlowski, Wenbin Yao, Vinod Koul,
Kishon Vijay Abraham I, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Lorenzo Pieralisi, Krzysztof Wilczyński,
Manivannan Sadhasivam, Bjorn Helgaas, Bjorn Andersson,
linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
konrad.dybcio, Prudhvi Yarlagadda
On 25-10-14 18:50:37, Qiang Yu wrote:
> On Sun, Oct 12, 2025 at 05:01:45AM +0200, Krzysztof Kozlowski wrote:
> > On 11/10/2025 14:15, Abel Vesa wrote:
> > >>
> > >> properties:
> > >> compatible:
> > >> - const: qcom,pcie-x1e80100
> > >> + oneOf:
> > >> + - const: qcom,pcie-x1e80100
> > >> + - items:
> > >> + - enum:
> > >> + - qcom,glymur-pcie
> > >> + - const: qcom,pcie-x1e80100
> > >>
> > >
> > > The cnoc_sf_axi clock is not found on Glymur, at least according to this:
> > >
> > > https://lore.kernel.org/all/20250925-v3_glymur_introduction-v1-19-24b601bbecc0@oss.qualcomm.com/
> > >
> > > And dtbs_check reports the following:
> > >
> > > arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): clock-names: ['aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'noc_aggr'] is too short
> > > from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
> > >
> > > One more thing:
> > >
> > > arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): max-link-speed: 5 is not one of [1, 2, 3, 4]
> > > from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
> > >
> >
> > So that's another Glymur patch which wasn't ever tested?
>
> I tested all of these patch and also did dtb checks. That's how I found
> cnoc_sf_axi clock is not required. There was a discussion about whether we
> need to limit max speed to 16 GT and I limited it. I may forget to do dtb
> checks again after changing it to 32 GT. Let me push another patch to fix
> this.
Still, you need to add glymur specific clocks entry then, to fix the schema
w.r.t cnoc_sf_axi not being needed.
Best regards,
Abel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller
2025-10-15 6:58 ` Abel Vesa
@ 2025-10-16 7:23 ` Qiang Yu
0 siblings, 0 replies; 12+ messages in thread
From: Qiang Yu @ 2025-10-16 7:23 UTC (permalink / raw)
To: Abel Vesa
Cc: Krzysztof Kozlowski, Wenbin Yao, Vinod Koul,
Kishon Vijay Abraham I, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Lorenzo Pieralisi, Krzysztof Wilczyński,
Manivannan Sadhasivam, Bjorn Helgaas, Bjorn Andersson,
linux-arm-msm, linux-phy, devicetree, linux-kernel, linux-pci,
konrad.dybcio, Prudhvi Yarlagadda
On Wed, Oct 15, 2025 at 09:58:31AM +0300, Abel Vesa wrote:
> On 25-10-14 18:50:37, Qiang Yu wrote:
> > On Sun, Oct 12, 2025 at 05:01:45AM +0200, Krzysztof Kozlowski wrote:
> > > On 11/10/2025 14:15, Abel Vesa wrote:
> > > >>
> > > >> properties:
> > > >> compatible:
> > > >> - const: qcom,pcie-x1e80100
> > > >> + oneOf:
> > > >> + - const: qcom,pcie-x1e80100
> > > >> + - items:
> > > >> + - enum:
> > > >> + - qcom,glymur-pcie
> > > >> + - const: qcom,pcie-x1e80100
> > > >>
> > > >
> > > > The cnoc_sf_axi clock is not found on Glymur, at least according to this:
> > > >
> > > > https://lore.kernel.org/all/20250925-v3_glymur_introduction-v1-19-24b601bbecc0@oss.qualcomm.com/
> > > >
> > > > And dtbs_check reports the following:
> > > >
> > > > arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): clock-names: ['aux', 'cfg', 'bus_master', 'bus_slave', 'slave_q2a', 'noc_aggr'] is too short
> > > > from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
> > > >
> > > > One more thing:
> > > >
> > > > arch/arm64/boot/dts/qcom/glymur-crd.dtb: pci@1b40000 (qcom,glymur-pcie): max-link-speed: 5 is not one of [1, 2, 3, 4]
> > > > from schema $id: http://devicetree.org/schemas/pci/qcom,pcie-x1e80100.yaml#
> > > >
> > >
> > > So that's another Glymur patch which wasn't ever tested?
> >
> > I tested all of these patch and also did dtb checks. That's how I found
> > cnoc_sf_axi clock is not required. There was a discussion about whether we
> > need to limit max speed to 16 GT and I limited it. I may forget to do dtb
> > checks again after changing it to 32 GT. Let me push another patch to fix
> > this.
>
> Still, you need to add glymur specific clocks entry then, to fix the schema
> w.r.t cnoc_sf_axi not being needed.
>
I think the clock-names too short (cnoc_sf_axi not needed) issue has been
fixed by below change.
https://lore.kernel.org/all/20250919142325.1090059-1-pankaj.patil@oss.qualcomm.com/
About the max-link-speed issue, we will remove max-link-speed = <5> in dts
as max-link-speed is used to limit speed but I'm not limiting it.
- Qiang Yu
>
> Best regards,
> Abel
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2025-10-16 7:23 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-04 6:22 [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 1/4] dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the Glymur QMP PCIe PHY Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 2/4] dt-bindings: PCI: qcom: Document the Glymur PCIe Controller Wenbin Yao
2025-10-11 12:15 ` Abel Vesa
2025-10-12 3:01 ` Krzysztof Kozlowski
2025-10-15 1:50 ` Qiang Yu
2025-10-15 6:58 ` Abel Vesa
2025-10-16 7:23 ` Qiang Yu
2025-10-15 1:42 ` Qiang Yu
2025-09-04 6:22 ` [PATCH v4 3/4] phy: qcom-qmp: pcs: Add v8.50 register offsets Wenbin Yao
2025-09-04 6:22 ` [PATCH v4 4/4] phy: qcom: qmp-pcie: Add support for Glymur PCIe Gen5x4 PHY Wenbin Yao
2025-09-09 6:10 ` [PATCH v4 0/4] PCI: qcom: Add support for Glymur PCIe Gen5x4 Wenbin Yao (Consultant)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox