Lines Matching refs:idxd

123 	struct idxd_device *idxd = wq->idxd;  in idxd_file_dev_release()  local
132 idxd_device_drain_pasid(idxd, ctx->pasid); in idxd_file_dev_release()
134 if (device_user_pasid_enabled(idxd)) { in idxd_file_dev_release()
167 cdev_ctx = &ictx[wq->idxd->data->type]; in idxd_cdev_dev_release()
199 dev_warn(&wq->idxd->pdev->dev, "xarray cmpxchg failed for pasid %u\n", in idxd_xa_pasid_remove()
224 struct idxd_device *idxd; in idxd_cdev_open() local
233 idxd = wq->idxd; in idxd_cdev_open()
234 dev = &idxd->pdev->dev; in idxd_cdev_open()
253 if (device_user_pasid_enabled(idxd)) { in idxd_cdev_open()
322 if (device_user_pasid_enabled(idxd)) in idxd_cdev_open()
325 if (device_user_pasid_enabled(idxd)) in idxd_cdev_open()
335 struct idxd_device *idxd = wq->idxd; in idxd_cdev_evl_drain_pasid() local
336 struct idxd_evl *evl = idxd->evl; in idxd_cdev_evl_drain_pasid()
339 int ent_size = evl_ent_size(idxd); in idxd_cdev_evl_drain_pasid()
346 status.bits = ioread64(idxd->reg_base + IDXD_EVLSTATUS_OFFSET); in idxd_cdev_evl_drain_pasid()
365 struct idxd_device *idxd = wq->idxd; in idxd_cdev_release() local
366 struct device *dev = &idxd->pdev->dev; in idxd_cdev_release()
379 struct device *dev = &wq->idxd->pdev->dev; in check_vma()
396 struct idxd_device *idxd = wq->idxd; in idxd_cdev_mmap() local
397 struct pci_dev *pdev = idxd->pdev; in idxd_cdev_mmap()
412 if (!idxd->user_submission_safe && !capable(CAP_SYS_RAWIO)) in idxd_cdev_mmap()
433 struct idxd_dev *idxd_dev = &wq->idxd->idxd_dev; in idxd_submit_user_descriptor()
450 !wq->idxd->user_submission_safe) in idxd_submit_user_descriptor()
498 struct idxd_device *idxd = wq->idxd; in idxd_cdev_poll() local
502 spin_lock(&idxd->dev_lock); in idxd_cdev_poll()
503 if (idxd->sw_err.valid) in idxd_cdev_poll()
505 spin_unlock(&idxd->dev_lock); in idxd_cdev_poll()
519 int idxd_cdev_get_major(struct idxd_device *idxd) in idxd_cdev_get_major() argument
521 return MAJOR(ictx[idxd->data->type].devt); in idxd_cdev_get_major()
526 struct idxd_device *idxd = wq->idxd; in idxd_wq_add_cdev() local
541 cdev_ctx = &ictx[wq->idxd->data->type]; in idxd_wq_add_cdev()
555 rc = dev_set_name(dev, "%s/wq%u.%u", idxd->data->name_prefix, idxd->id, wq->id); in idxd_wq_add_cdev()
563 dev_dbg(&wq->idxd->pdev->dev, "cdev_add failed: %d\n", rc); in idxd_wq_add_cdev()
589 struct idxd_device *idxd = wq->idxd; in idxd_user_drv_probe() local
592 if (idxd->state != IDXD_DEV_ENABLED) in idxd_user_drv_probe()
598 idxd->cmd_status = IDXD_SCMD_WQ_NO_DRV_NAME; in idxd_user_drv_probe()
613 if (!device_user_pasid_enabled(idxd)) { in idxd_user_drv_probe()
614 idxd->cmd_status = IDXD_SCMD_WQ_USER_NO_IOMMU; in idxd_user_drv_probe()
615 dev_dbg(&idxd->pdev->dev, in idxd_user_drv_probe()
635 idxd->cmd_status = IDXD_SCMD_CDEV_ERR; in idxd_user_drv_probe()
639 idxd->cmd_status = 0; in idxd_user_drv_probe()
726 struct device *dev = &wq->idxd->pdev->dev; in idxd_copy_cr()