On 17-07-20, 04:33, Laurent Pinchart wrote: > +static void xilinx_dpdma_debugfs_cleanup(struct xilinx_dpdma_device *xdev) > +{ > + debugfs_remove_recursive(xdev->debugfs_dir); you can skip this step as core will do so when you call dma_async_device_unregister() > + xdev->debugfs_dir = NULL; > +} > + > +static int xilinx_dpdma_debugfs_init(struct xilinx_dpdma_device *xdev) > +{ > + struct dentry *dent; > + > + dpdma_debugfs.testcase = DPDMA_TC_NONE; > + > + dent = debugfs_create_dir("dpdma", xdev->common.dbg_dev_root); > + if (IS_ERR(dent)) { > + dev_err(xdev->dev, "Failed to create debugfs directory\n"); > + return -ENODEV; > + } Do you really need another dir in your device root. You should already have .../dmaengine/<dpdma-dev-name>/ adding dpdma dir seems overkill -- ~Vinod