Commit d7d27304 authored by Jakub Kicinski's avatar Jakub Kicinski

Merge branch 'dt-bindings-net-convert-sff-sfp-to-dtschema'

Ioana Ciornei says:

====================
dt-bindings: net: convert sff,sfp to dtschema

This patch set converts the sff,sfp to dtschema.

The first patch does a somewhat mechanical conversion without changing
anything else beside the format in which the dt binding is presented.

In the second patch we rename some dt nodes to be generic. The last two
patches change the GPIO related properties so that they uses the -gpios
preferred suffix. This way, all the DTBs are passing the validation
against the sff,sfp.yaml binding.
====================

Link: https://lore.kernel.org/r/20220707091437.446458-1-ioana.ciornei@nxp.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents 5022e221 4ce223e5
Small Form Factor (SFF) Committee Small Form-factor Pluggable (SFP)
Transceiver
Required properties:
- compatible : must be one of
"sff,sfp" for SFP modules
"sff,sff" for soldered down SFF modules
- i2c-bus : phandle of an I2C bus controller for the SFP two wire serial
interface
Optional Properties:
- mod-def0-gpios : GPIO phandle and a specifier of the MOD-DEF0 (AKA Mod_ABS)
module presence input gpio signal, active (module absent) high. Must
not be present for SFF modules
- los-gpios : GPIO phandle and a specifier of the Receiver Loss of Signal
Indication input gpio signal, active (signal lost) high
- tx-fault-gpios : GPIO phandle and a specifier of the Module Transmitter
Fault input gpio signal, active (fault condition) high
- tx-disable-gpios : GPIO phandle and a specifier of the Transmitter Disable
output gpio signal, active (Tx disable) high
- rate-select0-gpios : GPIO phandle and a specifier of the Rx Signaling Rate
Select (AKA RS0) output gpio signal, low: low Rx rate, high: high Rx rate
Must not be present for SFF modules
- rate-select1-gpios : GPIO phandle and a specifier of the Tx Signaling Rate
Select (AKA RS1) output gpio signal (SFP+ only), low: low Tx rate, high:
high Tx rate. Must not be present for SFF modules
- maximum-power-milliwatt : Maximum module power consumption
Specifies the maximum power consumption allowable by a module in the
slot, in milli-Watts. Presently, modules can be up to 1W, 1.5W or 2W.
Example #1: Direct serdes to SFP connection
sfp_eth3: sfp-eth3 {
compatible = "sff,sfp";
i2c-bus = <&sfp_1g_i2c>;
los-gpios = <&cpm_gpio2 22 GPIO_ACTIVE_HIGH>;
mod-def0-gpios = <&cpm_gpio2 21 GPIO_ACTIVE_LOW>;
maximum-power-milliwatt = <1000>;
pinctrl-names = "default";
pinctrl-0 = <&cpm_sfp_1g_pins &cps_sfp_1g_pins>;
tx-disable-gpios = <&cps_gpio1 24 GPIO_ACTIVE_HIGH>;
tx-fault-gpios = <&cpm_gpio2 19 GPIO_ACTIVE_HIGH>;
};
&cps_emac3 {
phy-names = "comphy";
phys = <&cps_comphy5 0>;
sfp = <&sfp_eth3>;
};
Example #2: Serdes to PHY to SFP connection
sfp_eth0: sfp-eth0 {
compatible = "sff,sfp";
i2c-bus = <&sfpp0_i2c>;
los-gpios = <&cps_gpio1 28 GPIO_ACTIVE_HIGH>;
mod-def0-gpios = <&cps_gpio1 27 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&cps_sfpp0_pins>;
tx-disable-gpios = <&cps_gpio1 29 GPIO_ACTIVE_HIGH>;
tx-fault-gpios = <&cps_gpio1 26 GPIO_ACTIVE_HIGH>;
};
p0_phy: ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
pinctrl-names = "default";
pinctrl-0 = <&cpm_phy0_pins &cps_phy0_pins>;
reg = <0>;
interrupt = <&cpm_gpio2 18 IRQ_TYPE_EDGE_FALLING>;
sfp = <&sfp_eth0>;
};
&cpm_eth0 {
phy = <&p0_phy>;
phy-mode = "10gbase-kr";
};
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: "http://devicetree.org/schemas/net/sff,sfp.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
title: Small Form Factor (SFF) Committee Small Form-factor Pluggable (SFP)
Transceiver
maintainers:
- Russell King <linux@armlinux.org.uk>
properties:
compatible:
enum:
- sff,sfp # for SFP modules
- sff,sff # for soldered down SFF modules
i2c-bus:
$ref: /schemas/types.yaml#/definitions/phandle
description:
phandle of an I2C bus controller for the SFP two wire serial
maximum-power-milliwatt:
maxItems: 1
description:
Maximum module power consumption Specifies the maximum power consumption
allowable by a module in the slot, in milli-Watts. Presently, modules can
be up to 1W, 1.5W or 2W.
"mod-def0-gpios":
maxItems: 1
description:
GPIO phandle and a specifier of the MOD-DEF0 (AKA Mod_ABS) module
presence input gpio signal, active (module absent) high. Must not be
present for SFF modules
"los-gpios":
maxItems: 1
description:
GPIO phandle and a specifier of the Receiver Loss of Signal Indication
input gpio signal, active (signal lost) high
"tx-fault-gpios":
maxItems: 1
description:
GPIO phandle and a specifier of the Module Transmitter Fault input gpio
signal, active (fault condition) high
"tx-disable-gpios":
maxItems: 1
description:
GPIO phandle and a specifier of the Transmitter Disable output gpio
signal, active (Tx disable) high
"rate-select0-gpios":
maxItems: 1
description:
GPIO phandle and a specifier of the Rx Signaling Rate Select (AKA RS0)
output gpio signal, low - low Rx rate, high - high Rx rate Must not be
present for SFF modules
"rate-select1-gpios":
maxItems: 1
description:
GPIO phandle and a specifier of the Tx Signaling Rate Select (AKA RS1)
output gpio signal (SFP+ only), low - low Tx rate, high - high Tx rate. Must
not be present for SFF modules
allOf:
- if:
properties:
compatible:
contains:
const: sff,sff
then:
properties:
mod-def0-gpios: false
rate-select0-gpios: false
rate-select1-gpios: false
required:
- compatible
- i2c-bus
additionalProperties: false
examples:
- | # Direct serdes to SFP connection
#include <dt-bindings/gpio/gpio.h>
sfp1: sfp {
compatible = "sff,sfp";
i2c-bus = <&sfp_1g_i2c>;
los-gpios = <&cpm_gpio2 22 GPIO_ACTIVE_HIGH>;
mod-def0-gpios = <&cpm_gpio2 21 GPIO_ACTIVE_LOW>;
maximum-power-milliwatt = <1000>;
pinctrl-names = "default";
pinctrl-0 = <&cpm_sfp_1g_pins &cps_sfp_1g_pins>;
tx-disable-gpios = <&cps_gpio1 24 GPIO_ACTIVE_HIGH>;
tx-fault-gpios = <&cpm_gpio2 19 GPIO_ACTIVE_HIGH>;
};
ethernet {
phy-names = "comphy";
phys = <&cps_comphy5 0>;
sfp = <&sfp1>;
};
- | # Serdes to PHY to SFP connection
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
sfp2: sfp {
compatible = "sff,sfp";
i2c-bus = <&sfp_i2c>;
los-gpios = <&cps_gpio1 28 GPIO_ACTIVE_HIGH>;
mod-def0-gpios = <&cps_gpio1 27 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&cps_sfpp0_pins>;
tx-disable-gpios = <&cps_gpio1 29 GPIO_ACTIVE_HIGH>;
tx-fault-gpios = <&cps_gpio1 26 GPIO_ACTIVE_HIGH>;
};
mdio {
#address-cells = <1>;
#size-cells = <0>;
phy: ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
pinctrl-names = "default";
pinctrl-0 = <&cpm_phy0_pins &cps_phy0_pins>;
reg = <0>;
interrupt = <&cpm_gpio2 18 IRQ_TYPE_EDGE_FALLING>;
sfp = <&sfp2>;
};
};
ethernet {
phy = <&phy>;
phy-mode = "10gbase-kr";
};
...@@ -18189,6 +18189,7 @@ SFF/SFP/SFP+ MODULE SUPPORT ...@@ -18189,6 +18189,7 @@ SFF/SFP/SFP+ MODULE SUPPORT
M: Russell King <linux@armlinux.org.uk> M: Russell King <linux@armlinux.org.uk>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/devicetree/bindings/net/sff,sfp.yaml
F: drivers/net/phy/phylink.c F: drivers/net/phy/phylink.c
F: drivers/net/phy/sfp* F: drivers/net/phy/sfp*
F: include/linux/mdio/mdio-i2c.h F: include/linux/mdio/mdio-i2c.h
......
...@@ -34,28 +34,28 @@ key { ...@@ -34,28 +34,28 @@ key {
sfp0: sfp-0 { sfp0: sfp-0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfp0_i2c>; i2c-bus = <&sfp0_i2c>;
mod-def0-gpio = <&gpio2 0 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
}; };
sfp1: sfp-1 { sfp1: sfp-1 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfp1_i2c>; i2c-bus = <&sfp1_i2c>;
mod-def0-gpio = <&gpio2 9 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
}; };
sfp2: sfp-2 { sfp2: sfp-2 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfp2_i2c>; i2c-bus = <&sfp2_i2c>;
mod-def0-gpio = <&gpio2 10 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
}; };
sfp3: sfp-3 { sfp3: sfp-3 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfp3_i2c>; i2c-bus = <&sfp3_i2c>;
mod-def0-gpio = <&gpio2 11 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&gpio2 11 GPIO_ACTIVE_LOW>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
}; };
}; };
......
...@@ -100,11 +100,11 @@ sdhci1_pwrseq: sdhci1-pwrseq { ...@@ -100,11 +100,11 @@ sdhci1_pwrseq: sdhci1-pwrseq {
sfp: sfp { sfp: sfp {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&i2c0>; i2c-bus = <&i2c0>;
los-gpio = <&moxtet_sfp 0 GPIO_ACTIVE_HIGH>; los-gpios = <&moxtet_sfp 0 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&moxtet_sfp 1 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&moxtet_sfp 1 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&moxtet_sfp 2 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&moxtet_sfp 2 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&moxtet_sfp 4 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&moxtet_sfp 4 GPIO_ACTIVE_HIGH>;
rate-select0-gpio = <&moxtet_sfp 5 GPIO_ACTIVE_HIGH>; rate-select0-gpios = <&moxtet_sfp 5 GPIO_ACTIVE_HIGH>;
maximum-power-milliwatt = <3000>; maximum-power-milliwatt = <3000>;
/* enabled by U-Boot if SFP module is present */ /* enabled by U-Boot if SFP module is present */
......
...@@ -65,20 +65,20 @@ alarm2 { ...@@ -65,20 +65,20 @@ alarm2 {
sfp_eth0: sfp-eth0 { sfp_eth0: sfp-eth0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&i2c0>; i2c-bus = <&i2c0>;
los-gpio = <&gpiosb 2 GPIO_ACTIVE_HIGH>; los-gpios = <&gpiosb 2 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&gpiosb 3 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&gpiosb 4 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&gpiosb 4 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&gpiosb 5 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&gpiosb 5 GPIO_ACTIVE_HIGH>;
maximum-power-milliwatt = <3000>; maximum-power-milliwatt = <3000>;
}; };
sfp_eth1: sfp-eth1 { sfp_eth1: sfp-eth1 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&i2c1>; i2c-bus = <&i2c1>;
los-gpio = <&gpiosb 7 GPIO_ACTIVE_HIGH>; los-gpios = <&gpiosb 7 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&gpiosb 8 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&gpiosb 8 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&gpiosb 9 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&gpiosb 9 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&gpiosb 10 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&gpiosb 10 GPIO_ACTIVE_HIGH>;
maximum-power-milliwatt = <3000>; maximum-power-milliwatt = <3000>;
}; };
}; };
......
...@@ -34,20 +34,20 @@ aliases { ...@@ -34,20 +34,20 @@ aliases {
sfp_eth0: sfp-eth0 { sfp_eth0: sfp-eth0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp0_i2c1>; i2c-bus = <&cp0_i2c1>;
los-gpio = <&sfp_gpio 3 GPIO_ACTIVE_HIGH>; los-gpios = <&sfp_gpio 3 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&sfp_gpio 2 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&sfp_gpio 2 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&sfp_gpio 1 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&sfp_gpio 1 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&sfp_gpio 0 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&sfp_gpio 0 GPIO_ACTIVE_HIGH>;
}; };
/* SFP 1G */ /* SFP 1G */
sfp_eth2: sfp-eth2 { sfp_eth2: sfp-eth2 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp0_i2c0>; i2c-bus = <&cp0_i2c0>;
los-gpio = <&sfp_gpio 7 GPIO_ACTIVE_HIGH>; los-gpios = <&sfp_gpio 7 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&sfp_gpio 6 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&sfp_gpio 6 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&sfp_gpio 5 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&sfp_gpio 5 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&sfp_gpio 4 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&sfp_gpio 4 GPIO_ACTIVE_HIGH>;
}; };
}; };
......
...@@ -64,8 +64,8 @@ v_5v0_usb3_hst_vbus: regulator-usb3-vbus0 { ...@@ -64,8 +64,8 @@ v_5v0_usb3_hst_vbus: regulator-usb3-vbus0 {
sfp_cp0_eth0: sfp-cp0-eth0 { sfp_cp0_eth0: sfp-cp0-eth0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp0_i2c1>; i2c-bus = <&cp0_i2c1>;
mod-def0-gpio = <&cp0_gpio2 17 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp0_gpio2 17 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp1_gpio1 29 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp1_gpio1 29 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&cp0_sfp_present_pins &cp1_sfp_tx_disable_pins>; pinctrl-0 = <&cp0_sfp_present_pins &cp1_sfp_tx_disable_pins>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
......
...@@ -65,10 +65,10 @@ sfp_eth0: sfp-eth0 { ...@@ -65,10 +65,10 @@ sfp_eth0: sfp-eth0 {
/* CON15,16 - CPM lane 4 */ /* CON15,16 - CPM lane 4 */
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfpp0_i2c>; i2c-bus = <&sfpp0_i2c>;
los-gpio = <&cp1_gpio1 28 GPIO_ACTIVE_HIGH>; los-gpios = <&cp1_gpio1 28 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&cp1_gpio1 27 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp1_gpio1 27 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp1_gpio1 29 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp1_gpio1 29 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp1_gpio1 26 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp1_gpio1 26 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&cp1_sfpp0_pins>; pinctrl-0 = <&cp1_sfpp0_pins>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
...@@ -78,10 +78,10 @@ sfp_eth1: sfp-eth1 { ...@@ -78,10 +78,10 @@ sfp_eth1: sfp-eth1 {
/* CON17,18 - CPS lane 4 */ /* CON17,18 - CPS lane 4 */
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfpp1_i2c>; i2c-bus = <&sfpp1_i2c>;
los-gpio = <&cp1_gpio1 8 GPIO_ACTIVE_HIGH>; los-gpios = <&cp1_gpio1 8 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&cp1_gpio1 11 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp1_gpio1 11 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp1_gpio1 10 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp1_gpio1 10 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp0_gpio2 30 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp0_gpio2 30 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&cp1_sfpp1_pins &cp0_sfpp1_pins>; pinctrl-0 = <&cp1_sfpp1_pins &cp0_sfpp1_pins>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
...@@ -91,10 +91,10 @@ sfp_eth3: sfp-eth3 { ...@@ -91,10 +91,10 @@ sfp_eth3: sfp-eth3 {
/* CON13,14 - CPS lane 5 */ /* CON13,14 - CPS lane 5 */
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfp_1g_i2c>; i2c-bus = <&sfp_1g_i2c>;
los-gpio = <&cp0_gpio2 22 GPIO_ACTIVE_HIGH>; los-gpios = <&cp0_gpio2 22 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&cp0_gpio2 21 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp0_gpio2 21 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp1_gpio1 24 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp1_gpio1 24 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp0_gpio2 19 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp0_gpio2 19 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&cp0_sfp_1g_pins &cp1_sfp_1g_pins>; pinctrl-0 = <&cp0_sfp_1g_pins &cp1_sfp_1g_pins>;
maximum-power-milliwatt = <2000>; maximum-power-milliwatt = <2000>;
......
...@@ -67,20 +67,20 @@ v_vddo_h: regulator-1-8v { ...@@ -67,20 +67,20 @@ v_vddo_h: regulator-1-8v {
sfp_cp0_eth0: sfp-cp0-eth0 { sfp_cp0_eth0: sfp-cp0-eth0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfpplus0_i2c>; i2c-bus = <&sfpplus0_i2c>;
los-gpio = <&sfpplus_gpio 11 GPIO_ACTIVE_HIGH>; los-gpios = <&sfpplus_gpio 11 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&sfpplus_gpio 10 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&sfpplus_gpio 10 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&sfpplus_gpio 9 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&sfpplus_gpio 9 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&sfpplus_gpio 8 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&sfpplus_gpio 8 GPIO_ACTIVE_HIGH>;
maximum-power-milliwatt = <3000>; maximum-power-milliwatt = <3000>;
}; };
sfp_cp1_eth0: sfp-cp1-eth0 { sfp_cp1_eth0: sfp-cp1-eth0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&sfpplus1_i2c>; i2c-bus = <&sfpplus1_i2c>;
los-gpio = <&sfpplus_gpio 3 GPIO_ACTIVE_HIGH>; los-gpios = <&sfpplus_gpio 3 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&sfpplus_gpio 2 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&sfpplus_gpio 2 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&sfpplus_gpio 1 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&sfpplus_gpio 1 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&sfpplus_gpio 0 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&sfpplus_gpio 0 GPIO_ACTIVE_HIGH>;
maximum-power-milliwatt = <3000>; maximum-power-milliwatt = <3000>;
}; };
......
...@@ -78,9 +78,9 @@ sfp: sfp { ...@@ -78,9 +78,9 @@ sfp: sfp {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp0_i2c1>; i2c-bus = <&cp0_i2c1>;
mod-def0-gpios = <&expander0 3 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&expander0 3 GPIO_ACTIVE_LOW>;
los-gpio = <&expander0 15 GPIO_ACTIVE_HIGH>; los-gpios = <&expander0 15 GPIO_ACTIVE_HIGH>;
tx-disable-gpio = <&expander0 2 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&expander0 2 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp0_gpio1 24 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp0_gpio1 24 GPIO_ACTIVE_HIGH>;
maximum-power-milliwatt = <3000>; maximum-power-milliwatt = <3000>;
status = "okay"; status = "okay";
}; };
......
...@@ -90,10 +90,10 @@ cp0_reg_sd_vcc: cp0_sd_vcc@0 { ...@@ -90,10 +90,10 @@ cp0_reg_sd_vcc: cp0_sd_vcc@0 {
cp0_sfp_eth0: sfp-eth@0 { cp0_sfp_eth0: sfp-eth@0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp0_sfpp0_i2c>; i2c-bus = <&cp0_sfpp0_i2c>;
los-gpio = <&cp0_module_expander1 11 GPIO_ACTIVE_HIGH>; los-gpios = <&cp0_module_expander1 11 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&cp0_module_expander1 10 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp0_module_expander1 10 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp0_module_expander1 9 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp0_module_expander1 9 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp0_module_expander1 8 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp0_module_expander1 8 GPIO_ACTIVE_HIGH>;
/* /*
* SFP cages are unconnected on early PCBs because of an the I2C * SFP cages are unconnected on early PCBs because of an the I2C
* lanes not being connected. Prevent the port for being * lanes not being connected. Prevent the port for being
......
...@@ -37,10 +37,10 @@ cp1_usb3_0_phy0: cp1_usb3_phy0 { ...@@ -37,10 +37,10 @@ cp1_usb3_0_phy0: cp1_usb3_phy0 {
cp1_sfp_eth1: sfp-eth1 { cp1_sfp_eth1: sfp-eth1 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp1_i2c0>; i2c-bus = <&cp1_i2c0>;
los-gpio = <&cp1_gpio1 11 GPIO_ACTIVE_HIGH>; los-gpios = <&cp1_gpio1 11 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&cp1_gpio1 10 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp1_gpio1 10 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp1_gpio1 9 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp1_gpio1 9 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp1_gpio1 8 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp1_gpio1 8 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&cp1_sfp_pins>; pinctrl-0 = <&cp1_sfp_pins>;
/* /*
......
...@@ -57,10 +57,10 @@ cp2_reg_sd_vccq: cp2_sd_vccq@0 { ...@@ -57,10 +57,10 @@ cp2_reg_sd_vccq: cp2_sd_vccq@0 {
cp2_sfp_eth0: sfp-eth0 { cp2_sfp_eth0: sfp-eth0 {
compatible = "sff,sfp"; compatible = "sff,sfp";
i2c-bus = <&cp2_sfpp0_i2c>; i2c-bus = <&cp2_sfpp0_i2c>;
los-gpio = <&cp2_module_expander1 11 GPIO_ACTIVE_HIGH>; los-gpios = <&cp2_module_expander1 11 GPIO_ACTIVE_HIGH>;
mod-def0-gpio = <&cp2_module_expander1 10 GPIO_ACTIVE_LOW>; mod-def0-gpios = <&cp2_module_expander1 10 GPIO_ACTIVE_LOW>;
tx-disable-gpio = <&cp2_module_expander1 9 GPIO_ACTIVE_HIGH>; tx-disable-gpios = <&cp2_module_expander1 9 GPIO_ACTIVE_HIGH>;
tx-fault-gpio = <&cp2_module_expander1 8 GPIO_ACTIVE_HIGH>; tx-fault-gpios = <&cp2_module_expander1 8 GPIO_ACTIVE_HIGH>;
/* /*
* SFP cages are unconnected on early PCBs because of an the I2C * SFP cages are unconnected on early PCBs because of an the I2C
* lanes not being connected. Prevent the port for being * lanes not being connected. Prevent the port for being
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment