diff --git a/drivers/power/pm/pm_register.c b/drivers/power/pm/pm_register.c index a9e5093de3c..81039c6b94e 100644 --- a/drivers/power/pm/pm_register.c +++ b/drivers/power/pm/pm_register.c @@ -57,8 +57,12 @@ int pm_domain_register(int domain, FAR struct pm_callback_s *cb) { + FAR struct pm_domain_s *pdom; irqstate_t flags; - struct pm_domain_s *pdom = &g_pmdomains[domain]; + + DEBUGASSERT(domain >= 0 && domain < CONFIG_PM_NDOMAINS); + + pdom = &g_pmdomains[domain]; flags = spin_lock_irqsave(&pdom->lock); /* Add the new entry to the end of the list of registered callbacks */ diff --git a/drivers/power/pm/pm_unregister.c b/drivers/power/pm/pm_unregister.c index 12a9ebcb5ee..f5951a5e818 100644 --- a/drivers/power/pm/pm_unregister.c +++ b/drivers/power/pm/pm_unregister.c @@ -56,8 +56,12 @@ int pm_domain_unregister(int domain, FAR struct pm_callback_s *cb) { + FAR struct pm_domain_s *pdom; irqstate_t flags; - struct pm_domain_s *pdom = &g_pmdomains[domain]; + + DEBUGASSERT(domain >= 0 && domain < CONFIG_PM_NDOMAINS); + + pdom = &g_pmdomains[domain]; flags = spin_lock_irqsave(&pdom->lock); /* Remove entry from the list of registered callbacks. */