1Small Form Factor (SFF) Committee Small Form-factor Pluggable (SFP) 2Transceiver 3 4Required properties: 5 6- compatible : must be one of 7 "sff,sfp" for SFP modules 8 "sff,sff" for soldered down SFF modules 9 10- i2c-bus : phandle of an I2C bus controller for the SFP two wire serial 11 interface 12 13Optional Properties: 14 15- mod-def0-gpios : GPIO phandle and a specifier of the MOD-DEF0 (AKA Mod_ABS) 16 module presence input gpio signal, active (module absent) high. Must 17 not be present for SFF modules 18 19- los-gpios : GPIO phandle and a specifier of the Receiver Loss of Signal 20 Indication input gpio signal, active (signal lost) high 21 22- tx-fault-gpios : GPIO phandle and a specifier of the Module Transmitter 23 Fault input gpio signal, active (fault condition) high 24 25- tx-disable-gpios : GPIO phandle and a specifier of the Transmitter Disable 26 output gpio signal, active (Tx disable) high 27 28- rate-select0-gpios : GPIO phandle and a specifier of the Rx Signaling Rate 29 Select (AKA RS0) output gpio signal, low: low Rx rate, high: high Rx rate 30 Must not be present for SFF modules 31 32- rate-select1-gpios : GPIO phandle and a specifier of the Tx Signaling Rate 33 Select (AKA RS1) output gpio signal (SFP+ only), low: low Tx rate, high: 34 high Tx rate. Must not be present for SFF modules 35 36- maximum-power-milliwatt : Maximum module power consumption 37 Specifies the maximum power consumption allowable by a module in the 38 slot, in milli-Watts. Presently, modules can be up to 1W, 1.5W or 2W. 39 40Example #1: Direct serdes to SFP connection 41 42sfp_eth3: sfp-eth3 { 43 compatible = "sff,sfp"; 44 i2c-bus = <&sfp_1g_i2c>; 45 los-gpios = <&cpm_gpio2 22 GPIO_ACTIVE_HIGH>; 46 mod-def0-gpios = <&cpm_gpio2 21 GPIO_ACTIVE_LOW>; 47 maximum-power-milliwatt = <1000>; 48 pinctrl-names = "default"; 49 pinctrl-0 = <&cpm_sfp_1g_pins &cps_sfp_1g_pins>; 50 tx-disable-gpios = <&cps_gpio1 24 GPIO_ACTIVE_HIGH>; 51 tx-fault-gpios = <&cpm_gpio2 19 GPIO_ACTIVE_HIGH>; 52}; 53 54&cps_emac3 { 55 phy-names = "comphy"; 56 phys = <&cps_comphy5 0>; 57 sfp = <&sfp_eth3>; 58}; 59 60Example #2: Serdes to PHY to SFP connection 61 62sfp_eth0: sfp-eth0 { 63 compatible = "sff,sfp"; 64 i2c-bus = <&sfpp0_i2c>; 65 los-gpios = <&cps_gpio1 28 GPIO_ACTIVE_HIGH>; 66 mod-def0-gpios = <&cps_gpio1 27 GPIO_ACTIVE_LOW>; 67 pinctrl-names = "default"; 68 pinctrl-0 = <&cps_sfpp0_pins>; 69 tx-disable-gpios = <&cps_gpio1 29 GPIO_ACTIVE_HIGH>; 70 tx-fault-gpios = <&cps_gpio1 26 GPIO_ACTIVE_HIGH>; 71}; 72 73p0_phy: ethernet-phy@0 { 74 compatible = "ethernet-phy-ieee802.3-c45"; 75 pinctrl-names = "default"; 76 pinctrl-0 = <&cpm_phy0_pins &cps_phy0_pins>; 77 reg = <0>; 78 interrupt = <&cpm_gpio2 18 IRQ_TYPE_EDGE_FALLING>; 79 sfp = <&sfp_eth0>; 80}; 81 82&cpm_eth0 { 83 phy = <&p0_phy>; 84 phy-mode = "10gbase-kr"; 85}; 86