[PATCH 3/3] arm64: dts: imx8mq: Declare the PCIe extref clock
Rudi Heitbaum <[email protected]> Sun, 2 Aug 2026 11:32:30 +0000
| Newsgroups | dev.linux.lists.imx,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pci |
|---|---|
| Message-ID | <3436ea65303090e435a24ba04416425f0380bd90.1785669457.git.rudi@heitbaum.com> |
Boards feeding PCIe REF_CLK from an off-chip oscillator described it as the "pcie_bus" clock, which the driver never looks up by name and which therefore selects nothing. The oscillator was used only because the driver forced IMX8MQ_GPR_PCIE_REF_USE_PAD unconditionally. Now that the selection follows the "extref" clock, name the oscillator explicitly on every board that depends on it so the behaviour is unchanged. The "pcie_bus" entries are left alone. Endpoint nodes are not touched: they are all disabled and use a separate binding. Signed-off-by: Rudi Heitbaum <[email protected]> --- arch/arm64/boot/dts/freescale/imx8mq-evk.dts | 8 ++++++-- .../boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dts | 8 ++++++-- arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dts | 4 +++- arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dts | 8 ++++++-- arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi | 8 ++++++-- 5 files changed, 27 insertions(+), 9 deletions(-) diff --git a/arch/arm64/boot/dts/freescale/imx8mq-evk.dts b/arch/arm64/boot/dts/freescale/imx8mq-evk.dts index e7d87ea81b69..3dc0047cd1de 100644 --- a/arch/arm64/boot/dts/freescale/imx8mq-evk.dts +++ b/arch/arm64/boot/dts/freescale/imx8mq-evk.dts @@ -374,7 +374,9 @@ &pcie0 { clocks = <&clk IMX8MQ_CLK_PCIE1_ROOT>, <&pcie0_refclk>, <&clk IMX8MQ_CLK_PCIE1_PHY>, - <&clk IMX8MQ_CLK_PCIE1_AUX>; + <&clk IMX8MQ_CLK_PCIE1_AUX>, + <&pcie0_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; vph-supply = <&vgen5_reg>; supports-clkreq; status = "okay"; @@ -402,7 +404,9 @@ &pcie1 { clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>, <&pcie0_refclk>, <&clk IMX8MQ_CLK_PCIE2_PHY>, - <&clk IMX8MQ_CLK_PCIE2_AUX>; + <&clk IMX8MQ_CLK_PCIE2_AUX>, + <&pcie0_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; vpcie-supply = <®_pcie1>; vpcie3v3aux-supply = <®_pcie1>; vph-supply = <&vgen5_reg>; diff --git a/arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dts b/arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dts index d8cf1f27c3ec..8cf6a64db1a7 100644 --- a/arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dts +++ b/arch/arm64/boot/dts/freescale/imx8mq-kontron-pitx-imx8m.dts @@ -247,7 +247,9 @@ &pcie0 { clocks = <&clk IMX8MQ_CLK_PCIE1_ROOT>, <&pcie0_refclk>, <&clk IMX8MQ_CLK_PCIE1_PHY>, - <&clk IMX8MQ_CLK_PCIE1_AUX>; + <&clk IMX8MQ_CLK_PCIE1_AUX>, + <&pcie0_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; status = "okay"; }; @@ -256,7 +258,9 @@ &pcie1 { clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>, <&pcie1_refclk>, <&clk IMX8MQ_CLK_PCIE2_PHY>, - <&clk IMX8MQ_CLK_PCIE2_AUX>; + <&clk IMX8MQ_CLK_PCIE2_AUX>, + <&pcie1_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; fsl,max-link-speed = <1>; status = "okay"; }; diff --git a/arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dts b/arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dts index 3ae3824be027..bf931d2f3a87 100644 --- a/arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dts +++ b/arch/arm64/boot/dts/freescale/imx8mq-mnt-reform2.dts @@ -199,7 +199,9 @@ &pcie1 { clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>, <&pcie1_refclk>, <&clk IMX8MQ_CLK_PCIE2_PHY>, - <&clk IMX8MQ_CLK_PCIE2_AUX>; + <&clk IMX8MQ_CLK_PCIE2_AUX>, + <&pcie1_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; status = "okay"; }; diff --git a/arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dts b/arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dts index 0165f3a25985..761c43db3026 100644 --- a/arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dts +++ b/arch/arm64/boot/dts/freescale/imx8mq-tqma8mq-mba8mx.dts @@ -97,7 +97,9 @@ &pcie0 { clocks = <&clk IMX8MQ_CLK_PCIE1_ROOT>, <&pcieclk 3>, <&pcieclk 2>, - <&clk IMX8MQ_CLK_PCIE1_AUX>; + <&clk IMX8MQ_CLK_PCIE1_AUX>, + <&pcieclk 3>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; status = "okay"; }; @@ -109,7 +111,9 @@ &pcie1 { clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>, <&pcieclk 1>, <&pcieclk 0>, - <&clk IMX8MQ_CLK_PCIE2_AUX>; + <&clk IMX8MQ_CLK_PCIE2_AUX>, + <&pcieclk 1>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; status = "okay"; }; diff --git a/arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi b/arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi index c7bbba45f368..31db96adb237 100644 --- a/arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi @@ -551,7 +551,9 @@ &pcie0 { clocks = <&clk IMX8MQ_CLK_PCIE1_ROOT>, <&pcie0_refclk>, <&clk IMX8MQ_CLK_PCIE1_PHY>, - <&clk IMX8MQ_CLK_PCIE1_AUX>; + <&clk IMX8MQ_CLK_PCIE1_AUX>, + <&pcie0_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; vph-supply = <&vgen5_reg>; status = "okay"; }; @@ -563,7 +565,9 @@ &pcie1 { clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>, <&pcie1_refclk>, <&clk IMX8MQ_CLK_PCIE2_PHY>, - <&clk IMX8MQ_CLK_PCIE2_AUX>; + <&clk IMX8MQ_CLK_PCIE2_AUX>, + <&pcie1_refclk>; + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "extref"; vph-supply = <&vgen5_reg>; status = "okay"; }; -- 2.53.0