diff options
-rw-r--r-- | arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2-pcie.dts | 22 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2.dts | 15 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx7d-sdb.dts | 12 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx7d.dtsi | 1 |
4 files changed, 50 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2-pcie.dts b/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2-pcie.dts new file mode 100644 index 000000000000..ffe65d934331 --- /dev/null +++ b/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2-pcie.dts @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2015 Freescale Semiconductor, Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include "imx7d-12x12-lpddr3-arm2.dts" + +/* + * On imx7d 12x12 arm2 board, there is pin(gpio6_21) iomux + * between ecspi3 and pcie_rst_b. In order to resove this + * pin conflict, disable ecspi3 in this pcie named dts file. + */ +&ecspi3 { + status = "disabled"; +}; + +&pcie{ + status = "okay"; +}; diff --git a/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2.dts b/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2.dts index 060464cfa78a..e2a854ec4d97 100644 --- a/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2.dts +++ b/arch/arm/boot/dts/imx7d-12x12-lpddr3-arm2.dts @@ -458,6 +458,13 @@ >; }; + pinctrl_pcie: pciegrp { + fsl,pins = < + MX7D_PAD_SAI2_TX_SYNC__GPIO6_IO19 0x2 + MX7D_PAD_SAI2_RX_DATA__GPIO6_IO21 0x2 + >; + }; + pinctrl_pwm1: pwm1grp { fsl,pins = < MX7D_PAD_GPIO1_IO08__PWM1_OUT 0x110b0 @@ -632,6 +639,14 @@ }; }; +&pcie { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pcie>; + reset-gpio = <&gpio6 21 GPIO_ACTIVE_LOW>; + power-on-gpio = <&gpio6 19 GPIO_ACTIVE_HIGH>; + status = "disabled"; +}; + &pwm1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm1>; diff --git a/arch/arm/boot/dts/imx7d-sdb.dts b/arch/arm/boot/dts/imx7d-sdb.dts index b640d5485e16..500cabe4fd3e 100644 --- a/arch/arm/boot/dts/imx7d-sdb.dts +++ b/arch/arm/boot/dts/imx7d-sdb.dts @@ -137,6 +137,16 @@ gpio = <&gpio2 14 GPIO_ACTIVE_LOW>; }; + reg_pcie: regulator-pcie { + compatible = "regulator-fixed"; + regulator-name = "MPCIE_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&extended_io 6 GPIO_ACTIVE_HIGH>; + regulator-always-on; + enable-active-high; + }; + panel { compatible = "innolux,at043tn24"; pinctrl-0 = <&pinctrl_backlight>; @@ -447,7 +457,9 @@ }; &pcie { + pinctrl-names = "default"; reset-gpio = <&extended_io 1 GPIO_ACTIVE_LOW>; + disable-gpio = <&extended_io 0 GPIO_ACTIVE_LOW>; status = "okay"; }; diff --git a/arch/arm/boot/dts/imx7d.dtsi b/arch/arm/boot/dts/imx7d.dtsi index 94c7674a353e..a048c867cc87 100644 --- a/arch/arm/boot/dts/imx7d.dtsi +++ b/arch/arm/boot/dts/imx7d.dtsi @@ -186,6 +186,7 @@ interrupt-parent = <&intc>; fsl,mf-mix-wakeup-irq = <0x54010000 0xc00 0x0 0x1040640>; mipi-phy-supply = <®_1p0d>; + pcie-phy-supply = <®_1p0d>; }; }; |