net/qede: use contiguous allocation for DMA memory
authorAnatoly Burakov <anatoly.burakov@intel.com>
Wed, 11 Apr 2018 12:29:56 +0000 (13:29 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 11 Apr 2018 17:45:42 +0000 (19:45 +0200)
All hardware drivers should allocate IOVA-contiguous
memzones for their hardware resources.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Harish Patil <harish.patil@cavium.com>
Tested-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Tested-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Tested-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
drivers/net/qede/base/bcm_osal.c

index 91017b8..f550412 100644 (file)
@@ -135,8 +135,8 @@ void *osal_dma_alloc_coherent(struct ecore_dev *p_dev,
        if (core_id == (unsigned int)LCORE_ID_ANY)
                core_id = rte_get_master_lcore();
        socket_id = rte_lcore_to_socket_id(core_id);
-       mz = rte_memzone_reserve_aligned(mz_name, size,
-                                        socket_id, 0, RTE_CACHE_LINE_SIZE);
+       mz = rte_memzone_reserve_aligned(mz_name, size, socket_id,
+                       RTE_MEMZONE_IOVA_CONTIG, RTE_CACHE_LINE_SIZE);
        if (!mz) {
                DP_ERR(p_dev, "Unable to allocate DMA memory "
                       "of size %zu bytes - %s\n",
@@ -174,7 +174,8 @@ void *osal_dma_alloc_coherent_aligned(struct ecore_dev *p_dev,
        if (core_id == (unsigned int)LCORE_ID_ANY)
                core_id = rte_get_master_lcore();
        socket_id = rte_lcore_to_socket_id(core_id);
-       mz = rte_memzone_reserve_aligned(mz_name, size, socket_id, 0, align);
+       mz = rte_memzone_reserve_aligned(mz_name, size, socket_id,
+                       RTE_MEMZONE_IOVA_CONTIG, align);
        if (!mz) {
                DP_ERR(p_dev, "Unable to allocate DMA memory "
                       "of size %zu bytes - %s\n",