/* Only Full duplex is supported; * Assume full duplex when duplex is unknown.
*/ if (cmd->base.duplex != DUPLEX_FULL &&
cmd->base.duplex != DUPLEX_UNKNOWN) return -EOPNOTSUPP;
if (cmd->base.autoneg == AUTONEG_ENABLE) { if (!(link_info->autoneg & OCTEP_LINK_MODE_AUTONEG_SUPPORTED)) return -EOPNOTSUPP;
autoneg = 1;
}
if (!bitmap_subset(cmd->link_modes.advertising,
cmd->link_modes.supported,
__ETHTOOL_LINK_MODE_MASK_NBITS)) return -EINVAL;
if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
10000baseT_Full))
advertised |= BIT(OCTEP_LINK_MODE_10GBASE_T); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
10000baseR_FEC))
advertised |= BIT(OCTEP_LINK_MODE_10GBASE_R); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
10000baseCR_Full))
advertised |= BIT(OCTEP_LINK_MODE_10GBASE_CR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
10000baseKR_Full))
advertised |= BIT(OCTEP_LINK_MODE_10GBASE_KR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
10000baseLR_Full))
advertised |= BIT(OCTEP_LINK_MODE_10GBASE_LR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
10000baseSR_Full))
advertised |= BIT(OCTEP_LINK_MODE_10GBASE_SR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
25000baseCR_Full))
advertised |= BIT(OCTEP_LINK_MODE_25GBASE_CR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
25000baseKR_Full))
advertised |= BIT(OCTEP_LINK_MODE_25GBASE_KR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
25000baseSR_Full))
advertised |= BIT(OCTEP_LINK_MODE_25GBASE_SR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
40000baseCR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_40GBASE_CR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
40000baseKR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_40GBASE_KR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
40000baseLR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_40GBASE_LR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
40000baseSR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_40GBASE_SR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseCR2_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_CR2); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseKR2_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_KR2); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseSR2_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_SR2); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseCR_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_CR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseKR_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_KR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseLR_ER_FR_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_LR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
50000baseSR_Full))
advertised |= BIT(OCTEP_LINK_MODE_50GBASE_SR); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
100000baseCR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_100GBASE_CR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
100000baseKR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_100GBASE_KR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
100000baseLR4_ER4_Full))
advertised |= BIT(OCTEP_LINK_MODE_100GBASE_LR4); if (ethtool_link_ksettings_test_link_mode(cmd, advertising,
100000baseSR4_Full))
advertised |= BIT(OCTEP_LINK_MODE_100GBASE_SR4);
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.1Bemerkung:
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.