1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/phy/apm,xgene-phy.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: APM X-Gene 15Gbps Multi-purpose PHY
maintainers:
- Khuong Dinh <khuong@os.amperecomputing.com>
description:
PHY nodes are defined to describe on-chip 15Gbps Multi-purpose PHY. Each
PHY (pair of lanes) has its own node.
properties:
compatible:
items:
- const: apm,xgene-phy
reg:
maxItems: 1
'#phy-cells':
description:
Possible values are 0 (SATA), 1 (SGMII), 2 (PCIe), 3 (USB), and 4 (XFI).
const: 1
clocks:
maxItems: 1
apm,tx-eye-tuning:
description:
Manual control to fine tune the capture of the serial bit lines from the
automatic calibrated position. Two set of 3-tuple setting for each
supported link speed on the host. Range from 0 to 127 in unit of one bit
period.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
minimum: 0
maximum: 127
default: 10
apm,tx-eye-direction:
description:
Eye tuning manual control direction. 0 means sample data earlier than the
nominal sampling point. 1 means sample data later than the nominal
sampling point. Two set of 3-tuple setting for each supported link speed
on the host.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
enum: [0, 1]
default: 0
apm,tx-boost-gain:
description:
Frequency boost AC (LSB 3-bit) and DC (2-bit) gain control. Two set of
3-tuple setting for each supported link speed on the host. Range is
between 0 to 31 in unit of dB. Default is 3.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
minimum: 0
maximum: 31
apm,tx-amplitude:
description:
Amplitude control. Two set of 3-tuple setting for each supported link
speed on the host. Range is between 0 to 199500 in unit of uV.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
minimum: 0
maximum: 199500
default: 199500
apm,tx-pre-cursor1:
description:
1st pre-cursor emphasis taps control. Two set of 3-tuple setting for
each supported link speed on the host. Range is 0 to 273000 in unit of
uV.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
minimum: 0
maximum: 273000
default: 0
apm,tx-pre-cursor2:
description:
2nd pre-cursor emphasis taps control. Two set of 3-tuple setting for
each supported link speed on the host. Range is 0 to 127400 in unit uV.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
minimum: 0
maximum: 127400
default: 0
apm,tx-post-cursor:
description: |
Post-cursor emphasis taps control. Two set of 3-tuple setting for Gen1,
Gen2, and Gen3 link speeds. Range is between 0 to 31 in unit of 18.2mV.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 2
maxItems: 2
items:
minItems: 3
maxItems: 3
items:
minimum: 0
maximum: 31
default: 0xf
apm,tx-speed:
description: >
Tx operating speed. One set of 3-tuple for each supported link speed on
the host:
0 = 1-2Gbps
1 = 2-4Gbps (1st tuple default)
2 = 4-8Gbps
3 = 8-15Gbps (2nd tuple default)
4 = 2.5-4Gbps
5 = 4-5Gbps
6 = 5-6Gbps
7 = 6-16Gbps (3rd tuple default).
$ref: /schemas/types.yaml#/definitions/uint32-array
minItems: 3
maxItems: 3
items:
maximum: 7
additionalProperties: false
examples:
- |
phy@1f21a000 {
compatible = "apm,xgene-phy";
reg = <0x1f21a000 0x100>;
#phy-cells = <1>;
};
|