public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Kishon Vijay Abraham I <kishon@ti.com>
To: u-boot@lists.denx.de
Subject: [PATCH 1/2] reset: Do not return NULL on error for devm_reset_control_get_optional()
Date: Fri, 7 May 2021 16:32:01 +0530	[thread overview]
Message-ID: <20210507110202.13697-2-kishon@ti.com> (raw)
In-Reply-To: <20210507110202.13697-1-kishon@ti.com>

In order for client to know whether it was able to successfully get a
reset controller or not, do not return NULL on error for
devm_reset_control_get_optional() and
devm_reset_bulk_get_optional_by_node().

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
---
 drivers/reset/reset-uclass.c       | 16 ++--------------
 drivers/reset/sandbox-reset-test.c |  2 +-
 2 files changed, 3 insertions(+), 15 deletions(-)

diff --git a/drivers/reset/reset-uclass.c b/drivers/reset/reset-uclass.c
index ac89eaf098..906f58ce3d 100644
--- a/drivers/reset/reset-uclass.c
+++ b/drivers/reset/reset-uclass.c
@@ -299,12 +299,7 @@ struct reset_ctl *devm_reset_control_get(struct udevice *dev, const char *id)
 struct reset_ctl *devm_reset_control_get_optional(struct udevice *dev,
 						  const char *id)
 {
-	struct reset_ctl *r = devm_reset_control_get(dev, id);
-
-	if (IS_ERR(r))
-		return NULL;
-
-	return r;
+	return devm_reset_control_get(dev, id);
 }
 
 static void devm_reset_bulk_release(struct udevice *dev, void *res)
@@ -337,14 +332,7 @@ struct reset_ctl_bulk *devm_reset_bulk_get_by_node(struct udevice *dev,
 struct reset_ctl_bulk *devm_reset_bulk_get_optional_by_node(struct udevice *dev,
 							    ofnode node)
 {
-	struct reset_ctl_bulk *bulk;
-
-	bulk = devm_reset_bulk_get_by_node(dev, node);
-
-	if (IS_ERR(bulk))
-		return NULL;
-
-	return bulk;
+	return devm_reset_bulk_get_by_node(dev, node);
 }
 
 struct reset_ctl_bulk *devm_reset_bulk_get(struct udevice *dev)
diff --git a/drivers/reset/sandbox-reset-test.c b/drivers/reset/sandbox-reset-test.c
index 51b79810c8..2a810fda3a 100644
--- a/drivers/reset/sandbox-reset-test.c
+++ b/drivers/reset/sandbox-reset-test.c
@@ -38,7 +38,7 @@ int sandbox_reset_test_get_devm(struct udevice *dev)
 		return -EINVAL;
 
 	r = devm_reset_control_get_optional(dev, "not-a-valid-reset-ctl");
-	if (r)
+	if (IS_ERR(r) && PTR_ERR(r) != -ENODATA)
 		return -EINVAL;
 
 	sbrt->ctlp = devm_reset_control_get(dev, "test");
-- 
2.17.1

  reply	other threads:[~2021-05-07 11:02 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-07 11:02 [PATCH 0/2] reset: Fix the behavior of optional reset Kishon Vijay Abraham I
2021-05-07 11:02 ` Kishon Vijay Abraham I [this message]
2021-05-07 16:34   ` [PATCH 1/2] reset: Do not return NULL on error for devm_reset_control_get_optional() Simon Glass
2021-05-11  6:26     ` Kishon Vijay Abraham I
2021-05-11 16:39       ` Simon Glass
2021-05-13  6:15         ` Kishon Vijay Abraham I
2021-05-13 23:56           ` Simon Glass
2021-05-14  5:18             ` Kishon Vijay Abraham I
2021-06-08 10:40               ` Pratyush Yadav
2021-06-19 17:32                 ` Simon Glass
2021-05-07 11:02 ` [PATCH 2/2] reset: Let reset API's handle gracefully if reset_ctl is -ENODATA Kishon Vijay Abraham I
2021-05-07 16:34   ` Simon Glass
2021-05-13  6:30     ` Kishon Vijay Abraham I
2021-05-13 17:00       ` Simon Glass

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=20210507110202.13697-2-kishon@ti.com \
    --to=kishon@ti.com \
    --cc=u-boot@lists.denx.de \
    /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