Lines Matching full:dpi
847 struct bnxt_qplib_dpi *dpi, in bnxt_qplib_alloc_dpi() argument
868 /* Found unused DPI */ in bnxt_qplib_alloc_dpi()
871 dpi->bit = bit_num; in bnxt_qplib_alloc_dpi()
872 dpi->dpi = bit_num + (reg->offset - dpit->ucreg.offset) / PAGE_SIZE; in bnxt_qplib_alloc_dpi()
875 dpi->umdbr = umaddr; in bnxt_qplib_alloc_dpi()
879 dpi->umdbr = dpit->ucreg.bar_base + in bnxt_qplib_alloc_dpi()
881 dpi->dbr = dpit->priv_db; in bnxt_qplib_alloc_dpi()
882 dpi->dpi = dpi->bit; in bnxt_qplib_alloc_dpi()
885 dpi->dbr = ioremap_wc(umaddr, PAGE_SIZE); in bnxt_qplib_alloc_dpi()
886 if (_is_chip_p7(res->cctx) && dpi->dbr) in bnxt_qplib_alloc_dpi()
890 dpi->dbr = ioremap(umaddr, PAGE_SIZE); in bnxt_qplib_alloc_dpi()
892 if (!dpi->dbr) { in bnxt_qplib_alloc_dpi()
897 dpi->type = type; in bnxt_qplib_alloc_dpi()
904 struct bnxt_qplib_dpi *dpi) in bnxt_qplib_dealloc_dpi() argument
910 if (dpi->bit >= dpit->max) { in bnxt_qplib_dealloc_dpi()
912 "Invalid DPI? dpi = %d, bit = %d\n", in bnxt_qplib_dealloc_dpi()
913 dpi->dpi, dpi->bit); in bnxt_qplib_dealloc_dpi()
918 if (dpi->dpi && dpi->type != BNXT_QPLIB_DPI_TYPE_KERNEL) { in bnxt_qplib_dealloc_dpi()
919 if (dpi->type == BNXT_QPLIB_DPI_TYPE_WC && in bnxt_qplib_dealloc_dpi()
920 _is_chip_p7(res->cctx) && dpi->dbr) in bnxt_qplib_dealloc_dpi()
922 pci_iounmap(res->pdev, dpi->dbr); in bnxt_qplib_dealloc_dpi()
925 if (test_and_set_bit(dpi->bit, dpit->tbl)) { in bnxt_qplib_dealloc_dpi()
927 "Freeing an unused DPI? dpi = %d, bit = %d\n", in bnxt_qplib_dealloc_dpi()
928 dpi->dpi, dpi->bit); in bnxt_qplib_dealloc_dpi()
933 dpit->app_tbl[dpi->bit] = NULL; in bnxt_qplib_dealloc_dpi()
934 memset(dpi, 0, sizeof(*dpi)); in bnxt_qplib_dealloc_dpi()
977 "QPLIB: DPI app tbl allocation failed"); in bnxt_qplib_alloc_dpi_tbl()
989 "QPLIB: DPI tbl allocation failed for size = %d\n", in bnxt_qplib_alloc_dpi_tbl()
1153 dev_err(&res->pdev->dev, "priviledged dpi map failed!\n"); in bnxt_qplib_map_db_bar()