diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2022-03-14 10:10:25 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2022-03-14 10:10:25 +0100 |
commit | 26dc1bf751724540716a4a17a80f7605ebf61b3a (patch) | |
tree | abdbff429227f48dfd0855dac8ad6381ee8b9ac1 /drivers/reset/core.c | |
parent | d8ef1573dfc3475d4f5dffa37cb4444b5d6f21eb (diff) | |
parent | 79d2a2d4a4608fd0ca9f1eeb06e4aee0fb095f19 (diff) | |
download | barebox-26dc1bf751724540716a4a17a80f7605ebf61b3a.tar.gz barebox-26dc1bf751724540716a4a17a80f7605ebf61b3a.tar.xz |
Merge branch 'for-next/stm32'
Diffstat (limited to 'drivers/reset/core.c')
-rw-r--r-- | drivers/reset/core.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/reset/core.c b/drivers/reset/core.c index 17deb3fa8f..4355c3415e 100644 --- a/drivers/reset/core.c +++ b/drivers/reset/core.c @@ -82,6 +82,27 @@ void reset_controller_unregister(struct reset_controller_dev *rcdev) EXPORT_SYMBOL_GPL(reset_controller_unregister); /** + * reset_control_status - returns a negative errno if not supported, a + * positive value if the reset line is asserted, or zero if the reset + * line is not asserted or if the desc is NULL (optional reset). + * @rstc: reset controller + */ +int reset_control_status(struct reset_control *rstc) +{ + if (!rstc) + return 0; + + if (WARN_ON(IS_ERR(rstc))) + return -EINVAL; + + if (rstc->rcdev->ops->status) + return rstc->rcdev->ops->status(rstc->rcdev, rstc->id); + + return -ENOTSUPP; +} +EXPORT_SYMBOL_GPL(reset_control_status); + +/** * reset_control_reset - reset the controlled device * @rstc: reset controller */ |