New upstream version 17.11.1
[deb_dpdk.git] / drivers / net / octeontx / octeontx_ethdev.c
index bd24ec3..eca3a39 100644 (file)
@@ -54,6 +54,9 @@ struct octeontx_vdev_init_params {
        uint8_t nr_port;
 };
 
+uint16_t
+rte_octeontx_pchan_map[OCTEONTX_MAX_BGX_PORTS][OCTEONTX_MAX_LMAC_PER_BGX];
+
 enum octeontx_link_speed {
        OCTEONTX_LINK_SPEED_SGMII,
        OCTEONTX_LINK_SPEED_XAUI,
@@ -572,8 +575,8 @@ octeontx_dev_link_update(struct rte_eth_dev *dev,
                break;
        }
 
-       link.link_duplex = ETH_LINK_AUTONEG;
-       link.link_autoneg = ETH_LINK_SPEED_AUTONEG;
+       link.link_duplex = ETH_LINK_FULL_DUPLEX;
+       link.link_autoneg = ETH_LINK_AUTONEG;
 
        return octeontx_atomic_write_link_status(dev, &link);
 }
@@ -1133,6 +1136,9 @@ octeontx_create(struct rte_vdev_device *dev, int port, uint8_t evdev,
                                nic->num_tx_queues);
        PMD_INIT_LOG(DEBUG, "speed %d mtu %d", nic->speed, nic->mtu);
 
+       rte_octeontx_pchan_map[(nic->base_ochan >> 8) & 0x7]
+               [(nic->base_ochan >> 4) & 0xF] = data->port_id;
+
        return data->port_id;
 
 err: