From: Richard Zhu <hongxing.zhu@nxp.com> Date: 2021-03-25 08:59:32
Changes:
v2 -> v3:
Refine the DT binding descriptions, and the condition adjustment in the codes.
v1 -> v2:
Don't use the boolean property to specify the different power supply of PCIe PHY.
Use one regulator as a supply to the PCIe controller node, and the regulator APIs
to get the voltage of it.
Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt | 3 +++
arch/arm64/boot/dts/freescale/imx8mq-evk.dts | 1 +
drivers/pci/controller/dwc/pci-imx6.c | 20 ++++++++++++++++++++
3 files changed, 24 insertions(+)
[PATCH v3 1/3] dt-bindings: imx6q-pcie: add one regulator used to
[PATCH v3 2/3] arm64: dts: imx8mq-evk: add one regulator used to
[PATCH v3 3/3] PCI: imx: clear vreg bypass when pcie vph voltage is
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
From: Richard Zhu <hongxing.zhu@nxp.com> Date: 2021-03-25 08:59:32
Both 1.8v and 3.3v power supplies can be used by i.MX8MQ PCIe PHY.
In default, the PCIE_VPH voltage is suggested to be 1.8v refer to data
sheet. When PCIE_VPH is supplied by 3.3v in the HW schematic design,
the VREG_BYPASS bits of GPR registers should be cleared from default
value 1b'1 to 1b'0. Thus, the internal 3v3 to 1v8 translator would be
turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
---
drivers/pci/controller/dwc/pci-imx6.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
From: Richard Zhu <hongxing.zhu@nxp.com> Date: 2021-03-25 08:59:32
Both 1.8v and 3.3v power supplies can be used by i.MX8MQ PCIe PHY.
In default, the PCIE_VPH voltage is suggested to be 1.8v refer to data
sheet. When PCIE_VPH is supplied by 3.3v in the HW schematic design,
the VREG_BYPASS bits of GPR registers should be cleared from default
value 1b'1 to 1b'0. Thus, the internal 3v3 to 1v8 translator would be
turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
---
Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt | 3 +++
1 file changed, 3 insertions(+)
@@ -38,6 +38,9 @@ Optional properties: The regulator will be enabled when initializing the PCIe host and disabled either as part of the init process or when shutting down the host.+- vph-supply: Should specify the regulator in charge of VPH one of the three+ PCIe PHY powers. This regulator can be supplied by both 1.8v and 3.3v voltage+ supplies. Might be used to distinguish different HW board designs. Additional required properties for imx6sx-pcie: - clock names: Must include the following additional entries:
--
2.17.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
From: Richard Zhu <hongxing.zhu@nxp.com> Date: 2021-03-25 08:59:32
Both 1.8v and 3.3v power supplies can be used by i.MX8MQ PCIe PHY.
In default, the PCIE_VPH voltage is suggested to be 1.8v refer to data
sheet. When PCIE_VPH is supplied by 3.3v in the HW schematic design,
the VREG_BYPASS bits of GPR registers should be cleared from default
value 1b'1 to 1b'0. Thus, the internal 3v3 to 1v8 translator would be
turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8mq-evk.dts | 1 +
1 file changed, 1 insertion(+)
From: Krzysztof Wilczyński <hidden> Date: 2021-03-26 07:46:37
Hi,
+ /*
+ * Regarding to the datasheet, the PCIE_VPH is suggested
+ * to be 1.8V. If the PCIE_VPH is supplied by 3.3V, the
+ * VREG_BYPASS should be cleared to zero.
+ */
[...]
A small nitpick here. What about the following:
Regarding the data sheet, the PCIE_VPH is suggested to be 1.8V.
If the PCIE_VPH is supplied with 3.3V, the VREG_BYPASS should be
cleared to zero.
What do you think?
Krzysztof
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
From: Lucas Stach <l.stach@pengutronix.de> Date: 2021-03-26 09:38:16
Am Donnerstag, dem 25.03.2021 um 16:44 +0800 schrieb Richard Zhu:
quoted hunk
Both 1.8v and 3.3v power supplies can be used by i.MX8MQ PCIe PHY.
In default, the PCIE_VPH voltage is suggested to be 1.8v refer to data
sheet. When PCIE_VPH is supplied by 3.3v in the HW schematic design,
the VREG_BYPASS bits of GPR registers should be cleared from default
value 1b'1 to 1b'0. Thus, the internal 3v3 to 1v8 translator would be
turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
---
Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt | 3 +++
1 file changed, 3 insertions(+)
The regulator will be enabled when initializing the PCIe host and
disabled either as part of the init process or when shutting down the
host.
+- vph-supply: Should specify the regulator in charge of VPH one of the three
+ PCIe PHY powers. This regulator can be supplied by both 1.8v and 3.3v voltage
+ supplies. Might be used to distinguish different HW board designs.
Please just get rid of the last sentence. All DT properties are used in
one way or the other to distinguish different HW designs, so no need to
mention this.
Regards,
Lucas
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
From: Lucas Stach <l.stach@pengutronix.de> Date: 2021-03-26 09:41:32
Am Donnerstag, dem 25.03.2021 um 16:44 +0800 schrieb Richard Zhu:
Both 1.8v and 3.3v power supplies can be used by i.MX8MQ PCIe PHY.
In default, the PCIE_VPH voltage is suggested to be 1.8v refer to data
sheet. When PCIE_VPH is supplied by 3.3v in the HW schematic design,
the VREG_BYPASS bits of GPR registers should be cleared from default
value 1b'1 to 1b'0. Thus, the internal 3v3 to 1v8 translator would be
turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
I guess you need to split this patch out of the series and post it for
Shawn to pick up into the imx DT tree, after the other two patches of
the series have been accepted into the PCIe tree.
Regards,
Lucas
From: Lucas Stach <l.stach@pengutronix.de> Date: 2021-03-26 09:42:38
Am Donnerstag, dem 25.03.2021 um 16:44 +0800 schrieb Richard Zhu:
Both 1.8v and 3.3v power supplies can be used by i.MX8MQ PCIe PHY.
In default, the PCIE_VPH voltage is suggested to be 1.8v refer to data
sheet. When PCIE_VPH is supplied by 3.3v in the HW schematic design,
the VREG_BYPASS bits of GPR registers should be cleared from default
value 1b'1 to 1b'0. Thus, the internal 3v3 to 1v8 translator would be
turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
imx6_pcie_grp_offset(imx6_pcie),
IMX8MQ_GPR_PCIE_REF_USE_PAD,
IMX8MQ_GPR_PCIE_REF_USE_PAD);
+ /*
+ * Regarding to the datasheet, the PCIE_VPH is suggested
+ * to be 1.8V. If the PCIE_VPH is supplied by 3.3V, the
+ * VREG_BYPASS should be cleared to zero.
+ */
+ if (imx6_pcie->vph &&
+ regulator_get_voltage(imx6_pcie->vph) > 3000000)
+ regmap_update_bits(imx6_pcie->iomuxc_gpr,
+ imx6_pcie_grp_offset(imx6_pcie),
+ IMX8MQ_GPR_PCIE_VREG_BYPASS,
+ 0);
break;
case IMX7D:
regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12,
@@ -1130,6 +1143,13 @@ static int imx6_pcie_probe(struct platform_device *pdev)