blob: 7148234a4f1d7a5b601264d1dd52ed8f31d79d89 [file] [log] [blame]
Marek Vasut4d573d52022-05-21 16:56:26 +02001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (C) 2022 Marek Vasut <marex@denx.de>
Marek Vasutd1aebfa2022-08-12 22:41:50 +02004 *
5 * DHCOM iMX8MP variant:
6 * DHCM-iMX8ML8-C160-R409-F1638-SPI16-GE-CAN2-SD-RTC-WBTA-ADC-T-RGB-CSI2-HS-I-01D2
7 * DHCOM PCB number: 660-100 or newer
8 * PDK2 PCB number: 516-400 or newer
Marek Vasut4d573d52022-05-21 16:56:26 +02009 */
10
11/dts-v1/;
12
13#include <dt-bindings/leds/common.h>
14#include <dt-bindings/net/qca-ar803x.h>
15#include <dt-bindings/phy/phy-imx8-pcie.h>
16#include "imx8mp-dhcom-som.dtsi"
17
18/ {
19 model = "DH electronics i.MX8M Plus DHCOM Premium Developer Kit (2)";
20 compatible = "dh,imx8mp-dhcom-pdk2", "fsl,imx8mp";
21
22 chosen {
23 stdout-path = &uart1;
24 };
25
26 gpio-keys {
27 #size-cells = <0>;
28 compatible = "gpio-keys";
29
30 button-0 {
31 gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; /* GPIO A */
32 label = "TA1-GPIO-A";
33 linux,code = <KEY_A>;
34 pinctrl-0 = <&pinctrl_dhcom_a>;
35 pinctrl-names = "default";
36 wakeup-source;
37 };
38
39 button-1 {
40 gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; /* GPIO B */
41 label = "TA2-GPIO-B";
42 linux,code = <KEY_B>;
43 pinctrl-0 = <&pinctrl_dhcom_b>;
44 pinctrl-names = "default";
45 wakeup-source;
46 };
47
48 button-2 {
49 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>; /* GPIO C */
50 label = "TA3-GPIO-C";
51 linux,code = <KEY_C>;
52 pinctrl-0 = <&pinctrl_dhcom_c>;
53 pinctrl-names = "default";
54 wakeup-source;
55 };
56
57 button-3 {
58 gpios = <&gpio4 27 GPIO_ACTIVE_LOW>; /* GPIO D */
59 label = "TA4-GPIO-D";
60 linux,code = <KEY_D>;
61 pinctrl-0 = <&pinctrl_dhcom_d>;
62 pinctrl-names = "default";
63 wakeup-source;
64 };
65 };
66
67 led {
68 compatible = "gpio-leds";
69
70 led-5 {
71 color = <LED_COLOR_ID_GREEN>;
72 default-state = "off";
73 function = LED_FUNCTION_INDICATOR;
74 gpios = <&gpio5 22 GPIO_ACTIVE_HIGH>; /* GPIO E */
75 pinctrl-0 = <&pinctrl_dhcom_e>;
76 pinctrl-names = "default";
77 };
78
79 led-6 {
80 color = <LED_COLOR_ID_GREEN>;
81 default-state = "off";
82 function = LED_FUNCTION_INDICATOR;
83 gpios = <&gpio5 23 GPIO_ACTIVE_HIGH>; /* GPIO F */
84 pinctrl-0 = <&pinctrl_dhcom_f>;
85 pinctrl-names = "default";
86 };
87
88 led-7 {
89 color = <LED_COLOR_ID_GREEN>;
90 default-state = "off";
91 function = LED_FUNCTION_INDICATOR;
92 gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; /* GPIO H */
93 pinctrl-0 = <&pinctrl_dhcom_h>;
94 pinctrl-names = "default";
95 };
96
97 led-8 {
98 color = <LED_COLOR_ID_GREEN>;
99 default-state = "off";
100 function = LED_FUNCTION_INDICATOR;
101 gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; /* GPIO I */
102 pinctrl-0 = <&pinctrl_dhcom_i>;
103 pinctrl-names = "default";
104 };
105 };
106};
107
108/*
109 * PDK2 carrier board uses SoM with KSZ9131 populated and connected to
110 * SoM EQoS ethernet RGMII interface. Remove the other SoM PHY DT node.
111 */
112/delete-node/ &ethphy0f;
113
114/*
115 * PDK2 carrier board has KSZ9021 PHY populated and connected to SoM FEC
116 * ethernet RGMII interface. The SoM is not populated with second FEC PHY.
117 */
118/delete-node/ &ethphy1f;
119
120&fec { /* Second ethernet */
121 phy-handle = <&ethphypdk>;
122
123 mdio {
124 ethphypdk: ethernet-phy@7 { /* KSZ 9021 */
125 compatible = "ethernet-phy-ieee802.3-c22";
126 interrupt-parent = <&gpio4>;
127 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
128 pinctrl-0 = <&pinctrl_ethphy1>;
129 pinctrl-names = "default";
130 reg = <7>;
131 reset-assert-us = <1000>;
132 reset-deassert-us = <1000>;
133 reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
134 rxc-skew-ps = <3000>;
135 rxd0-skew-ps = <0>;
136 rxd1-skew-ps = <0>;
137 rxd2-skew-ps = <0>;
138 rxd3-skew-ps = <0>;
139 rxdv-skew-ps = <0>;
140 txc-skew-ps = <3000>;
141 txd0-skew-ps = <0>;
142 txd1-skew-ps = <0>;
143 txd2-skew-ps = <0>;
144 txd3-skew-ps = <0>;
145 txen-skew-ps = <0>;
146 max-speed = <100>;
147 };
148 };
149};
150
151&flexcan1 {
152 status = "okay";
153};
154
155&usb3_1 {
156 fsl,over-current-active-low;
157};