mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-01 15:14:52 +00:00
dt-bindings: phy: Convert apm,xgene-phy to DT schema
Convert the APM X-Gene PHY binding to DT schema format. It's a straight forward conversion. Signed-off-by: Rob Herring (Arm) <robh@kernel.org> Link: https://lore.kernel.org/r/20250607212424.739972-1-robh@kernel.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
77d2fa54a9
commit
65ad0d068c
169
Documentation/devicetree/bindings/phy/apm,xgene-phy.yaml
Normal file
169
Documentation/devicetree/bindings/phy/apm,xgene-phy.yaml
Normal file
@ -0,0 +1,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>;
|
||||||
|
};
|
@ -1,76 +0,0 @@
|
|||||||
* APM X-Gene 15Gbps Multi-purpose PHY nodes
|
|
||||||
|
|
||||||
PHY nodes are defined to describe on-chip 15Gbps Multi-purpose PHY. Each
|
|
||||||
PHY (pair of lanes) has its own node.
|
|
||||||
|
|
||||||
Required properties:
|
|
||||||
- compatible : Shall be "apm,xgene-phy".
|
|
||||||
- reg : PHY memory resource is the SDS PHY access resource.
|
|
||||||
- #phy-cells : Shall be 1 as it expects one argument for setting
|
|
||||||
the mode of the PHY. Possible values are 0 (SATA),
|
|
||||||
1 (SGMII), 2 (PCIe), 3 (USB), and 4 (XFI).
|
|
||||||
|
|
||||||
Optional properties:
|
|
||||||
- status : Shall be "ok" if enabled or "disabled" if disabled.
|
|
||||||
Default is "ok".
|
|
||||||
- clocks : Reference to the clock entry.
|
|
||||||
- apm,tx-eye-tuning : 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 (up to 3)
|
|
||||||
supported link speed on the host. Range from 0 to
|
|
||||||
127 in unit of one bit period. Default is 10.
|
|
||||||
- apm,tx-eye-direction : 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 (up to 3)
|
|
||||||
supported link speed on the host. Default is 0.
|
|
||||||
- apm,tx-boost-gain : Frequency boost AC (LSB 3-bit) and DC (2-bit)
|
|
||||||
gain control. Two set of 3-tuple setting for each
|
|
||||||
(up to 3) supported link speed on the host. Range is
|
|
||||||
between 0 to 31 in unit of dB. Default is 3.
|
|
||||||
- apm,tx-amplitude : Amplitude control. Two set of 3-tuple setting for
|
|
||||||
each (up to 3) supported link speed on the host.
|
|
||||||
Range is between 0 to 199500 in unit of uV.
|
|
||||||
Default is 199500 uV.
|
|
||||||
- apm,tx-pre-cursor1 : 1st pre-cursor emphasis taps control. Two set of
|
|
||||||
3-tuple setting for each (up to 3) supported link
|
|
||||||
speed on the host. Range is 0 to 273000 in unit of
|
|
||||||
uV. Default is 0.
|
|
||||||
- apm,tx-pre-cursor2 : 2nd pre-cursor emphasis taps control. Two set of
|
|
||||||
3-tuple setting for each (up to 3) supported link
|
|
||||||
speed on the host. Range is 0 to 127400 in unit uV.
|
|
||||||
Default is 0x0.
|
|
||||||
- apm,tx-post-cursor : Post-cursor emphasis taps control. Two set of
|
|
||||||
3-tuple setting for Gen1, Gen2, and Gen3. Range is
|
|
||||||
between 0 to 0x1f in unit of 18.2mV. Default is 0xf.
|
|
||||||
- apm,tx-speed : 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)
|
|
||||||
|
|
||||||
NOTE: PHY override parameters are board specific setting.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
phy1: phy@1f21a000 {
|
|
||||||
compatible = "apm,xgene-phy";
|
|
||||||
reg = <0x0 0x1f21a000 0x0 0x100>;
|
|
||||||
#phy-cells = <1>;
|
|
||||||
};
|
|
||||||
|
|
||||||
phy2: phy@1f22a000 {
|
|
||||||
compatible = "apm,xgene-phy";
|
|
||||||
reg = <0x0 0x1f22a000 0x0 0x100>;
|
|
||||||
#phy-cells = <1>;
|
|
||||||
};
|
|
||||||
|
|
||||||
phy3: phy@1f23a000 {
|
|
||||||
compatible = "apm,xgene-phy";
|
|
||||||
reg = <0x0 0x1f23a000 0x0 0x100>;
|
|
||||||
#phy-cells = <1>;
|
|
||||||
};
|
|
Loading…
Reference in New Issue
Block a user