18c2ecf20Sopenharmony_ci* APM X-Gene 15Gbps Multi-purpose PHY nodes
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciPHY nodes are defined to describe on-chip 15Gbps Multi-purpose PHY. Each
48c2ecf20Sopenharmony_ciPHY (pair of lanes) has its own node.
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciRequired properties:
78c2ecf20Sopenharmony_ci- compatible		: Shall be "apm,xgene-phy".
88c2ecf20Sopenharmony_ci- reg			: PHY memory resource is the SDS PHY access resource.
98c2ecf20Sopenharmony_ci- #phy-cells		: Shall be 1 as it expects one argument for setting
108c2ecf20Sopenharmony_ci			  the mode of the PHY. Possible values are 0 (SATA),
118c2ecf20Sopenharmony_ci			  1 (SGMII), 2 (PCIe), 3 (USB), and 4 (XFI).
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciOptional properties:
148c2ecf20Sopenharmony_ci- status		: Shall be "ok" if enabled or "disabled" if disabled.
158c2ecf20Sopenharmony_ci			  Default is "ok".
168c2ecf20Sopenharmony_ci- clocks		: Reference to the clock entry.
178c2ecf20Sopenharmony_ci- apm,tx-eye-tuning	: Manual control to fine tune the capture of the serial
188c2ecf20Sopenharmony_ci			  bit lines from the automatic calibrated position.
198c2ecf20Sopenharmony_ci			  Two set of 3-tuple setting for each (up to 3)
208c2ecf20Sopenharmony_ci			  supported link speed on the host. Range from 0 to
218c2ecf20Sopenharmony_ci			  127 in unit of one bit period. Default is 10.
228c2ecf20Sopenharmony_ci- apm,tx-eye-direction	: Eye tuning manual control direction. 0 means sample
238c2ecf20Sopenharmony_ci			  data earlier than the nominal sampling point. 1 means
248c2ecf20Sopenharmony_ci			  sample data later than the nominal sampling point.
258c2ecf20Sopenharmony_ci			  Two set of 3-tuple setting for each (up to 3)
268c2ecf20Sopenharmony_ci			  supported link speed on the host. Default is 0.
278c2ecf20Sopenharmony_ci- apm,tx-boost-gain	: Frequency boost AC (LSB 3-bit) and DC (2-bit)
288c2ecf20Sopenharmony_ci			  gain control. Two set of 3-tuple setting for each
298c2ecf20Sopenharmony_ci			  (up to 3) supported link speed on the host. Range is
308c2ecf20Sopenharmony_ci			  between 0 to 31 in unit of dB. Default is 3.
318c2ecf20Sopenharmony_ci- apm,tx-amplitude	: Amplitude control. Two set of 3-tuple setting for
328c2ecf20Sopenharmony_ci			  each (up to 3) supported link speed on the host.
338c2ecf20Sopenharmony_ci			  Range is between 0 to 199500 in unit of uV.
348c2ecf20Sopenharmony_ci			  Default is 199500 uV.
358c2ecf20Sopenharmony_ci- apm,tx-pre-cursor1	: 1st pre-cursor emphasis taps control. Two set of
368c2ecf20Sopenharmony_ci			  3-tuple setting for each (up to 3) supported link
378c2ecf20Sopenharmony_ci			  speed on the host. Range is 0 to 273000 in unit of
388c2ecf20Sopenharmony_ci			  uV. Default is 0.
398c2ecf20Sopenharmony_ci- apm,tx-pre-cursor2	: 2st pre-cursor emphasis taps control. Two set of
408c2ecf20Sopenharmony_ci			  3-tuple setting for each (up to 3) supported link
418c2ecf20Sopenharmony_ci			  speed on the host. Range is 0 to 127400 in unit uV.
428c2ecf20Sopenharmony_ci			  Default is 0x0.
438c2ecf20Sopenharmony_ci- apm,tx-post-cursor	: Post-cursor emphasis taps control. Two set of
448c2ecf20Sopenharmony_ci			  3-tuple setting for Gen1, Gen2, and Gen3. Range is
458c2ecf20Sopenharmony_ci			  between 0 to 0x1f in unit of 18.2mV. Default is 0xf.
468c2ecf20Sopenharmony_ci- apm,tx-speed		: Tx operating speed. One set of 3-tuple for each
478c2ecf20Sopenharmony_ci			  supported link speed on the host.
488c2ecf20Sopenharmony_ci			   0 = 1-2Gbps
498c2ecf20Sopenharmony_ci			   1 = 2-4Gbps (1st tuple default)
508c2ecf20Sopenharmony_ci			   2 = 4-8Gbps
518c2ecf20Sopenharmony_ci			   3 = 8-15Gbps (2nd tuple default)
528c2ecf20Sopenharmony_ci			   4 = 2.5-4Gbps
538c2ecf20Sopenharmony_ci			   5 = 4-5Gbps
548c2ecf20Sopenharmony_ci			   6 = 5-6Gbps
558c2ecf20Sopenharmony_ci			   7 = 6-16Gbps (3rd tuple default)
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ciNOTE: PHY override parameters are board specific setting.
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ciExample:
608c2ecf20Sopenharmony_ci		phy1: phy@1f21a000 {
618c2ecf20Sopenharmony_ci			compatible = "apm,xgene-phy";
628c2ecf20Sopenharmony_ci			reg = <0x0 0x1f21a000 0x0 0x100>;
638c2ecf20Sopenharmony_ci			#phy-cells = <1>;
648c2ecf20Sopenharmony_ci		};
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ci		phy2: phy@1f22a000 {
678c2ecf20Sopenharmony_ci			compatible = "apm,xgene-phy";
688c2ecf20Sopenharmony_ci			reg = <0x0 0x1f22a000 0x0 0x100>;
698c2ecf20Sopenharmony_ci			#phy-cells = <1>;
708c2ecf20Sopenharmony_ci		};
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ci		phy3: phy@1f23a000 {
738c2ecf20Sopenharmony_ci			compatible = "apm,xgene-phy";
748c2ecf20Sopenharmony_ci			reg = <0x0 0x1f23a000 0x0 0x100>;
758c2ecf20Sopenharmony_ci			#phy-cells = <1>;
768c2ecf20Sopenharmony_ci		};
77