summaryrefslogtreecommitdiffstats
path: root/drivers/dma/idxd/sysfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma/idxd/sysfs.c')
-rw-r--r--drivers/dma/idxd/sysfs.c20
1 files changed, 1 insertions, 19 deletions
diff --git a/drivers/dma/idxd/sysfs.c b/drivers/dma/idxd/sysfs.c
index 221a61e3bb9c..abea8aca6799 100644
--- a/drivers/dma/idxd/sysfs.c
+++ b/drivers/dma/idxd/sysfs.c
@@ -66,26 +66,8 @@ static int idxd_dsa_drv_probe(struct idxd_dev *idxd_dev)
static void idxd_dsa_drv_remove(struct idxd_dev *idxd_dev)
{
- struct device *dev = &idxd_dev->conf_dev;
-
if (is_idxd_dev(idxd_dev)) {
- struct idxd_device *idxd = idxd_dev_to_idxd(idxd_dev);
- int i;
-
- for (i = 0; i < idxd->max_wqs; i++) {
- struct idxd_wq *wq = idxd->wqs[i];
-
- if (wq->state == IDXD_WQ_DISABLED)
- continue;
- dev_warn(dev, "Active wq %d on disable %s.\n", i,
- dev_name(wq_confdev(wq)));
- device_release_driver(wq_confdev(wq));
- }
-
- idxd_unregister_dma_device(idxd);
- idxd_device_disable(idxd);
- if (test_bit(IDXD_FLAG_CONFIGURABLE, &idxd->flags))
- idxd_device_reset(idxd);
+ idxd_device_drv_remove(idxd_dev);
return;
}