linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Samuel Holland <samuel@sholland.org>
To: Chen-Yu Tsai <wens@csie.org>, Jernej Skrabec <jernej.skrabec@gmail.com>
Cc: Samuel Holland <samuel@sholland.org>,
	Arnd Bergmann <arnd@arndb.de>,
	Hans de Goede <hdegoede@redhat.com>,
	Icenowy Zheng <icenowy@aosc.io>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Maxime Ripard <mripard@kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-sunxi@lists.linux.dev
Subject: [PATCH 4/9] soc: sunxi: sram: Fix probe function ordering issues
Date: Sun, 31 Jul 2022 22:05:04 -0500	[thread overview]
Message-ID: <20220801030509.21966-5-samuel@sholland.org> (raw)
In-Reply-To: <20220801030509.21966-1-samuel@sholland.org>

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")
Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 drivers/soc/sunxi/sunxi_sram.c | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/drivers/soc/sunxi/sunxi_sram.c b/drivers/soc/sunxi/sunxi_sram.c
index a858a37fcdd4..52d07bed7664 100644
--- a/drivers/soc/sunxi/sunxi_sram.c
+++ b/drivers/soc/sunxi/sunxi_sram.c
@@ -332,9 +332,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;
 
@@ -346,13 +346,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->num_emac_clocks > 0) {
 		emac_clock = devm_regmap_init_mmio(&pdev->dev, base,
 						   &sunxi_sram_emac_clock_regmap);
@@ -361,6 +354,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;
 }
 
-- 
2.35.1


  parent reply	other threads:[~2022-08-01  3:05 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-01  3:05 [PATCH 0/9] soc: sunxi: sram: Fixes and D1 support Samuel Holland
2022-08-01  3:05 ` [PATCH 1/9] dt-bindings: sram: sunxi-sram: Add D1 compatible string Samuel Holland
2022-08-02  9:03   ` Krzysztof Kozlowski
2022-08-01  3:05 ` [PATCH 2/9] soc: sunxi: sram: Actually claim SRAM regions Samuel Holland
2022-08-14 10:21   ` Jernej Škrabec
2022-08-01  3:05 ` [PATCH 3/9] soc: sunxi: sram: Prevent the driver from being unbound Samuel Holland
2022-08-14 10:26   ` Jernej Škrabec
2022-08-01  3:05 ` Samuel Holland [this message]
2022-08-14 10:34   ` [PATCH 4/9] soc: sunxi: sram: Fix probe function ordering issues Jernej Škrabec
2022-08-01  3:05 ` [PATCH 5/9] soc: sunxi: sram: Fix debugfs info for A64 SRAM C Samuel Holland
2022-08-14 18:28   ` Jernej Škrabec
2022-08-01  3:05 ` [PATCH 6/9] soc: sunxi: sram: Return void from the release function Samuel Holland
2022-08-14 18:29   ` Jernej Škrabec
2022-08-01  3:05 ` [PATCH 7/9] soc: sunxi: sram: Save a pointer to the OF match data Samuel Holland
2022-08-14 18:29   ` Jernej Škrabec
2022-08-01  3:05 ` [PATCH 8/9] soc: sunxi: sram: Export the LDO control register Samuel Holland
2022-08-14 18:32   ` Jernej Škrabec
2022-08-01  3:05 ` [PATCH 9/9] soc: sunxi: sram: Add support for the D1 system control Samuel Holland
2022-08-14 18:33   ` Jernej Škrabec

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220801030509.21966-5-samuel@sholland.org \
    --to=samuel@sholland.org \
    --cc=arnd@arndb.de \
    --cc=devicetree@vger.kernel.org \
    --cc=hdegoede@redhat.com \
    --cc=icenowy@aosc.io \
    --cc=jernej.skrabec@gmail.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sunxi@lists.linux.dev \
    --cc=mripard@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=wens@csie.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).