Skip to content

Commit 888bd0e

Browse files
dt-bindings: ethernet: eswin: Document for EIC7700 SoC
Add ESWIN EIC7700 Ethernet controller, supporting clock configuration, delay adjustment and speed adaptive functions. Signed-off-by: Zhi Li <[email protected]> Signed-off-by: Shangjuan Wei <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
1 parent 7dbef65 commit 888bd0e

File tree

1 file changed

+127
-0
lines changed

1 file changed

+127
-0
lines changed
Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/net/eswin,eic7700-eth.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Eswin EIC7700 SOC Eth Controller
8+
9+
maintainers:
10+
- Shuang Liang <[email protected]>
11+
- Zhi Li <[email protected]>
12+
- Shangjuan Wei <[email protected]>
13+
14+
description:
15+
Platform glue layer implementation for STMMAC Ethernet driver.
16+
17+
select:
18+
properties:
19+
compatible:
20+
contains:
21+
enum:
22+
- eswin,eic7700-qos-eth
23+
required:
24+
- compatible
25+
26+
allOf:
27+
- $ref: snps,dwmac.yaml#
28+
29+
properties:
30+
compatible:
31+
items:
32+
- const: eswin,eic7700-qos-eth
33+
- const: snps,dwmac-5.20
34+
35+
reg:
36+
maxItems: 1
37+
38+
interrupts:
39+
maxItems: 1
40+
41+
interrupt-names:
42+
const: macirq
43+
44+
clocks:
45+
items:
46+
- description: AXI clock
47+
- description: Configuration clock
48+
- description: GMAC main clock
49+
- description: Tx clock
50+
51+
clock-names:
52+
items:
53+
- const: axi
54+
- const: cfg
55+
- const: stmmaceth
56+
- const: tx
57+
58+
resets:
59+
maxItems: 1
60+
61+
reset-names:
62+
items:
63+
- const: stmmaceth
64+
65+
rx-internal-delay-ps:
66+
enum: [0, 200, 600, 1200, 1600, 1800, 2000, 2200, 2400]
67+
68+
tx-internal-delay-ps:
69+
enum: [0, 200, 600, 1200, 1600, 1800, 2000, 2200, 2400]
70+
71+
eswin,hsp-sp-csr:
72+
$ref: /schemas/types.yaml#/definitions/phandle-array
73+
items:
74+
- description: Phandle to HSP(High-Speed Peripheral) device
75+
- description: Offset of phy control register for internal
76+
or external clock selection
77+
- description: Offset of AXI clock controller Low-Power request
78+
register
79+
- description: Offset of register controlling TX/RX clock delay
80+
description: |
81+
High-Speed Peripheral device needed to configure clock selection,
82+
clock low-power mode and clock delay.
83+
84+
required:
85+
- compatible
86+
- reg
87+
- clocks
88+
- clock-names
89+
- interrupts
90+
- interrupt-names
91+
- phy-mode
92+
- resets
93+
- reset-names
94+
- rx-internal-delay-ps
95+
- tx-internal-delay-ps
96+
- eswin,hsp-sp-csr
97+
98+
unevaluatedProperties: false
99+
100+
examples:
101+
- |
102+
ethernet@50400000 {
103+
compatible = "eswin,eic7700-qos-eth", "snps,dwmac-5.20";
104+
reg = <0x50400000 0x10000>;
105+
clocks = <&d0_clock 186>, <&d0_clock 171>, <&d0_clock 40>,
106+
<&d0_clock 193>;
107+
clock-names = "axi", "cfg", "stmmaceth", "tx";
108+
interrupt-parent = <&plic>;
109+
interrupts = <61>;
110+
interrupt-names = "macirq";
111+
phy-mode = "rgmii-id";
112+
phy-handle = <&phy0>;
113+
resets = <&reset 95>;
114+
reset-names = "stmmaceth";
115+
rx-internal-delay-ps = <200>;
116+
tx-internal-delay-ps = <200>;
117+
eswin,hsp-sp-csr = <&hsp_sp_csr 0x100 0x108 0x118>;
118+
snps,axi-config = <&stmmac_axi_setup>;
119+
snps,aal;
120+
snps,fixed-burst;
121+
snps,tso;
122+
stmmac_axi_setup: stmmac-axi-config {
123+
snps,blen = <0 0 0 0 16 8 4>;
124+
snps,rd_osr_lmt = <2>;
125+
snps,wr_osr_lmt = <2>;
126+
};
127+
};

0 commit comments

Comments
 (0)