Re: [U-Boot] [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based) device tree description

2019-08-13 Thread Peng Fan
> Subject: [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based)
> device tree description
> 
> This commit defines the TPC70 imx6q board with device tree description.
> 
> Signed-off-by: Lukasz Majewski 

Acked-by: Peng Fan 

> ---
> 
>  arch/arm/dts/imx6q-kp.dts | 219
> ++
>  1 file changed, 219 insertions(+)
>  create mode 100644 arch/arm/dts/imx6q-kp.dts
> 
> diff --git a/arch/arm/dts/imx6q-kp.dts b/arch/arm/dts/imx6q-kp.dts new file
> mode 100644 index 00..12d6db6f80
> --- /dev/null
> +++ b/arch/arm/dts/imx6q-kp.dts
> @@ -0,0 +1,219 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * Copyright 2018
> + * Lukasz Majewski, DENX Software Engineering, lu...@denx.de
> + *
> + * SPDX-License-Identifier: GPL-2.0+ or X11
> + */
> +
> +/dts-v1/;
> +#include 
> +#include "imx6q.dtsi"
> +
> +/ {
> + model = "K+P iMX6Q";
> + compatible = "kp,imx6-kp", "fsl,imx6";
> +
> + aliases {
> + mmc0 = 
> + mmc1 = 
> + usb1 = 
> + };
> +
> + chosen {
> + stdout-path = 
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <_leds>;
> +
> + green {
> + label = "green";
> + gpios = < 23 GPIO_ACTIVE_HIGH>;
> + linux,default-trigger = "gpio";
> + default-state = "off";
> + };
> +
> + red {
> + label = "red";
> + gpios = < 16 GPIO_ACTIVE_HIGH>;
> + linux,default-trigger = "gpio";
> + default-state = "off";
> + };
> + };
> +
> + memory@1000 {
> + reg = <0x1000 0x4000>;
> + };
> +
> + reg_usb_h1_vbus: regulator-usb_h1_vbus {
> + compatible = "regulator-fixed";
> + regulator-name = "usb_h1_vbus";
> + regulator-min-microvolt = <500>;
> + regulator-max-microvolt = <500>;
> + gpio = < 31 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> + };
> +};
> +
> + {
> + pinctrl-names = "default";
> + pinctrl-0 = <_enet>;
> + phy-reset-gpios = < 25 GPIO_ACTIVE_LOW>;
> + phy-reset-duration = <10>;
> + phy-mode = "rgmii";
> + fsl,magic-packet;
> + fsl,enet-loopback-clk; /* anatop reference clk via PAD loopback */
> + fsl,enet-freq = <1>; /* ENET_25MHZ  = 0, ENET_50MHZ  = 1 */
> +  /* ENET_100MHZ = 2, ENET_125MHZ = 3 */
> + status = "okay";
> +};
> +
> + {
> + clock-frequency = <40>;
> + pinctrl-names = "default";
> + pinctrl-0 = <_i2c1>;
> + status = "okay";
> +};
> +
> + {
> + clock-frequency = <40>;
> + pinctrl-names = "default";
> + pinctrl-0 = <_i2c2>;
> + status = "okay";
> +};
> +
> + {
> + pinctrl_enet: enetgrp {
> + fsl,pins = <
> + MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
> + MX6QDL_PAD_ENET_MDC__ENET_MDC   0x1b0b0
> + MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
> + MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
> + MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
> + MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
> + MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
> + MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL   0x1b0b0
> + MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK0x1b0b0
> + MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
> + MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
> + MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
> + MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
> + MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
> + MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL   0x1b0b0
> + MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
> + MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25  0x1b0b0
> + >;
> + };
> +
> + pinctrl_leds: gpioledsgrp {
> + fsl,pins = <
> + MX6QDL_PAD_EIM_D23__GPIO3_IO23
> 0x4001b0b0
> + MX6QDL_PAD_EIM_D16__GPIO3_IO16
> 0x4001b0b0
> + >;
> + };
> +
> + pinctrl_i2c1: i2c1grp {
> + fsl,pins = <
> + MX6QDL_PAD_CSI0_DAT8__I2C1_SDA  0x4001b8b1
> + MX6QDL_PAD_CSI0_DAT9__I2C1_SCL  0x4001b8b1
> + >;
> + };
> +
> + pinctrl_i2c2: i2c2grp {
> + fsl,pins = <
> + MX6QDL_PAD_KEY_COL3__I2C2_SCL   0x4001b8b1
> + MX6QDL_PAD_KEY_ROW3__I2C2_SDA   0x4001b8b1
> +  >;
> + };
> +
> + pinctrl_uart1: uart1grp {
> + fsl,pins = <
> + MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA  

Re: [U-Boot] [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based) device tree description

2019-08-12 Thread Lukasz Majewski
Hi Tom,

> On Sun, Aug 11, 2019 at 11:25:37PM +0200, Lukasz Majewski wrote:
> > Hi Peng,
> >   
> > > > Subject: [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board
> > > > (imx6q based) device tree description
> > > > 
> > > > This commit defines the TPC70 imx6q board with device tree
> > > > description.
> > > 
> > > Is the imx6q-kp.dtsi usable for this board from Linux kernel?
> > >   
> > 
> > The imx6q-kp.dtsi is defined in the Linux kernel [1].
> > 
> > However, not all features - like backlight, CAN, etc. are needed in
> > U-Boot. To reduce SPL footprint, as the TPC70 is the first
> > board (from i.MX6Q family of SoCs) which uses only DM in SPL and
> > U-Boot proper, only the necessary subset of [1] was added to U-Boot.
> > 
> > Note:
> > 
> > [1] -
> > https://elixir.bootlin.com/linux/v5.2.8/source/arch/arm/boot/dts/imx6q-kp.dtsi
> >  
> 
> Right, and that's what we have CONFIG_OF_SPL_REMOVE_PROPS for, yes?
> 

Not quite. For example I need "clocks" property, which is defined for
almost all nodes. This incurs some extra cost in terms of footprint.

To reduce the SPL size (to which dtb file size contributes), I had to
not include full DTS from Linux in U-Boot.

I only used a subset of it (only _really_ necessary description to run
U-Boot) to reduce size of SPL binary.

Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,  Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lu...@denx.de


pgpTPaSORA5tc.pgp
Description: OpenPGP digital signature
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based) device tree description

2019-08-11 Thread Tom Rini
On Sun, Aug 11, 2019 at 11:25:37PM +0200, Lukasz Majewski wrote:
> Hi Peng,
> 
> > > Subject: [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q
> > > based) device tree description
> > > 
> > > This commit defines the TPC70 imx6q board with device tree
> > > description.  
> > 
> > Is the imx6q-kp.dtsi usable for this board from Linux kernel?
> > 
> 
> The imx6q-kp.dtsi is defined in the Linux kernel [1].
> 
> However, not all features - like backlight, CAN, etc. are needed in
> U-Boot. To reduce SPL footprint, as the TPC70 is the first
> board (from i.MX6Q family of SoCs) which uses only DM in SPL and U-Boot
> proper, only the necessary subset of [1] was added to U-Boot.
> 
> Note:
> 
> [1] -
> https://elixir.bootlin.com/linux/v5.2.8/source/arch/arm/boot/dts/imx6q-kp.dtsi

Right, and that's what we have CONFIG_OF_SPL_REMOVE_PROPS for, yes?

-- 
Tom


signature.asc
Description: PGP signature
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based) device tree description

2019-08-11 Thread Lukasz Majewski
Hi Peng,

> > Subject: [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q
> > based) device tree description
> > 
> > This commit defines the TPC70 imx6q board with device tree
> > description.  
> 
> Is the imx6q-kp.dtsi usable for this board from Linux kernel?
> 

The imx6q-kp.dtsi is defined in the Linux kernel [1].

However, not all features - like backlight, CAN, etc. are needed in
U-Boot. To reduce SPL footprint, as the TPC70 is the first
board (from i.MX6Q family of SoCs) which uses only DM in SPL and U-Boot
proper, only the necessary subset of [1] was added to U-Boot.

Note:

[1] -
https://elixir.bootlin.com/linux/v5.2.8/source/arch/arm/boot/dts/imx6q-kp.dtsi

> Regards,
> Peng.
> 
> > 
> > Signed-off-by: Lukasz Majewski 
> > ---
> > 
> >  arch/arm/dts/imx6q-kp.dts | 219
> > ++
> >  1 file changed, 219 insertions(+)
> >  create mode 100644 arch/arm/dts/imx6q-kp.dts
> > 
> > diff --git a/arch/arm/dts/imx6q-kp.dts b/arch/arm/dts/imx6q-kp.dts
> > new file mode 100644 index 00..12d6db6f80
> > --- /dev/null
> > +++ b/arch/arm/dts/imx6q-kp.dts
> > @@ -0,0 +1,219 @@
> > +// SPDX-License-Identifier: GPL-2.0+
> > +/*
> > + * Copyright 2018
> > + * Lukasz Majewski, DENX Software Engineering, lu...@denx.de
> > + *
> > + * SPDX-License-Identifier: GPL-2.0+ or X11
> > + */
> > +
> > +/dts-v1/;
> > +#include 
> > +#include "imx6q.dtsi"
> > +
> > +/ {
> > +   model = "K+P iMX6Q";
> > +   compatible = "kp,imx6-kp", "fsl,imx6";
> > +
> > +   aliases {
> > +   mmc0 = 
> > +   mmc1 = 
> > +   usb1 = 
> > +   };
> > +
> > +   chosen {
> > +   stdout-path = 
> > +   };
> > +
> > +   leds {
> > +   compatible = "gpio-leds";
> > +   pinctrl-names = "default";
> > +   pinctrl-0 = <_leds>;
> > +
> > +   green {
> > +   label = "green";
> > +   gpios = < 23 GPIO_ACTIVE_HIGH>;
> > +   linux,default-trigger = "gpio";
> > +   default-state = "off";
> > +   };
> > +
> > +   red {
> > +   label = "red";
> > +   gpios = < 16 GPIO_ACTIVE_HIGH>;
> > +   linux,default-trigger = "gpio";
> > +   default-state = "off";
> > +   };
> > +   };
> > +
> > +   memory@1000 {
> > +   reg = <0x1000 0x4000>;
> > +   };
> > +
> > +   reg_usb_h1_vbus: regulator-usb_h1_vbus {
> > +   compatible = "regulator-fixed";
> > +   regulator-name = "usb_h1_vbus";
> > +   regulator-min-microvolt = <500>;
> > +   regulator-max-microvolt = <500>;
> > +   gpio = < 31 GPIO_ACTIVE_HIGH>;
> > +   enable-active-high;
> > +   };
> > +};
> > +
> > + {
> > +   pinctrl-names = "default";
> > +   pinctrl-0 = <_enet>;
> > +   phy-reset-gpios = < 25 GPIO_ACTIVE_LOW>;
> > +   phy-reset-duration = <10>;
> > +   phy-mode = "rgmii";
> > +   fsl,magic-packet;
> > +   fsl,enet-loopback-clk; /* anatop reference clk via PAD
> > loopback */
> > +   fsl,enet-freq = <1>; /* ENET_25MHZ  = 0, ENET_50MHZ  = 1 */
> > +/* ENET_100MHZ = 2, ENET_125MHZ = 3 */
> > +   status = "okay";
> > +};
> > +
> > + {
> > +   clock-frequency = <40>;
> > +   pinctrl-names = "default";
> > +   pinctrl-0 = <_i2c1>;
> > +   status = "okay";
> > +};
> > +
> > + {
> > +   clock-frequency = <40>;
> > +   pinctrl-names = "default";
> > +   pinctrl-0 = <_i2c2>;
> > +   status = "okay";
> > +};
> > +
> > + {
> > +   pinctrl_enet: enetgrp {
> > +   fsl,pins = <
> > +   MX6QDL_PAD_ENET_MDIO__ENET_MDIO
> > 0x1b0b0
> > +   MX6QDL_PAD_ENET_MDC__ENET_MDC
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_TXC__RGMII_TXC
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_TD0__RGMII_TD0
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_TD1__RGMII_TD1
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_TD2__RGMII_TD2
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_TD3__RGMII_TD3
> > 0x1b0b0
> > +
> > MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL   0x1b0b0
> > +
> > MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK0x1b0b0
> > +   MX6QDL_PAD_RGMII_RXC__RGMII_RXC
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_RD0__RGMII_RD0
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_RD1__RGMII_RD1
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_RD2__RGMII_RD2
> > 0x1b0b0
> > +   MX6QDL_PAD_RGMII_RD3__RGMII_RD3
> > 0x1b0b0
> > +
> > MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL   0x1b0b0
> > +   MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
> > +   MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25
> > 0x1b0b0
> > +   >;
> > +   };
> > +
> > +   pinctrl_leds: gpioledsgrp {
> > +   fsl,pins = <
> > +   MX6QDL_PAD_EIM_D23__GPIO3_IO23
> > 0x4001b0b0
> > +   MX6QDL_PAD_EIM_D16__GPIO3_IO16
> > 0x4001b0b0
> > +   

Re: [U-Boot] [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based) device tree description

2019-08-09 Thread Peng Fan
> Subject: [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based)
> device tree description
> 
> This commit defines the TPC70 imx6q board with device tree description.

Is the imx6q-kp.dtsi usable for this board from Linux kernel?

Regards,
Peng.

> 
> Signed-off-by: Lukasz Majewski 
> ---
> 
>  arch/arm/dts/imx6q-kp.dts | 219
> ++
>  1 file changed, 219 insertions(+)
>  create mode 100644 arch/arm/dts/imx6q-kp.dts
> 
> diff --git a/arch/arm/dts/imx6q-kp.dts b/arch/arm/dts/imx6q-kp.dts new file
> mode 100644 index 00..12d6db6f80
> --- /dev/null
> +++ b/arch/arm/dts/imx6q-kp.dts
> @@ -0,0 +1,219 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * Copyright 2018
> + * Lukasz Majewski, DENX Software Engineering, lu...@denx.de
> + *
> + * SPDX-License-Identifier: GPL-2.0+ or X11
> + */
> +
> +/dts-v1/;
> +#include 
> +#include "imx6q.dtsi"
> +
> +/ {
> + model = "K+P iMX6Q";
> + compatible = "kp,imx6-kp", "fsl,imx6";
> +
> + aliases {
> + mmc0 = 
> + mmc1 = 
> + usb1 = 
> + };
> +
> + chosen {
> + stdout-path = 
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <_leds>;
> +
> + green {
> + label = "green";
> + gpios = < 23 GPIO_ACTIVE_HIGH>;
> + linux,default-trigger = "gpio";
> + default-state = "off";
> + };
> +
> + red {
> + label = "red";
> + gpios = < 16 GPIO_ACTIVE_HIGH>;
> + linux,default-trigger = "gpio";
> + default-state = "off";
> + };
> + };
> +
> + memory@1000 {
> + reg = <0x1000 0x4000>;
> + };
> +
> + reg_usb_h1_vbus: regulator-usb_h1_vbus {
> + compatible = "regulator-fixed";
> + regulator-name = "usb_h1_vbus";
> + regulator-min-microvolt = <500>;
> + regulator-max-microvolt = <500>;
> + gpio = < 31 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> + };
> +};
> +
> + {
> + pinctrl-names = "default";
> + pinctrl-0 = <_enet>;
> + phy-reset-gpios = < 25 GPIO_ACTIVE_LOW>;
> + phy-reset-duration = <10>;
> + phy-mode = "rgmii";
> + fsl,magic-packet;
> + fsl,enet-loopback-clk; /* anatop reference clk via PAD loopback */
> + fsl,enet-freq = <1>; /* ENET_25MHZ  = 0, ENET_50MHZ  = 1 */
> +  /* ENET_100MHZ = 2, ENET_125MHZ = 3 */
> + status = "okay";
> +};
> +
> + {
> + clock-frequency = <40>;
> + pinctrl-names = "default";
> + pinctrl-0 = <_i2c1>;
> + status = "okay";
> +};
> +
> + {
> + clock-frequency = <40>;
> + pinctrl-names = "default";
> + pinctrl-0 = <_i2c2>;
> + status = "okay";
> +};
> +
> + {
> + pinctrl_enet: enetgrp {
> + fsl,pins = <
> + MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
> + MX6QDL_PAD_ENET_MDC__ENET_MDC   0x1b0b0
> + MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
> + MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
> + MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
> + MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
> + MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
> + MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL   0x1b0b0
> + MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK0x1b0b0
> + MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
> + MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
> + MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
> + MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
> + MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
> + MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL   0x1b0b0
> + MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
> + MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25  0x1b0b0
> + >;
> + };
> +
> + pinctrl_leds: gpioledsgrp {
> + fsl,pins = <
> + MX6QDL_PAD_EIM_D23__GPIO3_IO23
> 0x4001b0b0
> + MX6QDL_PAD_EIM_D16__GPIO3_IO16
> 0x4001b0b0
> + >;
> + };
> +
> + pinctrl_i2c1: i2c1grp {
> + fsl,pins = <
> + MX6QDL_PAD_CSI0_DAT8__I2C1_SDA  0x4001b8b1
> + MX6QDL_PAD_CSI0_DAT9__I2C1_SCL  0x4001b8b1
> + >;
> + };
> +
> + pinctrl_i2c2: i2c2grp {
> + fsl,pins = <
> + MX6QDL_PAD_KEY_COL3__I2C2_SCL   0x4001b8b1
> + MX6QDL_PAD_KEY_ROW3__I2C2_SDA   0x4001b8b1
> +  >;
> + };
> +
> + pinctrl_uart1: uart1grp {
> + fsl,pins = <
> + 

[U-Boot] [PATCH v2 07/11] imx: tpc70: dts: Add TPC70 board (imx6q based) device tree description

2019-07-30 Thread Lukasz Majewski
This commit defines the TPC70 imx6q board with device tree description.

Signed-off-by: Lukasz Majewski 
---

 arch/arm/dts/imx6q-kp.dts | 219 ++
 1 file changed, 219 insertions(+)
 create mode 100644 arch/arm/dts/imx6q-kp.dts

diff --git a/arch/arm/dts/imx6q-kp.dts b/arch/arm/dts/imx6q-kp.dts
new file mode 100644
index 00..12d6db6f80
--- /dev/null
+++ b/arch/arm/dts/imx6q-kp.dts
@@ -0,0 +1,219 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2018
+ * Lukasz Majewski, DENX Software Engineering, lu...@denx.de
+ *
+ * SPDX-License-Identifier: GPL-2.0+ or X11
+ */
+
+/dts-v1/;
+#include 
+#include "imx6q.dtsi"
+
+/ {
+   model = "K+P iMX6Q";
+   compatible = "kp,imx6-kp", "fsl,imx6";
+
+   aliases {
+   mmc0 = 
+   mmc1 = 
+   usb1 = 
+   };
+
+   chosen {
+   stdout-path = 
+   };
+
+   leds {
+   compatible = "gpio-leds";
+   pinctrl-names = "default";
+   pinctrl-0 = <_leds>;
+
+   green {
+   label = "green";
+   gpios = < 23 GPIO_ACTIVE_HIGH>;
+   linux,default-trigger = "gpio";
+   default-state = "off";
+   };
+
+   red {
+   label = "red";
+   gpios = < 16 GPIO_ACTIVE_HIGH>;
+   linux,default-trigger = "gpio";
+   default-state = "off";
+   };
+   };
+
+   memory@1000 {
+   reg = <0x1000 0x4000>;
+   };
+
+   reg_usb_h1_vbus: regulator-usb_h1_vbus {
+   compatible = "regulator-fixed";
+   regulator-name = "usb_h1_vbus";
+   regulator-min-microvolt = <500>;
+   regulator-max-microvolt = <500>;
+   gpio = < 31 GPIO_ACTIVE_HIGH>;
+   enable-active-high;
+   };
+};
+
+ {
+   pinctrl-names = "default";
+   pinctrl-0 = <_enet>;
+   phy-reset-gpios = < 25 GPIO_ACTIVE_LOW>;
+   phy-reset-duration = <10>;
+   phy-mode = "rgmii";
+   fsl,magic-packet;
+   fsl,enet-loopback-clk; /* anatop reference clk via PAD loopback */
+   fsl,enet-freq = <1>; /* ENET_25MHZ  = 0, ENET_50MHZ  = 1 */
+/* ENET_100MHZ = 2, ENET_125MHZ = 3 */
+   status = "okay";
+};
+
+ {
+   clock-frequency = <40>;
+   pinctrl-names = "default";
+   pinctrl-0 = <_i2c1>;
+   status = "okay";
+};
+
+ {
+   clock-frequency = <40>;
+   pinctrl-names = "default";
+   pinctrl-0 = <_i2c2>;
+   status = "okay";
+};
+
+ {
+   pinctrl_enet: enetgrp {
+   fsl,pins = <
+   MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
+   MX6QDL_PAD_ENET_MDC__ENET_MDC   0x1b0b0
+   MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
+   MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
+   MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
+   MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
+   MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
+   MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL   0x1b0b0
+   MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK0x1b0b0
+   MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
+   MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
+   MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
+   MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
+   MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
+   MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL   0x1b0b0
+   MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
+   MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25  0x1b0b0
+   >;
+   };
+
+   pinctrl_leds: gpioledsgrp {
+   fsl,pins = <
+   MX6QDL_PAD_EIM_D23__GPIO3_IO23  0x4001b0b0
+   MX6QDL_PAD_EIM_D16__GPIO3_IO16  0x4001b0b0
+   >;
+   };
+
+   pinctrl_i2c1: i2c1grp {
+   fsl,pins = <
+   MX6QDL_PAD_CSI0_DAT8__I2C1_SDA  0x4001b8b1
+   MX6QDL_PAD_CSI0_DAT9__I2C1_SCL  0x4001b8b1
+   >;
+   };
+
+   pinctrl_i2c2: i2c2grp {
+   fsl,pins = <
+   MX6QDL_PAD_KEY_COL3__I2C2_SCL   0x4001b8b1
+   MX6QDL_PAD_KEY_ROW3__I2C2_SDA   0x4001b8b1
+>;
+   };
+
+   pinctrl_uart1: uart1grp {
+   fsl,pins = <
+   MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA  0x1b0b1
+   MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA  0x1b0b1
+   >;
+   };
+
+   pinctrl_uart2: uart2grp {
+   fsl,pins = <
+