diff options
author | Tom Rini <trini@konsulko.com> | 2020-09-30 16:11:11 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-09-30 16:11:11 -0400 |
commit | 097bbf1ba97b8ece930deca663f05ea444e99e45 (patch) | |
tree | ae4db71e77556f34f9fa7023205e4284c1d72c38 /drivers/reset/sandbox-reset.c | |
parent | 01114adfc1e0bf3cf5e2f3da858bb2c8e9810c1c (diff) | |
parent | c0dd177a9986b97dab42f07b3db0ed1d2fe6e540 (diff) |
Merge branch '2020-09-30-add-new-apis' into next
- SCMI firmware support
- regmap, GPIO, reset API enhancements
Diffstat (limited to 'drivers/reset/sandbox-reset.c')
-rw-r--r-- | drivers/reset/sandbox-reset.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/reset/sandbox-reset.c b/drivers/reset/sandbox-reset.c index 7a6f7f676cc..08008d875ab 100644 --- a/drivers/reset/sandbox-reset.c +++ b/drivers/reset/sandbox-reset.c @@ -15,6 +15,7 @@ struct sandbox_reset_signal { bool asserted; + bool requested; }; struct sandbox_reset { @@ -23,18 +24,24 @@ struct sandbox_reset { static int sandbox_reset_request(struct reset_ctl *reset_ctl) { + struct sandbox_reset *sbr = dev_get_priv(reset_ctl->dev); + debug("%s(reset_ctl=%p)\n", __func__, reset_ctl); if (reset_ctl->id >= SANDBOX_RESET_SIGNALS) return -EINVAL; + sbr->signals[reset_ctl->id].requested = true; return 0; } static int sandbox_reset_free(struct reset_ctl *reset_ctl) { + struct sandbox_reset *sbr = dev_get_priv(reset_ctl->dev); + debug("%s(reset_ctl=%p)\n", __func__, reset_ctl); + sbr->signals[reset_ctl->id].requested = false; return 0; } @@ -107,3 +114,15 @@ int sandbox_reset_query(struct udevice *dev, unsigned long id) return sbr->signals[id].asserted; } + +int sandbox_reset_is_requested(struct udevice *dev, unsigned long id) +{ + struct sandbox_reset *sbr = dev_get_priv(dev); + + debug("%s(dev=%p, id=%ld)\n", __func__, dev, id); + + if (id >= SANDBOX_RESET_SIGNALS) + return -EINVAL; + + return sbr->signals[id].requested; +} |