net/dpaa2: fix IOVA conversion for congestion memory
[dpdk.git] / drivers / net / dpaa2 / dpaa2_ethdev.c
index 8999cb2..9ae3260 100644 (file)
@@ -39,7 +39,6 @@ static uint64_t dev_rx_offloads_sup =
 
 /* Rx offloads which cannot be disabled */
 static uint64_t dev_rx_offloads_nodis =
-               DEV_RX_OFFLOAD_CRC_STRIP |
                DEV_RX_OFFLOAD_SCATTER;
 
 /* Supported Tx offloads */
@@ -309,14 +308,6 @@ dpaa2_eth_dev_configure(struct rte_eth_dev *dev)
        PMD_INIT_FUNC_TRACE();
 
        /* Rx offloads validation */
-       if (~(dev_rx_offloads_sup | dev_rx_offloads_nodis) & rx_offloads) {
-               DPAA2_PMD_ERR(
-               "Rx offloads non supported - requested 0x%" PRIx64
-               " supported 0x%" PRIx64,
-                       rx_offloads,
-                       dev_rx_offloads_sup | dev_rx_offloads_nodis);
-               return -ENOTSUP;
-       }
        if (dev_rx_offloads_nodis & ~rx_offloads) {
                DPAA2_PMD_WARN(
                "Rx offloads non configurable - requested 0x%" PRIx64
@@ -325,14 +316,6 @@ dpaa2_eth_dev_configure(struct rte_eth_dev *dev)
        }
 
        /* Tx offloads validation */
-       if (~(dev_tx_offloads_sup | dev_tx_offloads_nodis) & tx_offloads) {
-               DPAA2_PMD_ERR(
-               "Tx offloads non supported - requested 0x%" PRIx64
-               " supported 0x%" PRIx64,
-                       tx_offloads,
-                       dev_tx_offloads_sup | dev_tx_offloads_nodis);
-               return -ENOTSUP;
-       }
        if (dev_tx_offloads_nodis & ~tx_offloads) {
                DPAA2_PMD_WARN(
                "Tx offloads non configurable - requested 0x%" PRIx64
@@ -585,7 +568,8 @@ dpaa2_dev_tx_queue_setup(struct rte_eth_dev *dev,
                 */
                cong_notif_cfg.threshold_exit = CONG_EXIT_TX_THRESHOLD;
                cong_notif_cfg.message_ctx = 0;
-               cong_notif_cfg.message_iova = (size_t)dpaa2_q->cscn;
+               cong_notif_cfg.message_iova =
+                               (size_t)DPAA2_VADDR_TO_IOVA(dpaa2_q->cscn);
                cong_notif_cfg.dest_cfg.dest_type = DPNI_DEST_NONE;
                cong_notif_cfg.notification_mode =
                                         DPNI_CONG_OPT_WRITE_MEM_ON_ENTER |
@@ -2024,7 +2008,6 @@ rte_dpaa2_probe(struct rte_dpaa2_driver *dpaa2_drv,
        }
 
        eth_dev->device = &dpaa2_dev->device;
-       eth_dev->device->driver = &dpaa2_drv->driver;
 
        dpaa2_dev->eth_dev = eth_dev;
        eth_dev->data->rx_mbuf_alloc_failed = 0;
@@ -2034,8 +2017,10 @@ rte_dpaa2_probe(struct rte_dpaa2_driver *dpaa2_drv,
 
        /* Invoke PMD device initialization function */
        diag = dpaa2_dev_init(eth_dev);
-       if (diag == 0)
+       if (diag == 0) {
+               rte_eth_dev_probing_finish(eth_dev);
                return 0;
+       }
 
        if (rte_eal_process_type() == RTE_PROC_PRIMARY)
                rte_free(eth_dev->data->dev_private);
@@ -2067,9 +2052,7 @@ static struct rte_dpaa2_driver rte_dpaa2_pmd = {
 
 RTE_PMD_REGISTER_DPAA2(net_dpaa2, rte_dpaa2_pmd);
 
-RTE_INIT(dpaa2_pmd_init_log);
-static void
-dpaa2_pmd_init_log(void)
+RTE_INIT(dpaa2_pmd_init_log)
 {
        dpaa2_logtype_pmd = rte_log_register("pmd.net.dpaa2");
        if (dpaa2_logtype_pmd >= 0)