ethdev: rename link speed constants

The speed numbers ETH_LINK_SPEED_ are renamed ETH_SPEED_NUM_.
The prefix ETH_LINK_SPEED_ is kept for AUTONEG and will be used
for bit flags in next patch.

Signed-off-by: Marc Sune <marcdevel@gmail.com>
This commit is contained in:
Marc Sune 2016-04-01 00:12:27 +02:00 committed by Thomas Monjalon
parent 88fbedcd5e
commit 39fd068a27
20 changed files with 83 additions and 76 deletions

View File

@ -1006,20 +1006,20 @@ parse_and_check_speed_duplex(char *speedstr, char *duplexstr, uint16_t *speed)
}
if (!strcmp(speedstr, "10")) {
*speed = ETH_LINK_SPEED_10;
*speed = ETH_SPEED_NUM_10M;
} else if (!strcmp(speedstr, "100")) {
*speed = ETH_LINK_SPEED_100;
*speed = ETH_SPEED_NUM_100M;
} else {
if (duplex != ETH_LINK_FULL_DUPLEX) {
printf("Invalid speed/duplex parameters\n");
return -1;
}
if (!strcmp(speedstr, "1000")) {
*speed = ETH_LINK_SPEED_1000;
*speed = ETH_SPEED_NUM_1G;
} else if (!strcmp(speedstr, "10000")) {
*speed = ETH_LINK_SPEED_10G;
*speed = ETH_SPEED_NUM_10G;
} else if (!strcmp(speedstr, "40000")) {
*speed = ETH_LINK_SPEED_40G;
*speed = ETH_SPEED_NUM_40G;
} else if (!strcmp(speedstr, "auto")) {
*speed = ETH_LINK_SPEED_AUTONEG;
} else {

View File

@ -604,7 +604,7 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,
TAILQ_INIT(&(eth_dev->link_intr_cbs));
eth_dev->data->dev_link.link_status = ETH_LINK_DOWN;
eth_dev->data->dev_link.link_speed = ETH_LINK_SPEED_10000;
eth_dev->data->dev_link.link_speed = ETH_SPEED_NUM_10G;
eth_dev->data->dev_link.link_duplex = ETH_LINK_FULL_DUPLEX;
eth_dev->data->mac_addrs = rte_zmalloc(name, ETHER_ADDR_LEN, 0);

View File

@ -116,7 +116,7 @@ static const char *valid_arguments[] = {
static const char *drivername = "AF_PACKET PMD";
static struct rte_eth_link pmd_link = {
.link_speed = 10000,
.link_speed = ETH_SPEED_NUM_10G,
.link_duplex = ETH_LINK_FULL_DUPLEX,
.link_status = ETH_LINK_DOWN,
};

View File

@ -711,22 +711,22 @@ link_speed_key(uint16_t speed) {
case ETH_LINK_SPEED_AUTONEG:
key_speed = 0x00;
break;
case ETH_LINK_SPEED_10:
case ETH_SPEED_NUM_10M:
key_speed = BOND_LINK_SPEED_KEY_10M;
break;
case ETH_LINK_SPEED_100:
case ETH_SPEED_NUM_100M:
key_speed = BOND_LINK_SPEED_KEY_100M;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
key_speed = BOND_LINK_SPEED_KEY_1000M;
break;
case ETH_LINK_SPEED_10G:
case ETH_SPEED_NUM_10G:
key_speed = BOND_LINK_SPEED_KEY_10G;
break;
case ETH_LINK_SPEED_20G:
case ETH_SPEED_NUM_20G:
key_speed = BOND_LINK_SPEED_KEY_20G;
break;
case ETH_LINK_SPEED_40G:
case ETH_SPEED_NUM_40G:
key_speed = BOND_LINK_SPEED_KEY_40G;
break;
default:

View File

@ -2159,13 +2159,13 @@ int t4_handle_fw_rpl(struct adapter *adap, const __be64 *rpl)
if (stat & F_FW_PORT_CMD_TXPAUSE)
fc |= PAUSE_TX;
if (stat & V_FW_PORT_CMD_LSPEED(FW_PORT_CAP_SPEED_100M))
speed = ETH_LINK_SPEED_100;
speed = ETH_SPEED_NUM_100M;
else if (stat & V_FW_PORT_CMD_LSPEED(FW_PORT_CAP_SPEED_1G))
speed = ETH_LINK_SPEED_1000;
speed = ETH_SPEED_NUM_1G;
else if (stat & V_FW_PORT_CMD_LSPEED(FW_PORT_CAP_SPEED_10G))
speed = ETH_LINK_SPEED_10000;
speed = ETH_SPEED_NUM_10G;
else if (stat & V_FW_PORT_CMD_LSPEED(FW_PORT_CAP_SPEED_40G))
speed = ETH_LINK_SPEED_40G;
speed = ETH_SPEED_NUM_40G;
for_each_port(adap, i) {
pi = adap2pinfo(adap, i);

View File

@ -625,7 +625,7 @@ eth_em_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_10:
case ETH_SPEED_NUM_10M:
if (dev->data->dev_conf.link_duplex == ETH_LINK_AUTONEG_DUPLEX)
hw->phy.autoneg_advertised = E1000_ALL_10_SPEED;
else if (dev->data->dev_conf.link_duplex ==
@ -637,7 +637,7 @@ eth_em_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_100:
case ETH_SPEED_NUM_100M:
if (dev->data->dev_conf.link_duplex == ETH_LINK_AUTONEG_DUPLEX)
hw->phy.autoneg_advertised = E1000_ALL_100_SPEED;
else if (dev->data->dev_conf.link_duplex ==
@ -649,7 +649,7 @@ eth_em_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
if ((dev->data->dev_conf.link_duplex ==
ETH_LINK_AUTONEG_DUPLEX) ||
(dev->data->dev_conf.link_duplex ==
@ -658,7 +658,7 @@ eth_em_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_10000:
case ETH_SPEED_NUM_10G:
default:
goto error_invalid_config;
}

View File

@ -1244,7 +1244,7 @@ eth_igb_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_10:
case ETH_SPEED_NUM_10M:
if (dev->data->dev_conf.link_duplex == ETH_LINK_AUTONEG_DUPLEX)
hw->phy.autoneg_advertised = E1000_ALL_10_SPEED;
else if (dev->data->dev_conf.link_duplex == ETH_LINK_HALF_DUPLEX)
@ -1254,7 +1254,7 @@ eth_igb_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_100:
case ETH_SPEED_NUM_100M:
if (dev->data->dev_conf.link_duplex == ETH_LINK_AUTONEG_DUPLEX)
hw->phy.autoneg_advertised = E1000_ALL_100_SPEED;
else if (dev->data->dev_conf.link_duplex == ETH_LINK_HALF_DUPLEX)
@ -1264,14 +1264,14 @@ eth_igb_start(struct rte_eth_dev *dev)
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
if ((dev->data->dev_conf.link_duplex == ETH_LINK_AUTONEG_DUPLEX) ||
(dev->data->dev_conf.link_duplex == ETH_LINK_FULL_DUPLEX))
hw->phy.autoneg_advertised = ADVERTISE_1000_FULL;
else
goto error_invalid_config;
break;
case ETH_LINK_SPEED_10000:
case ETH_SPEED_NUM_10G:
default:
goto error_invalid_config;
}

View File

@ -504,7 +504,7 @@ static int ena_link_update(struct rte_eth_dev *dev,
struct rte_eth_link *link = &dev->data->dev_link;
link->link_status = 1;
link->link_speed = ETH_LINK_SPEED_10G;
link->link_speed = ETH_SPEED_NUM_10G;
link->link_duplex = ETH_LINK_FULL_DUPLEX;
return 0;

View File

@ -1386,19 +1386,19 @@ i40e_parse_link_speed(uint16_t eth_link_speed)
uint8_t link_speed = I40E_LINK_SPEED_UNKNOWN;
switch (eth_link_speed) {
case ETH_LINK_SPEED_40G:
case ETH_SPEED_NUM_40G:
link_speed = I40E_LINK_SPEED_40GB;
break;
case ETH_LINK_SPEED_20G:
case ETH_SPEED_NUM_20G:
link_speed = I40E_LINK_SPEED_20GB;
break;
case ETH_LINK_SPEED_10G:
case ETH_SPEED_NUM_10G:
link_speed = I40E_LINK_SPEED_10GB;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
link_speed = I40E_LINK_SPEED_1GB;
break;
case ETH_LINK_SPEED_100:
case ETH_SPEED_NUM_100M:
link_speed = I40E_LINK_SPEED_100MB;
break;
}
@ -1768,7 +1768,7 @@ i40e_dev_link_update(struct rte_eth_dev *dev,
/* Get link status information from hardware */
status = i40e_aq_get_link_info(hw, false, &link_status, NULL);
if (status != I40E_SUCCESS) {
link.link_speed = ETH_LINK_SPEED_100;
link.link_speed = ETH_SPEED_NUM_100M;
link.link_duplex = ETH_LINK_FULL_DUPLEX;
PMD_DRV_LOG(ERR, "Failed to get link info");
goto out;
@ -1790,22 +1790,22 @@ i40e_dev_link_update(struct rte_eth_dev *dev,
/* Parse the link status */
switch (link_status.link_speed) {
case I40E_LINK_SPEED_100MB:
link.link_speed = ETH_LINK_SPEED_100;
link.link_speed = ETH_SPEED_NUM_100M;
break;
case I40E_LINK_SPEED_1GB:
link.link_speed = ETH_LINK_SPEED_1000;
link.link_speed = ETH_SPEED_NUM_1G;
break;
case I40E_LINK_SPEED_10GB:
link.link_speed = ETH_LINK_SPEED_10G;
link.link_speed = ETH_SPEED_NUM_10G;
break;
case I40E_LINK_SPEED_20GB:
link.link_speed = ETH_LINK_SPEED_20G;
link.link_speed = ETH_SPEED_NUM_20G;
break;
case I40E_LINK_SPEED_40GB:
link.link_speed = ETH_LINK_SPEED_40G;
link.link_speed = ETH_SPEED_NUM_40G;
break;
default:
link.link_speed = ETH_LINK_SPEED_100;
link.link_speed = ETH_SPEED_NUM_100M;
break;
}
@ -8158,15 +8158,15 @@ i40e_start_timecounters(struct rte_eth_dev *dev)
rte_i40e_dev_atomic_read_link_status(dev, &link);
switch (link.link_speed) {
case ETH_LINK_SPEED_40G:
case ETH_SPEED_NUM_40G:
tsync_inc_l = I40E_PTP_40GB_INCVAL & 0xFFFFFFFF;
tsync_inc_h = I40E_PTP_40GB_INCVAL >> 32;
break;
case ETH_LINK_SPEED_10G:
case ETH_SPEED_NUM_10G:
tsync_inc_l = I40E_PTP_10GB_INCVAL & 0xFFFFFFFF;
tsync_inc_h = I40E_PTP_10GB_INCVAL >> 32;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
tsync_inc_l = I40E_PTP_1GB_INCVAL & 0xFFFFFFFF;
tsync_inc_h = I40E_PTP_1GB_INCVAL >> 32;
break;

View File

@ -2126,7 +2126,7 @@ i40evf_dev_link_update(struct rte_eth_dev *dev,
else {
/* Always assume it's up, for Linux driver PF host */
new_link.link_duplex = ETH_LINK_AUTONEG_DUPLEX;
new_link.link_speed = ETH_LINK_SPEED_10000;
new_link.link_speed = ETH_SPEED_NUM_10G;
new_link.link_status = ETH_LINK_UP;
}
i40evf_dev_atomic_write_link_status(dev, &new_link);

View File

@ -2204,17 +2204,17 @@ ixgbe_dev_start(struct rte_eth_dev *dev)
IXGBE_LINK_SPEED_82599_AUTONEG :
IXGBE_LINK_SPEED_82598_AUTONEG;
break;
case ETH_LINK_SPEED_100:
case ETH_SPEED_NUM_100M:
/*
* Invalid for 82598 but error will be detected by
* ixgbe_setup_link()
*/
speed = IXGBE_LINK_SPEED_100_FULL;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
speed = IXGBE_LINK_SPEED_1GB_FULL;
break;
case ETH_LINK_SPEED_10000:
case ETH_SPEED_NUM_10G:
speed = IXGBE_LINK_SPEED_10GB_FULL;
break;
default:
@ -3079,7 +3079,7 @@ ixgbe_dev_link_update(struct rte_eth_dev *dev, int wait_to_complete)
diag = ixgbe_check_link(hw, &link_speed, &link_up, 1);
if (diag != 0) {
link.link_speed = ETH_LINK_SPEED_100;
link.link_speed = ETH_SPEED_NUM_100M;
link.link_duplex = ETH_LINK_HALF_DUPLEX;
rte_ixgbe_dev_atomic_write_link_status(dev, &link);
if (link.link_status == old.link_status)
@ -3100,19 +3100,19 @@ ixgbe_dev_link_update(struct rte_eth_dev *dev, int wait_to_complete)
default:
case IXGBE_LINK_SPEED_UNKNOWN:
link.link_duplex = ETH_LINK_HALF_DUPLEX;
link.link_speed = ETH_LINK_SPEED_100;
link.link_speed = ETH_SPEED_NUM_100M;
break;
case IXGBE_LINK_SPEED_100_FULL:
link.link_speed = ETH_LINK_SPEED_100;
link.link_speed = ETH_SPEED_NUM_100M;
break;
case IXGBE_LINK_SPEED_1GB_FULL:
link.link_speed = ETH_LINK_SPEED_1000;
link.link_speed = ETH_SPEED_NUM_1G;
break;
case IXGBE_LINK_SPEED_10GB_FULL:
link.link_speed = ETH_LINK_SPEED_10000;
link.link_speed = ETH_SPEED_NUM_10G;
break;
}
rte_ixgbe_dev_atomic_write_link_status(dev, &link);
@ -5915,15 +5915,15 @@ ixgbe_start_timecounters(struct rte_eth_dev *dev)
rte_ixgbe_dev_atomic_read_link_status(dev, &link);
switch (link.link_speed) {
case ETH_LINK_SPEED_100:
case ETH_SPEED_NUM_100M:
incval = IXGBE_INCVAL_100;
shift = IXGBE_INCVAL_SHIFT_100;
break;
case ETH_LINK_SPEED_1000:
case ETH_SPEED_NUM_1G:
incval = IXGBE_INCVAL_1GB;
shift = IXGBE_INCVAL_SHIFT_1GB;
break;
case ETH_LINK_SPEED_10000:
case ETH_SPEED_NUM_10G:
default:
incval = IXGBE_INCVAL_10GB;
shift = IXGBE_INCVAL_SHIFT_10GB;

View File

@ -395,11 +395,11 @@ mpipe_link_update(struct rte_eth_dev *dev, int wait_to_complete)
speed = state & GXIO_MPIPE_LINK_SPEED_MASK;
if (speed == GXIO_MPIPE_LINK_1G) {
new.link_speed = ETH_LINK_SPEED_1000;
new.link_speed = ETH_SPEED_NUM_1G;
new.link_duplex = ETH_LINK_FULL_DUPLEX;
new.link_status = ETH_LINK_UP;
} else if (speed == GXIO_MPIPE_LINK_10G) {
new.link_speed = ETH_LINK_SPEED_10000;
new.link_speed = ETH_SPEED_NUM_10G;
new.link_duplex = ETH_LINK_FULL_DUPLEX;
new.link_status = ETH_LINK_UP;
}

View File

@ -821,7 +821,7 @@ nfp_net_link_update(struct rte_eth_dev *dev, __rte_unused int wait_to_complete)
link.link_duplex = ETH_LINK_FULL_DUPLEX;
/* Other cards can limit the tx and rx rate per VF */
link.link_speed = ETH_LINK_SPEED_40G;
link.link_speed = ETH_SPEED_NUM_40G;
if (old.link_status != link.link_status) {
nfp_net_dev_atomic_write_link_status(dev, &link);

View File

@ -89,7 +89,7 @@ struct pmd_internals {
static struct ether_addr eth_addr = { .addr_bytes = {0} };
static const char *drivername = "Null PMD";
static struct rte_eth_link pmd_link = {
.link_speed = 10000,
.link_speed = ETH_SPEED_NUM_10G,
.link_duplex = ETH_LINK_FULL_DUPLEX,
.link_status = ETH_LINK_DOWN,
};

View File

@ -123,7 +123,7 @@ static int open_single_iface(const char *iface, pcap_t **pcap);
static struct ether_addr eth_addr = { .addr_bytes = { 0, 0, 0, 0x1, 0x2, 0x3 } };
static const char *drivername = "Pcap PMD";
static struct rte_eth_link pmd_link = {
.link_speed = 10000,
.link_speed = ETH_SPEED_NUM_10G,
.link_duplex = ETH_LINK_FULL_DUPLEX,
.link_status = ETH_LINK_DOWN,
};

View File

@ -77,7 +77,7 @@ struct pmd_internals {
static const char *drivername = "Rings PMD";
static struct rte_eth_link pmd_link = {
.link_speed = 10000,
.link_speed = ETH_SPEED_NUM_10G,
.link_duplex = ETH_LINK_FULL_DUPLEX,
.link_status = ETH_LINK_DOWN,
};

View File

@ -1149,10 +1149,10 @@ eth_link_update(struct rte_eth_dev *dev,
switch (cgmii_link_speed(ibuf)) {
case SZEDATA2_LINK_SPEED_10G:
link.link_speed = ETH_LINK_SPEED_10G;
link.link_speed = ETH_SPEED_NUM_10G;
break;
case SZEDATA2_LINK_SPEED_40G:
link.link_speed = ETH_LINK_SPEED_40G;
link.link_speed = ETH_SPEED_NUM_40G;
break;
case SZEDATA2_LINK_SPEED_100G:
/*
@ -1161,10 +1161,10 @@ eth_link_update(struct rte_eth_dev *dev,
* will be changed to support 100Gbps speed change
* this value to 100G.
*/
link.link_speed = ETH_LINK_SPEED_10G;
link.link_speed = ETH_SPEED_NUM_10G;
break;
default:
link.link_speed = ETH_LINK_SPEED_10G;
link.link_speed = ETH_SPEED_NUM_10G;
break;
}

View File

@ -778,7 +778,7 @@ vmxnet3_dev_link_update(struct rte_eth_dev *dev, __attribute__((unused)) int wai
if (ret & 0x1) {
link.link_status = ETH_LINK_UP;
link.link_duplex = ETH_LINK_FULL_DUPLEX;
link.link_speed = ETH_LINK_SPEED_10000;
link.link_speed = ETH_SPEED_NUM_10G;
}
vmxnet3_dev_atomic_write_link_status(dev, &link);

View File

@ -70,7 +70,7 @@ static int virtio_idx = 0;
static const char *drivername = "xen virtio PMD";
static struct rte_eth_link pmd_link = {
.link_speed = 10000,
.link_speed = ETH_SPEED_NUM_10G,
.link_duplex = ETH_LINK_FULL_DUPLEX,
.link_status = ETH_LINK_DOWN,
};

View File

@ -241,24 +241,31 @@ struct rte_eth_stats {
/**< Total number of good bytes transmitted to loopback,VF Only */
};
/**
* Ethernet numeric link speeds in Mbps
*/
#define ETH_LINK_SPEED_AUTONEG 0 /**< Auto-negotiate link speed. */
#define ETH_SPEED_NUM_10M 10 /**< 10 Mbps */
#define ETH_SPEED_NUM_100M 100 /**< 100 Mbps */
#define ETH_SPEED_NUM_1G 1000 /**< 1 Gbps */
#define ETH_SPEED_NUM_2_5G 2500 /**< 2.5 Gbps */
#define ETH_SPEED_NUM_5G 5000 /**< 5 Gbps */
#define ETH_SPEED_NUM_10G 10000 /**< 10 Gbps */
#define ETH_SPEED_NUM_20G 20000 /**< 20 Gbps */
#define ETH_SPEED_NUM_25G 25000 /**< 25 Gbps */
#define ETH_SPEED_NUM_40G 40000 /**< 40 Gbps */
#define ETH_SPEED_NUM_50G 50000 /**< 50 Gbps */
#define ETH_SPEED_NUM_56G 56000 /**< 56 Gbps */
/**
* A structure used to retrieve link-level information of an Ethernet port.
*/
struct rte_eth_link {
uint16_t link_speed; /**< ETH_LINK_SPEED_[10, 100, 1000, 10000] */
uint16_t link_speed; /**< ETH_SPEED_NUM_ */
uint16_t link_duplex; /**< ETH_LINK_[HALF/FULL]_DUPLEX */
uint8_t link_status : 1; /**< ETH_LINK_[DOWN/UP] */
}__attribute__((aligned(8))); /**< aligned for atomic64 read/write */
#define ETH_LINK_SPEED_AUTONEG 0 /**< Auto-negotiate link speed. */
#define ETH_LINK_SPEED_10 10 /**< 10 megabits/second. */
#define ETH_LINK_SPEED_100 100 /**< 100 megabits/second. */
#define ETH_LINK_SPEED_1000 1000 /**< 1 gigabits/second. */
#define ETH_LINK_SPEED_10000 10000 /**< 10 gigabits/second. */
#define ETH_LINK_SPEED_10G 10000 /**< alias of 10 gigabits/second. */
#define ETH_LINK_SPEED_20G 20000 /**< 20 gigabits/second. */
#define ETH_LINK_SPEED_40G 40000 /**< 40 gigabits/second. */
/* Utility constants */
#define ETH_LINK_AUTONEG_DUPLEX 0 /**< Auto-negotiate duplex. */
#define ETH_LINK_HALF_DUPLEX 1 /**< Half-duplex connection. */
@ -779,7 +786,7 @@ struct rte_intr_conf {
*/
struct rte_eth_conf {
uint16_t link_speed;
/**< ETH_LINK_SPEED_10[0|00|000], or 0 for autonegotation */
/**< ETH_SPEED_NUM_ or 0 for autonegotiation */
uint16_t link_duplex;
/**< ETH_LINK_[HALF_DUPLEX|FULL_DUPLEX], or 0 for autonegotation */
struct rte_eth_rxmode rxmode; /**< Port RX configuration. */