]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
firmware: xilinx: Fix an error handling path in 'zynqmp_firmware_probe()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sun, 10 May 2020 13:03:57 +0000 (15:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 May 2020 14:20:02 +0000 (16:20 +0200)
If 'mfd_add_devices()' fails, we must undo 'zynqmp_pm_api_debugfs_init()'
otherwise some debugfs directory and files will be left.

Just move the call to 'zynqmp_pm_api_debugfs_init()' a few lines below to
fix the issue.

Fixes: e23d9c6d0d49 ("drivers: soc: xilinx: Add ZynqMP power domain driver")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Jolly Shah <jolly.shah@xilinx.com>
Link: https://lore.kernel.org/r/20200510130357.233364-1-christophe.jaillet@wanadoo.fr
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/firmware/xilinx/zynqmp.c

index 8095fa84d5d727bd33efecfd92b08586b0a8a9c9..8d1ff2454e2e3aa49dfe1350995b63b650bf44dd 100644 (file)
@@ -1235,8 +1235,6 @@ static int zynqmp_firmware_probe(struct platform_device *pdev)
        pr_info("%s Trustzone version v%d.%d\n", __func__,
                pm_tz_version >> 16, pm_tz_version & 0xFFFF);
 
-       zynqmp_pm_api_debugfs_init();
-
        ret = mfd_add_devices(&pdev->dev, PLATFORM_DEVID_NONE, firmware_devs,
                              ARRAY_SIZE(firmware_devs), NULL, 0, NULL);
        if (ret) {
@@ -1244,6 +1242,8 @@ static int zynqmp_firmware_probe(struct platform_device *pdev)
                return ret;
        }
 
+       zynqmp_pm_api_debugfs_init();
+
        return of_platform_populate(dev->of_node, NULL, NULL, dev);
 }