1
+ /*
2
+ * Copyright (c) 2021 Analog Devices Incorporated
3
+ * Author: Nathan Barrett-Morrison <nathan.morrison@timesys.com>
4
+ */
5
+
6
+ /dts-v1/;
7
+
8
+ #include "sc598-som.dtsi"
9
+
10
+ / {
11
+ model = "ADI 64-bit SC598 SOM EZ Lite";
12
+ compatible = "adi,sc598-som-ezlite", "adi,sc59x-64";
13
+
14
+ clocks {
15
+ compatible = "simple-bus";
16
+ mclk: mclk {
17
+ compatible = "fixed-clock";
18
+ #clock-cells = <0>;
19
+ clock-frequency = <24576000>;
20
+ clock-output-names = "mclk";
21
+ };
22
+ };
23
+
24
+ scb {
25
+ sound {
26
+ compatible = "adi,sc5xx-asoc-card";
27
+ adi,cpu-dai = <&i2s0>;
28
+ adi,codec = <&adau1372>;
29
+ };
30
+ };
31
+ };
32
+
33
+ &i2c2 {
34
+ gpio_expander: adp5588@30 {
35
+ compatible = "adi,adp5588-gpio";
36
+ gpio-controller;
37
+ #gpio-cells = <2>;
38
+ reg = <0x30>;
39
+ status = "okay";
40
+
41
+ usb-spi0 {
42
+ gpio-hog;
43
+ gpios = <8 GPIO_ACTIVE_HIGH>;
44
+ output-high;
45
+ line-name = "usb_spi0_en";
46
+ };
47
+
48
+ usb-spi1 {
49
+ gpio-hog;
50
+ gpios = <9 GPIO_ACTIVE_HIGH>;
51
+ output-high;
52
+ line-name = "usb_spi1_en";
53
+ };
54
+
55
+ usb-qspi-en {
56
+ gpio-hog;
57
+ gpios = <10 GPIO_ACTIVE_HIGH>;
58
+ output-high;
59
+ line-name = "usb_qspi_en";
60
+ };
61
+
62
+ usb-qspi-reset {
63
+ gpio-hog;
64
+ gpios = <11 GPIO_ACTIVE_HIGH>;
65
+ output-low;
66
+ line-name = "usb_qspi_reset";
67
+ };
68
+
69
+ eth0-reset {
70
+ gpio-hog;
71
+ gpios = <12 GPIO_ACTIVE_HIGH>;
72
+ output-high;
73
+ line-name = "~eth0-reset";
74
+ };
75
+
76
+ adau1372-pwrdwn {
77
+ gpio-hog;
78
+ gpios = <13 GPIO_ACTIVE_HIGH>;
79
+ output-high;
80
+ line-name = "adau1372_pwrdwn";
81
+ };
82
+
83
+ led1 {
84
+ gpio-hog;
85
+ gpios = <15 GPIO_ACTIVE_HIGH>;
86
+ output-low;
87
+ line-name = "led1-en";
88
+ };
89
+
90
+ led2 {
91
+ gpio-hog;
92
+ gpios = <16 GPIO_ACTIVE_HIGH>;
93
+ output-low;
94
+ line-name = "led2-en";
95
+ };
96
+
97
+ led3 {
98
+ gpio-hog;
99
+ gpios = <17 GPIO_ACTIVE_HIGH>;
100
+ output-low;
101
+ line-name = "led3-en";
102
+ };
103
+ };
104
+
105
+ adau1372: adau1372@0x3c {
106
+ compatible = "adi,adau1372";
107
+ reg = <0x3c>;
108
+ clock-names = "mclk";
109
+ clocks = <&mclk>;
110
+ };
111
+ };
112
+
113
+ &emac0 {
114
+ snps,reset-active-low;
115
+ snps,reset-delays-us = <0 200 500>;
116
+ phy-handle = <&adin1300>;
117
+ phy-mode = "rgmii-id";
118
+ pinctrl-names = "default";
119
+ pinctrl-0 = <ð0_default>;
120
+ status = "okay";
121
+ snps,mtl-rx-config = <&emac0rxconfig>;
122
+ snps,mtl-tx-config = <&emac0txconfig>;
123
+
124
+ emac0txconfig: tx-config {
125
+ snps,tx-queues-to-use = <3>;
126
+
127
+ queue0 {
128
+ snps,dcb-algorithm;
129
+ };
130
+
131
+ queue1 {
132
+ snps,dcb-algorithm;
133
+ };
134
+
135
+ queue2 {
136
+ snps,dcb-algorithm;
137
+ };
138
+ };
139
+
140
+ emac0rxconfig: rx-config {
141
+ snps,rx-queues-to-use = <1>;
142
+
143
+ queue0 {
144
+ snps,dcb-algorithm;
145
+ };
146
+
147
+ queue1 {
148
+ snps,dcb-algorithm;
149
+ };
150
+
151
+ queue2 {
152
+ snps,dcb-algorithm;
153
+ };
154
+ };
155
+
156
+ mdio0 {
157
+ compatible = "snps,dwmac-mdio";
158
+ #address-cells = <1>;
159
+ #size-cells = <0>;
160
+ adin1300: ethernet-phy@0 {
161
+ reg = <0>;
162
+ };
163
+ };
164
+
165
+ };
166
+
167
+ &emac1 {
168
+ status = "disabled";
169
+ };
170
+
171
+ &sru_ctrl_dai0 {
172
+ status = "okay";
173
+
174
+ sru_dai0: sru_dai0_mux {
175
+ route {
176
+ sru-routing =
177
+ /* 1362 TX LRCLK */
178
+ <DAI0_LOW_F DAI0_PBEN01_I>, /* set DAI0_PIN01 to input */
179
+ <DAI0_PB01_O_ABCDE SPT0_AFS_I>, /* route DAI0_PIN01 to SPT0_AFS */
180
+
181
+ /* 1363 TX BCLK */
182
+ <DAI0_LOW_F DAI0_PBEN02_I>, /* set DAI0_PIN02 to input */
183
+ <DAI0_PB02_O_ABCDE SPT0_ACLK_I>, /* route DAI0_PIN02 to SPT0_ACLK */
184
+
185
+ /* 1363 TX DAC_SDATA/MP0 */
186
+ <DAI0_HIGH_F DAI0_PBEN03_I>, /* set DAI0_PIN03 to output */
187
+ <SPT0_AD0_O_BD DAI0_PB03_I>, /* route SPT0_AD0 to DAI0_PIN03 */
188
+
189
+ /* 1362 RX LRCLK */
190
+ <DAI0_LOW_F DAI0_PBEN01_I>, /* set DAI0_PIN01 to input */
191
+ <DAI0_PB01_O_ABCDE SPT0_BFS_I>, /* route DAI0_PIN01 to SPT0_BFS */
192
+
193
+ /* 1363 RX BCLK */
194
+ <DAI0_LOW_F DAI0_PBEN02_I>, /* set DAI0_PIN02 to input */
195
+ <DAI0_PB02_O_ABCDE SPT0_BCLK_I>, /* route DAI0_PIN02 to SPT0_BCLK */
196
+
197
+ /* 1363 RX ADC_SDATA0/MP1 */
198
+ <DAI0_LOW_F DAI0_PBEN04_I>, /* set DAI0_PIN04 to input */
199
+ <DAI0_PB04_O_ABCDE SPT0_BD0_I>, /* route DAI0_PIN04 to SPT0_BD0 */
200
+
201
+ /* 1363 RX ADC_SDATA1/MP6 */
202
+ <DAI0_LOW_F DAI0_PBEN05_I>, /* set DAI0_PIN05 to input */
203
+ <DAI0_PB05_O_ABCDE SPT0_BD1_I>; /* route DAI0_PIN05 to SPT0_BD1 */
204
+ };
205
+ };
206
+ };
207
+
208
+ &i2s0 {
209
+ pinctrl-names = "default";
210
+ pinctrl-0 = <&sru_dai0>;
211
+ status = "okay";
212
+ };
0 commit comments