Lines Matching +full:2 +full:- +full:lane
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
42 /* 10GBASE-R and 10GBASE-X4/X2 */
46 #define MV88E6393X_10G_INT_LINK_CHANGE BIT(2)
49 /* 1000BASE-X and SGMII */
73 #define MV88E6390_SGMII_PHY_STATUS_RX_PAUSE BIT(2)
107 int lane, unsigned int mode,
111 int lane, unsigned int mode,
115 int lane, struct phylink_link_state *state);
117 int lane, struct phylink_link_state *state);
119 int lane, struct phylink_link_state *state);
121 int lane, struct phylink_link_state *state);
123 int lane);
125 int lane);
127 int lane, int speed, int duplex);
129 int lane, int speed, int duplex);
134 int mv88e6185_serdes_power(struct mv88e6xxx_chip *chip, int port, int lane,
136 int mv88e6352_serdes_power(struct mv88e6xxx_chip *chip, int port, int lane,
138 int mv88e6390_serdes_power(struct mv88e6xxx_chip *chip, int port, int lane,
140 int mv88e6393x_serdes_power(struct mv88e6xxx_chip *chip, int port, int lane,
143 int mv88e6097_serdes_irq_enable(struct mv88e6xxx_chip *chip, int port, int lane,
145 int mv88e6352_serdes_irq_enable(struct mv88e6xxx_chip *chip, int port, int lane,
147 int mv88e6390_serdes_irq_enable(struct mv88e6xxx_chip *chip, int port, int lane,
150 int lane, bool enable);
152 int lane);
154 int lane);
156 int lane);
158 int lane);
175 /* Return the (first) SERDES lane address a port is using, -errno otherwise. */
179 if (!chip->info->ops->serdes_get_lane) in mv88e6xxx_serdes_get_lane()
180 return -EOPNOTSUPP; in mv88e6xxx_serdes_get_lane()
182 return chip->info->ops->serdes_get_lane(chip, port); in mv88e6xxx_serdes_get_lane()
186 int port, int lane) in mv88e6xxx_serdes_power_up() argument
188 if (!chip->info->ops->serdes_power) in mv88e6xxx_serdes_power_up()
189 return -EOPNOTSUPP; in mv88e6xxx_serdes_power_up()
191 return chip->info->ops->serdes_power(chip, port, lane, true); in mv88e6xxx_serdes_power_up()
195 int port, int lane) in mv88e6xxx_serdes_power_down() argument
197 if (!chip->info->ops->serdes_power) in mv88e6xxx_serdes_power_down()
198 return -EOPNOTSUPP; in mv88e6xxx_serdes_power_down()
200 return chip->info->ops->serdes_power(chip, port, lane, false); in mv88e6xxx_serdes_power_down()
206 if (!chip->info->ops->serdes_irq_mapping) in mv88e6xxx_serdes_irq_mapping()
209 return chip->info->ops->serdes_irq_mapping(chip, port); in mv88e6xxx_serdes_irq_mapping()
213 int port, int lane) in mv88e6xxx_serdes_irq_enable() argument
215 if (!chip->info->ops->serdes_irq_enable) in mv88e6xxx_serdes_irq_enable()
216 return -EOPNOTSUPP; in mv88e6xxx_serdes_irq_enable()
218 return chip->info->ops->serdes_irq_enable(chip, port, lane, true); in mv88e6xxx_serdes_irq_enable()
222 int port, int lane) in mv88e6xxx_serdes_irq_disable() argument
224 if (!chip->info->ops->serdes_irq_enable) in mv88e6xxx_serdes_irq_disable()
225 return -EOPNOTSUPP; in mv88e6xxx_serdes_irq_disable()
227 return chip->info->ops->serdes_irq_enable(chip, port, lane, false); in mv88e6xxx_serdes_irq_disable()
231 mv88e6xxx_serdes_irq_status(struct mv88e6xxx_chip *chip, int port, int lane) in mv88e6xxx_serdes_irq_status() argument
233 if (!chip->info->ops->serdes_irq_status) in mv88e6xxx_serdes_irq_status()
236 return chip->info->ops->serdes_irq_status(chip, port, lane); in mv88e6xxx_serdes_irq_status()