Lines Matching refs:cmd
231 * @cmd: ethtool_cmd
240 int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd)
242 if (cmd->phy_address != phydev->addr)
247 cmd->advertising &= phydev->supported;
250 if (cmd->autoneg != AUTONEG_ENABLE && cmd->autoneg != AUTONEG_DISABLE)
253 if (cmd->autoneg == AUTONEG_ENABLE && cmd->advertising == 0)
256 if (cmd->autoneg == AUTONEG_DISABLE &&
257 ((cmd->speed != SPEED_1000 &&
258 cmd->speed != SPEED_100 &&
259 cmd->speed != SPEED_10) ||
260 (cmd->duplex != DUPLEX_HALF &&
261 cmd->duplex != DUPLEX_FULL)))
264 phydev->autoneg = cmd->autoneg;
266 phydev->speed = cmd->speed;
268 phydev->advertising = cmd->advertising;
270 if (AUTONEG_ENABLE == cmd->autoneg)
275 phydev->duplex = cmd->duplex;
284 int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd)
286 cmd->supported = phydev->supported;
288 cmd->advertising = phydev->advertising;
290 cmd->speed = phydev->speed;
291 cmd->duplex = phydev->duplex;
292 cmd->port = PORT_MII;
293 cmd->phy_address = phydev->addr;
294 cmd->transceiver = XCVR_EXTERNAL;
295 cmd->autoneg = phydev->autoneg;
305 * @cmd: ioctl cmd to execute
312 struct ifreq *ifr, int cmd)
317 switch (cmd) {