summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOleksandr Suvorov <oleksandr.suvorov@toradex.com>2020-10-01 13:00:13 +0300
committerOleksandr Suvorov <oleksandr.suvorov@toradex.com>2020-10-01 13:00:13 +0300
commit036ef929ec18f001d5413ce70f394c88a49f806b (patch)
treefe8629f3520af8ce5a077cdff5815af9d370b640
parent29bf9c9d6963108d0539b70451786e95778cf940 (diff)
arm64: dts: bring up pcie/wifi
Add required and fix wrong settings to make PCIe host and PCIe WiFI module AW-CM276AF on Colibri iMX8X work well. Related-to: ELB-3025 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
-rw-r--r--arch/arm64/boot/dts/freescale/imx8qxp-colibri.dtsi36
1 files changed, 31 insertions, 5 deletions
diff --git a/arch/arm64/boot/dts/freescale/imx8qxp-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8qxp-colibri.dtsi
index d9f8f1325796..7c8c5dc3eaac 100644
--- a/arch/arm64/boot/dts/freescale/imx8qxp-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qxp-colibri.dtsi
@@ -50,6 +50,19 @@
};
};
+ pcie_refclk: pcie-clock-generator {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <100000000>;
+ };
+
+ pcie_refclk_gate: pcie-ref-clock {
+ compatible = "gpio-gate-clock";
+ #clock-cells = <0>;
+ clocks = <&pcie_refclk>;
+ enable-gpios = <&gpio_expander_43 3 GPIO_ACTIVE_HIGH>;
+ };
+
reg_module_3v3: regulator-module-3v3 {
compatible = "regulator-fixed";
regulator-name = "+V3.3";
@@ -335,6 +348,10 @@
status = "okay";
};
+&hsio_refb_clk {
+ status = "disabled";
+};
+
/* On-module I2C */
&i2c0 {
#address-cells = <1>;
@@ -1167,15 +1184,24 @@
/* On-module PCIe for wifi */
&pcieb{
compatible = "fsl,imx8qxp-pcie","snps,dw-pcie";
- /*
- * WARNING! Enabling "epdev_on-supply" leads a crash of pcie driver on
- * system suspend.
- */
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcieb &pinctrl_wifi>;
- clkreq-gpio = <&gpio_expander_43 3 GPIO_ACTIVE_HIGH>;
+ clocks = <&pcieb_lpcg 0>,
+ <&pcieb_lpcg 1>,
+ <&pcieb_lpcg 2>,
+ <&phyx1_lpcg 0>,
+ <&phyx1_crr1_lpcg 0>,
+ <&pcieb_crr3_lpcg 0>,
+ <&misc_crr5_lpcg 0>,
+ <&pcie_refclk_gate>;
+ clock-names = "pcie", "pcie_bus", "pcie_inbound_axi",
+ "pcie_phy", "phy_per", "pcie_per", "misc_per",
+ "pcie_ext";
+
+ clkreq-gpio = <&lsio_gpio4 1 GPIO_ACTIVE_LOW>;
ext_osc = <1>;
fsl,max-link-speed = <1>;
+ hard-wired = <1>;
disable-gpio = <&gpio_expander_43 6 GPIO_ACTIVE_LOW>;
power-on-gpio = <&gpio_expander_43 2 GPIO_ACTIVE_LOW>;
reserved-region = <&rpmsg_reserved>;