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