On Wed, May 06, 2020 at 10:09:07PM +0200, Christophe JAILLET wrote: > @@ -237,7 +239,7 @@ static int tegra186_emc_probe(struct platform_device *pdev) > "failed to set rate range [%lu-%lu] for %pC\n", > emc->debugfs.min_rate, emc->debugfs.max_rate, > emc->clk); > - return err; > + goto err_put_bpmp; > } > > emc->debugfs.root = debugfs_create_dir("emc", NULL); Not really related to this patch but the error handling on this debugfs_create_dir() call is wrong. It never returns NULL. The error should just be ignored. It shouldn't try print a message when debugfs is deliberately disabled. As in the correct code looks like: emc->debugfs.root = debugfs_create_dir("emc", NULL); - if (!emc->debugfs.root) { - dev_err(&pdev->dev, "failed to create debugfs directory\n"); - return 0; - } - debugfs_create_file("available_rates", S_IRUGO, emc->debugfs.root, emc, &tegra186_emc_debug_available_rates_fops); debugfs_create_file("min_rate", S_IRUGO | S_IWUSR, emc->debugfs.root, debugfs_create_file() will return an error pointer if debugfs_create_dir() fails or if debugfs is disabled. (It is a no-op). regards, dan carpenter