pm: use enum for device PM states

Move all PM_DEVICE_STATE_* definitions to an enum. The
PM_DEVICE_STATE_SET and PM_DEVICE_STATE_GET definitions have been kept
out of the enum since they do not represent any state. However, their
name has not been changed since they will be removed soon.

All drivers and tests have been adjusted accordingly.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
This commit is contained in:
Gerard Marull-Paretas 2021-06-03 19:06:53 +02:00 committed by Anas Nashif
commit cc2f0e9c08
53 changed files with 214 additions and 231 deletions

View file

@ -192,16 +192,17 @@ static int arc_v2_irq_unit_get_state(const struct device *dev)
* @return operation result
*/
static int arc_v2_irq_unit_device_ctrl(const struct device *dev,
uint32_t ctrl_command, uint32_t *context,
uint32_t ctrl_command,
enum pm_device_state *state,
pm_device_cb cb, void *arg)
{
int ret = 0;
unsigned int key = arch_irq_lock();
if (ctrl_command == PM_DEVICE_STATE_SET) {
if (*((uint32_t *)context) == PM_DEVICE_STATE_SUSPEND) {
if (*state == PM_DEVICE_STATE_SUSPEND) {
ret = arc_v2_irq_unit_suspend(dev);
} else if (*((uint32_t *)context) == PM_DEVICE_STATE_ACTIVE) {
} else if (*state == PM_DEVICE_STATE_ACTIVE) {
ret = arc_v2_irq_unit_resume(dev);
}
} else if (ctrl_command == PM_DEVICE_STATE_GET) {