xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/imx7d-mba7.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 OR X11
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Device Tree Source for TQ Systems TQMa7D board on MBa7 carrier board.
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Copyright (C) 2016 TQ Systems GmbH
6*4882a593Smuzhiyun * Author: Markus Niebel <Markus.Niebel@tq-group.com>
7*4882a593Smuzhiyun * Copyright (C) 2019 Bruno Thomsen <bruno.thomsen@gmail.com>
8*4882a593Smuzhiyun */
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun/dts-v1/;
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun#include "imx7d-tqma7.dtsi"
13*4882a593Smuzhiyun#include "imx7-mba7.dtsi"
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun/ {
16*4882a593Smuzhiyun	model = "TQ Systems TQMa7D board on MBa7 carrier board";
17*4882a593Smuzhiyun	compatible = "tq,imx7d-mba7", "fsl,imx7d";
18*4882a593Smuzhiyun};
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun&fec2 {
21*4882a593Smuzhiyun	pinctrl-names = "default";
22*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_enet2>;
23*4882a593Smuzhiyun	phy-mode = "rgmii-id";
24*4882a593Smuzhiyun	phy-reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>;
25*4882a593Smuzhiyun	phy-reset-duration = <1>;
26*4882a593Smuzhiyun	phy-reset-delay = <1>;
27*4882a593Smuzhiyun	phy-supply = <&reg_fec2_pwdn>;
28*4882a593Smuzhiyun	phy-handle = <&ethphy2_0>;
29*4882a593Smuzhiyun	fsl,magic-packet;
30*4882a593Smuzhiyun	status = "okay";
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun	mdio {
33*4882a593Smuzhiyun		#address-cells = <1>;
34*4882a593Smuzhiyun		#size-cells = <0>;
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun		ethphy2_0: ethernet-phy@0 {
37*4882a593Smuzhiyun			compatible = "ethernet-phy-ieee802.3-c22";
38*4882a593Smuzhiyun			reg = <0>;
39*4882a593Smuzhiyun			ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
40*4882a593Smuzhiyun			ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>;
41*4882a593Smuzhiyun			ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
42*4882a593Smuzhiyun			/* LED1: Link/Activity, LED2: error */
43*4882a593Smuzhiyun			ti,led-function = <0x0db0>;
44*4882a593Smuzhiyun			/* active low, LED1/2 driven by phy */
45*4882a593Smuzhiyun			ti,led-ctrl = <0x1001>;
46*4882a593Smuzhiyun		};
47*4882a593Smuzhiyun	};
48*4882a593Smuzhiyun};
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun&iomuxc {
51*4882a593Smuzhiyun	pinctrl-names = "default";
52*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_hog_mba7_1>;
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun	pinctrl_enet2: enet2grp {
55*4882a593Smuzhiyun		fsl,pins = <
56*4882a593Smuzhiyun			MX7D_PAD_SD2_CD_B__ENET2_MDIO			0x02
57*4882a593Smuzhiyun			MX7D_PAD_SD2_WP__ENET2_MDC			0x00
58*4882a593Smuzhiyun			MX7D_PAD_EPDC_GDSP__ENET2_RGMII_TXC		0x71
59*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDCE2__ENET2_RGMII_TD0		0x71
60*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDCE3__ENET2_RGMII_TD1		0x71
61*4882a593Smuzhiyun			MX7D_PAD_EPDC_GDCLK__ENET2_RGMII_TD2		0x71
62*4882a593Smuzhiyun			MX7D_PAD_EPDC_GDOE__ENET2_RGMII_TD3		0x71
63*4882a593Smuzhiyun			MX7D_PAD_EPDC_GDRL__ENET2_RGMII_TX_CTL		0x71
64*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDCE1__ENET2_RGMII_RXC		0x79
65*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDCLK__ENET2_RGMII_RD0		0x79
66*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDLE__ENET2_RGMII_RD1		0x79
67*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDOE__ENET2_RGMII_RD2		0x79
68*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDSHR__ENET2_RGMII_RD3		0x79
69*4882a593Smuzhiyun			MX7D_PAD_EPDC_SDCE0__ENET2_RGMII_RX_CTL		0x79
70*4882a593Smuzhiyun			/* Reset: SION, 100kPU, SRE_FAST, DSE_X1 */
71*4882a593Smuzhiyun			MX7D_PAD_EPDC_BDR0__GPIO2_IO28		0x40000070
72*4882a593Smuzhiyun			/* INT/PWDN: SION, 100kPU, HYS, SRE_FAST, DSE_X1 */
73*4882a593Smuzhiyun			MX7D_PAD_EPDC_PWR_STAT__GPIO2_IO31	0x40000078
74*4882a593Smuzhiyun		>;
75*4882a593Smuzhiyun	};
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun	pinctrl_pcie: pciegrp {
78*4882a593Smuzhiyun		fsl,pins = <
79*4882a593Smuzhiyun			/* #pcie_wake */
80*4882a593Smuzhiyun			MX7D_PAD_EPDC_PWR_COM__GPIO2_IO30		0x70
81*4882a593Smuzhiyun			/* #pcie_rst */
82*4882a593Smuzhiyun			MX7D_PAD_SD2_CLK__GPIO5_IO12			0x70
83*4882a593Smuzhiyun			/* #pcie_dis */
84*4882a593Smuzhiyun			MX7D_PAD_EPDC_BDR1__GPIO2_IO29			0x70
85*4882a593Smuzhiyun		>;
86*4882a593Smuzhiyun	};
87*4882a593Smuzhiyun};
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun&iomuxc_lpsr {
90*4882a593Smuzhiyun	pinctrl_usbotg2: usbotg2grp {
91*4882a593Smuzhiyun		fsl,pins = <
92*4882a593Smuzhiyun			MX7D_PAD_LPSR_GPIO1_IO06__USB_OTG2_OC	0x5c
93*4882a593Smuzhiyun			MX7D_PAD_LPSR_GPIO1_IO07__GPIO1_IO7	0x59
94*4882a593Smuzhiyun		>;
95*4882a593Smuzhiyun	};
96*4882a593Smuzhiyun};
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun&pcie {
99*4882a593Smuzhiyun	pinctrl-names = "default";
100*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_pcie>;
101*4882a593Smuzhiyun	/* 1.5V logically from 3.3V */
102*4882a593Smuzhiyun	/* probe deferral not supported */
103*4882a593Smuzhiyun	/* pcie-bus-supply = <&reg_mpcie_1v5>; */
104*4882a593Smuzhiyun	reset-gpio = <&gpio5 12 GPIO_ACTIVE_LOW>;
105*4882a593Smuzhiyun	disable-gpio = <&gpio2 29 GPIO_ACTIVE_LOW>;
106*4882a593Smuzhiyun	power-on-gpio = <&gpio2 30 GPIO_ACTIVE_LOW>;
107*4882a593Smuzhiyun	status = "okay";
108*4882a593Smuzhiyun};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun&usbotg2 {
111*4882a593Smuzhiyun	pinctrl-names = "default";
112*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_usbotg2>;
113*4882a593Smuzhiyun	vbus-supply = <&reg_usb_otg2_vbus>;
114*4882a593Smuzhiyun	srp-disable;
115*4882a593Smuzhiyun	hnp-disable;
116*4882a593Smuzhiyun	adp-disable;
117*4882a593Smuzhiyun	dr_mode = "host";
118*4882a593Smuzhiyun	status = "okay";
119*4882a593Smuzhiyun};
120