2013-07-16 11:40:29 -06:00
|
|
|
/*
|
|
|
|
* Copyright 2013 Freescale Semiconductor, Inc.
|
|
|
|
*
|
|
|
|
* Author: Fabio Estevam <fabio.estevam@freescale.com>
|
|
|
|
*
|
|
|
|
* 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.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
2015-07-22 06:53:02 -06:00
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
|
2013-07-16 11:40:29 -06:00
|
|
|
/ {
|
|
|
|
regulators {
|
|
|
|
compatible = "simple-bus";
|
2014-02-07 08:22:50 -07:00
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
2013-07-16 11:40:29 -06:00
|
|
|
|
2014-02-07 08:22:50 -07:00
|
|
|
reg_2p5v: regulator@0 {
|
2013-07-16 11:40:29 -06:00
|
|
|
compatible = "regulator-fixed";
|
2014-02-07 08:22:50 -07:00
|
|
|
reg = <0>;
|
2013-07-16 11:40:29 -06:00
|
|
|
regulator-name = "2P5V";
|
|
|
|
regulator-min-microvolt = <2500000>;
|
|
|
|
regulator-max-microvolt = <2500000>;
|
|
|
|
regulator-always-on;
|
|
|
|
};
|
|
|
|
|
2014-02-07 08:22:50 -07:00
|
|
|
reg_3p3v: regulator@1 {
|
2013-07-16 11:40:29 -06:00
|
|
|
compatible = "regulator-fixed";
|
2014-02-07 08:22:50 -07:00
|
|
|
reg = <1>;
|
2013-07-16 11:40:29 -06:00
|
|
|
regulator-name = "3P3V";
|
|
|
|
regulator-min-microvolt = <3300000>;
|
|
|
|
regulator-max-microvolt = <3300000>;
|
|
|
|
regulator-always-on;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
sound {
|
|
|
|
compatible = "fsl,imx6-wandboard-sgtl5000",
|
|
|
|
"fsl,imx-audio-sgtl5000";
|
|
|
|
model = "imx6-wandboard-sgtl5000";
|
|
|
|
ssi-controller = <&ssi1>;
|
|
|
|
audio-codec = <&codec>;
|
|
|
|
audio-routing =
|
|
|
|
"MIC_IN", "Mic Jack",
|
|
|
|
"Mic Jack", "Mic Bias",
|
|
|
|
"Headphone Jack", "HP_OUT";
|
|
|
|
mux-int-port = <1>;
|
|
|
|
mux-ext-port = <3>;
|
|
|
|
};
|
2013-09-02 20:51:41 -06:00
|
|
|
|
|
|
|
sound-spdif {
|
|
|
|
compatible = "fsl,imx-audio-spdif";
|
|
|
|
model = "imx-spdif";
|
|
|
|
spdif-controller = <&spdif>;
|
|
|
|
spdif-out;
|
|
|
|
};
|
2013-07-16 11:40:29 -06:00
|
|
|
};
|
|
|
|
|
|
|
|
&audmux {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_audmux>;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
2014-04-22 08:26:22 -06:00
|
|
|
&hdmi {
|
|
|
|
ddc-i2c-bus = <&i2c1>;
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&i2c1 {
|
|
|
|
clock-frequency = <100000>;
|
|
|
|
pinctrl-names = "default";
|
|
|
|
pinctrl-0 = <&pinctrl_i2c1>;
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
2013-07-16 11:40:29 -06:00
|
|
|
&i2c2 {
|
|
|
|
clock-frequency = <100000>;
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_i2c2>;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
|
|
|
|
codec: sgtl5000@0a {
|
|
|
|
compatible = "fsl,sgtl5000";
|
|
|
|
reg = <0x0a>;
|
2016-04-26 19:28:29 -06:00
|
|
|
clocks = <&clks IMX6QDL_CLK_CKO>;
|
2013-07-16 11:40:29 -06:00
|
|
|
VDDA-supply = <®_2p5v>;
|
|
|
|
VDDIO-supply = <®_3p3v>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&iomuxc {
|
|
|
|
pinctrl-names = "default";
|
|
|
|
|
2013-10-23 01:36:09 -06:00
|
|
|
imx6qdl-wandboard {
|
|
|
|
|
|
|
|
pinctrl_audmux: audmuxgrp {
|
|
|
|
fsl,pins = <
|
2014-02-07 19:14:28 -07:00
|
|
|
MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
|
|
|
|
MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
|
|
|
|
MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
|
|
|
|
MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
|
2013-10-23 01:36:09 -06:00
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_enet: enetgrp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
|
|
|
|
MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
|
2016-07-08 15:22:54 -06:00
|
|
|
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
|
2013-10-23 01:36:09 -06:00
|
|
|
MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
|
2016-07-08 15:22:54 -06:00
|
|
|
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
|
|
|
|
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
|
2013-10-23 01:36:09 -06:00
|
|
|
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
|
ARM: dts: imx6qdl-wandboard: use GPIO_6 for FEC interrupt
Apply the same work-around for i.MX 6D/Q erratum 006687 as used for
Sabre Lite for the Wandboard Dual / Quad.
Like on the Sabre Lite, GPIO6 is used as a power down output for
camera expansion boards. However, these expansion boards do not work
with mainline yet anyway.
Tested on a Wandboard Quad. Before the patch:
root@arm:~# ping -q -f -c 10000 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
=== 192.168.2.1 ping statistics ===
10000 packets transmitted, 10000 received, 0% packet loss, time 97363ms
rtt min/avg/max/mdev = 0.290/9.586/10.198/1.432 ms, pipe 2, ipg/ewma 9.737/9.672 ms
After the patch:
root@arm:~# ping -q -f -c 10000 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
=== 192.168.2.1 ping statistics ===
10000 packets transmitted, 10000 received, 0% packet loss, time 4810ms
rtt min/avg/max/mdev = 0.246/0.355/0.863/0.044 ms, ipg/ewma 0.481/0.319 ms
Signed-off-by: Sascha Silbe <x-linux@infra-silbe.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2014-02-06 15:24:13 -07:00
|
|
|
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
|
2013-10-23 01:36:09 -06:00
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
2014-04-22 08:26:22 -06:00
|
|
|
pinctrl_i2c1: i2c1grp {
|
|
|
|
fsl,pins = <
|
2016-10-14 03:39:28 -06:00
|
|
|
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
|
|
|
|
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
|
2014-04-22 08:26:22 -06:00
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl_i2c2: i2c2grp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
|
|
|
|
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_spdif: spdifgrp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_ENET_RXD0__SPDIF_OUT 0x1b0b0
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_uart1: uart1grp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
|
|
|
|
MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_uart3: uart3grp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
|
|
|
|
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
|
|
|
|
MX6QDL_PAD_EIM_D23__UART3_CTS_B 0x1b0b1
|
|
|
|
MX6QDL_PAD_EIM_EB3__UART3_RTS_B 0x1b0b1
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_usbotg: usbotggrp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_usdhc1: usdhc1grp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17059
|
|
|
|
MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10059
|
|
|
|
MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17059
|
|
|
|
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17059
|
|
|
|
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17059
|
|
|
|
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17059
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_usdhc2: usdhc2grp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
|
|
|
|
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059
|
|
|
|
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
|
|
|
|
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
|
|
|
|
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
|
|
|
|
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
|
|
|
|
>;
|
|
|
|
};
|
|
|
|
|
|
|
|
pinctrl_usdhc3: usdhc3grp {
|
|
|
|
fsl,pins = <
|
|
|
|
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
|
|
|
|
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
|
|
|
|
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
|
|
|
|
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
|
|
|
|
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
|
|
|
|
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
|
|
|
|
>;
|
|
|
|
};
|
2013-07-16 11:40:29 -06:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&fec {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_enet>;
|
2013-07-16 11:40:29 -06:00
|
|
|
phy-mode = "rgmii";
|
2013-09-27 08:12:42 -06:00
|
|
|
phy-reset-gpios = <&gpio3 29 0>;
|
ARM: dts: imx6qdl-wandboard: use GPIO_6 for FEC interrupt
Apply the same work-around for i.MX 6D/Q erratum 006687 as used for
Sabre Lite for the Wandboard Dual / Quad.
Like on the Sabre Lite, GPIO6 is used as a power down output for
camera expansion boards. However, these expansion boards do not work
with mainline yet anyway.
Tested on a Wandboard Quad. Before the patch:
root@arm:~# ping -q -f -c 10000 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
=== 192.168.2.1 ping statistics ===
10000 packets transmitted, 10000 received, 0% packet loss, time 97363ms
rtt min/avg/max/mdev = 0.290/9.586/10.198/1.432 ms, pipe 2, ipg/ewma 9.737/9.672 ms
After the patch:
root@arm:~# ping -q -f -c 10000 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
=== 192.168.2.1 ping statistics ===
10000 packets transmitted, 10000 received, 0% packet loss, time 4810ms
rtt min/avg/max/mdev = 0.246/0.355/0.863/0.044 ms, ipg/ewma 0.481/0.319 ms
Signed-off-by: Sascha Silbe <x-linux@infra-silbe.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2014-02-06 15:24:13 -07:00
|
|
|
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
|
|
|
|
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
|
2016-06-03 10:31:20 -06:00
|
|
|
fsl,err006687-workaround-present;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
2013-09-02 20:51:41 -06:00
|
|
|
&spdif {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_spdif>;
|
2013-09-02 20:51:41 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
2013-07-16 11:40:29 -06:00
|
|
|
&ssi1 {
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&uart1 {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_uart1>;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&uart3 {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_uart3>;
|
2016-05-31 08:31:51 -06:00
|
|
|
uart-has-rtscts;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&usbh1 {
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
2013-08-21 07:27:02 -06:00
|
|
|
&usbotg {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_usbotg>;
|
2013-08-21 07:27:02 -06:00
|
|
|
disable-over-current;
|
|
|
|
dr_mode = "peripheral";
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
2013-07-16 11:40:29 -06:00
|
|
|
&usdhc1 {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_usdhc1>;
|
2015-07-22 06:53:02 -06:00
|
|
|
cd-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&usdhc3 {
|
|
|
|
pinctrl-names = "default";
|
2013-10-23 01:36:09 -06:00
|
|
|
pinctrl-0 = <&pinctrl_usdhc3>;
|
2015-07-22 06:53:02 -06:00
|
|
|
cd-gpios = <&gpio3 9 GPIO_ACTIVE_LOW>;
|
2013-07-16 11:40:29 -06:00
|
|
|
status = "okay";
|
|
|
|
};
|