18c2ecf20Sopenharmony_ciSmall Form Factor (SFF) Committee Small Form-factor Pluggable (SFP) 28c2ecf20Sopenharmony_ciTransceiver 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ciRequired properties: 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci- compatible : must be one of 78c2ecf20Sopenharmony_ci "sff,sfp" for SFP modules 88c2ecf20Sopenharmony_ci "sff,sff" for soldered down SFF modules 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci- i2c-bus : phandle of an I2C bus controller for the SFP two wire serial 118c2ecf20Sopenharmony_ci interface 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciOptional Properties: 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci- mod-def0-gpios : GPIO phandle and a specifier of the MOD-DEF0 (AKA Mod_ABS) 168c2ecf20Sopenharmony_ci module presence input gpio signal, active (module absent) high. Must 178c2ecf20Sopenharmony_ci not be present for SFF modules 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci- los-gpios : GPIO phandle and a specifier of the Receiver Loss of Signal 208c2ecf20Sopenharmony_ci Indication input gpio signal, active (signal lost) high 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci- tx-fault-gpios : GPIO phandle and a specifier of the Module Transmitter 238c2ecf20Sopenharmony_ci Fault input gpio signal, active (fault condition) high 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci- tx-disable-gpios : GPIO phandle and a specifier of the Transmitter Disable 268c2ecf20Sopenharmony_ci output gpio signal, active (Tx disable) high 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci- rate-select0-gpios : GPIO phandle and a specifier of the Rx Signaling Rate 298c2ecf20Sopenharmony_ci Select (AKA RS0) output gpio signal, low: low Rx rate, high: high Rx rate 308c2ecf20Sopenharmony_ci Must not be present for SFF modules 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci- rate-select1-gpios : GPIO phandle and a specifier of the Tx Signaling Rate 338c2ecf20Sopenharmony_ci Select (AKA RS1) output gpio signal (SFP+ only), low: low Tx rate, high: 348c2ecf20Sopenharmony_ci high Tx rate. Must not be present for SFF modules 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci- maximum-power-milliwatt : Maximum module power consumption 378c2ecf20Sopenharmony_ci Specifies the maximum power consumption allowable by a module in the 388c2ecf20Sopenharmony_ci slot, in milli-Watts. Presently, modules can be up to 1W, 1.5W or 2W. 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciExample #1: Direct serdes to SFP connection 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_cisfp_eth3: sfp-eth3 { 438c2ecf20Sopenharmony_ci compatible = "sff,sfp"; 448c2ecf20Sopenharmony_ci i2c-bus = <&sfp_1g_i2c>; 458c2ecf20Sopenharmony_ci los-gpios = <&cpm_gpio2 22 GPIO_ACTIVE_HIGH>; 468c2ecf20Sopenharmony_ci mod-def0-gpios = <&cpm_gpio2 21 GPIO_ACTIVE_LOW>; 478c2ecf20Sopenharmony_ci maximum-power-milliwatt = <1000>; 488c2ecf20Sopenharmony_ci pinctrl-names = "default"; 498c2ecf20Sopenharmony_ci pinctrl-0 = <&cpm_sfp_1g_pins &cps_sfp_1g_pins>; 508c2ecf20Sopenharmony_ci tx-disable-gpios = <&cps_gpio1 24 GPIO_ACTIVE_HIGH>; 518c2ecf20Sopenharmony_ci tx-fault-gpios = <&cpm_gpio2 19 GPIO_ACTIVE_HIGH>; 528c2ecf20Sopenharmony_ci}; 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci&cps_emac3 { 558c2ecf20Sopenharmony_ci phy-names = "comphy"; 568c2ecf20Sopenharmony_ci phys = <&cps_comphy5 0>; 578c2ecf20Sopenharmony_ci sfp = <&sfp_eth3>; 588c2ecf20Sopenharmony_ci}; 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ciExample #2: Serdes to PHY to SFP connection 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_cisfp_eth0: sfp-eth0 { 638c2ecf20Sopenharmony_ci compatible = "sff,sfp"; 648c2ecf20Sopenharmony_ci i2c-bus = <&sfpp0_i2c>; 658c2ecf20Sopenharmony_ci los-gpios = <&cps_gpio1 28 GPIO_ACTIVE_HIGH>; 668c2ecf20Sopenharmony_ci mod-def0-gpios = <&cps_gpio1 27 GPIO_ACTIVE_LOW>; 678c2ecf20Sopenharmony_ci pinctrl-names = "default"; 688c2ecf20Sopenharmony_ci pinctrl-0 = <&cps_sfpp0_pins>; 698c2ecf20Sopenharmony_ci tx-disable-gpios = <&cps_gpio1 29 GPIO_ACTIVE_HIGH>; 708c2ecf20Sopenharmony_ci tx-fault-gpios = <&cps_gpio1 26 GPIO_ACTIVE_HIGH>; 718c2ecf20Sopenharmony_ci}; 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_cip0_phy: ethernet-phy@0 { 748c2ecf20Sopenharmony_ci compatible = "ethernet-phy-ieee802.3-c45"; 758c2ecf20Sopenharmony_ci pinctrl-names = "default"; 768c2ecf20Sopenharmony_ci pinctrl-0 = <&cpm_phy0_pins &cps_phy0_pins>; 778c2ecf20Sopenharmony_ci reg = <0>; 788c2ecf20Sopenharmony_ci interrupt = <&cpm_gpio2 18 IRQ_TYPE_EDGE_FALLING>; 798c2ecf20Sopenharmony_ci sfp = <&sfp_eth0>; 808c2ecf20Sopenharmony_ci}; 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ci&cpm_eth0 { 838c2ecf20Sopenharmony_ci phy = <&p0_phy>; 848c2ecf20Sopenharmony_ci phy-mode = "10gbase-kr"; 858c2ecf20Sopenharmony_ci}; 86