Patch "soc: sunxi: sram: Fix probe function ordering issues" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    soc: sunxi: sram: Fix probe function ordering issues

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     soc-sunxi-sram-fix-probe-function-ordering-issues.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit be79a8e0ee64541df8e6e97a44db57fd7ef6baf1
Author: Samuel Holland <samuel@xxxxxxxxxxxx>
Date:   Sun Aug 14 23:12:42 2022 -0500

    soc: sunxi: sram: Fix probe function ordering issues
    
    [ Upstream commit 49fad91a7b8941979c3e9a35f9894ac45bc5d3d6 ]
    
    Errors from debugfs are intended to be non-fatal, and should not prevent
    the driver from probing.
    
    Since debugfs file creation is treated as infallible, move it below the
    parts of the probe function that can fail. This prevents an error
    elsewhere in the probe function from causing the file to leak. Do the
    same for the call to of_platform_populate().
    
    Finally, checkpatch suggests an octal literal for the file permissions.
    
    Fixes: 4af34b572a85 ("drivers: soc: sunxi: Introduce SoC driver to map SRAMs")
    Fixes: 5828729bebbb ("soc: sunxi: export a regmap for EMAC clock reg on A64")
    Reviewed-by: Jernej Skrabec <jernej.skrabec@xxxxxxxxx>
    Signed-off-by: Samuel Holland <samuel@xxxxxxxxxxxx>
    Tested-by: Heiko Stuebner <heiko@xxxxxxxxx>
    Signed-off-by: Jernej Skrabec <jernej.skrabec@xxxxxxxxx>
    Link: https://lore.kernel.org/r/20220815041248.53268-6-samuel@xxxxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/soc/sunxi/sunxi_sram.c b/drivers/soc/sunxi/sunxi_sram.c
index ba05727b2614..ef1620ea4bdb 100644
--- a/drivers/soc/sunxi/sunxi_sram.c
+++ b/drivers/soc/sunxi/sunxi_sram.c
@@ -321,9 +321,9 @@ static struct regmap_config sunxi_sram_emac_clock_regmap = {
 
 static int __init sunxi_sram_probe(struct platform_device *pdev)
 {
-	struct dentry *d;
 	struct regmap *emac_clock;
 	const struct sunxi_sramc_variant *variant;
+	struct device *dev = &pdev->dev;
 
 	sram_dev = &pdev->dev;
 
@@ -335,13 +335,6 @@ static int __init sunxi_sram_probe(struct platform_device *pdev)
 	if (IS_ERR(base))
 		return PTR_ERR(base);
 
-	of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
-
-	d = debugfs_create_file("sram", S_IRUGO, NULL, NULL,
-				&sunxi_sram_fops);
-	if (!d)
-		return -ENOMEM;
-
 	if (variant->has_emac_clock) {
 		emac_clock = devm_regmap_init_mmio(&pdev->dev, base,
 						   &sunxi_sram_emac_clock_regmap);
@@ -350,6 +343,10 @@ static int __init sunxi_sram_probe(struct platform_device *pdev)
 			return PTR_ERR(emac_clock);
 	}
 
+	of_platform_populate(dev->of_node, NULL, NULL, dev);
+
+	debugfs_create_file("sram", 0444, NULL, NULL, &sunxi_sram_fops);
+
 	return 0;
 }
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux