ecore_ilt_mem_op(sc, ILT_MEMOP_FREE);
bnx2x_free_ilt_lines_mem(sc);
+
+ /* free the host hardware/software hsi structures */
+ bnx2x_free_hsi_mem(sc);
}
static int bnx2x_alloc_mem(struct bnx2x_softc *sc)
return -1;
}
+ /* allocate the host hardware/software hsi structures */
+ if (bnx2x_alloc_hsi_mem(sc) != 0) {
+ PMD_DRV_LOG(ERR, sc, "bnx2x_alloc_hsi_mem was failed");
+ bnx2x_free_mem(sc);
+ return -ENXIO;
+ }
+
return 0;
}
/*******************/
memset(&fp->status_block, 0, sizeof(fp->status_block));
+ bnx2x_dma_free(&fp->sb_dma);
}
/***************************/
/* FW DECOMPRESSION BUFFER */
/***************************/
+ bnx2x_dma_free(&sc->gz_buf_dma);
sc->gz_buf = NULL;
/*******************/
/* SLOW PATH QUEUE */
/*******************/
+ bnx2x_dma_free(&sc->spq_dma);
sc->spq = NULL;
/*************/
/* SLOW PATH */
/*************/
+ bnx2x_dma_free(&sc->sp_dma);
sc->sp = NULL;
/***************/
/* EVENT QUEUE */
/***************/
+ bnx2x_dma_free(&sc->eq_dma);
sc->eq = NULL;
/************************/
/* DEFAULT STATUS BLOCK */
/************************/
+ bnx2x_dma_free(&sc->def_sb_dma);
sc->def_sb = NULL;
}