diff --git a/doc/reference/power_management/index.rst b/doc/reference/power_management/index.rst index fba889c8089..060f19ea93a 100644 --- a/doc/reference/power_management/index.rst +++ b/doc/reference/power_management/index.rst @@ -295,7 +295,7 @@ Device Set Power State .. code-block:: c - int device_set_power_state(const struct device *dev, uint32_t device_power_state, pm_device_cb cb, void *arg); + int pm_device_state_set(const struct device *dev, uint32_t device_power_state, pm_device_cb cb, void *arg); Calls the :c:func:`pm_control()` handler function implemented by the device driver with PM_DEVICE_SET_POWER_STATE command. @@ -305,7 +305,7 @@ Device Get Power State .. code-block:: c - int device_get_power_state(const struct device *dev, uint32_t * device_power_state); + int pm_device_state_get(const struct device *dev, uint32_t * device_power_state); Calls the :c:func:`pm_control()` handler function implemented by the device driver with PM_DEVICE_GET_POWER_STATE command. diff --git a/drivers/led/led_pwm.c b/drivers/led/led_pwm.c index ce259defe19..202f1f55df7 100644 --- a/drivers/led/led_pwm.c +++ b/drivers/led/led_pwm.c @@ -160,7 +160,7 @@ static int led_pwm_pm_set_state(const struct device *dev, uint32_t new_state) const struct led_pwm *led_pwm = &config->led[i]; LOG_DBG("Switching PWM %p to state %" PRIu32, led_pwm->dev, new_state); - int err = device_set_power_state(led_pwm->dev, new_state, NULL, NULL); + int err = pm_device_state_set(led_pwm->dev, new_state, NULL, NULL); if (err) { LOG_ERR("Cannot switch PWM %p power state", led_pwm->dev); diff --git a/drivers/modem/hl7800.c b/drivers/modem/hl7800.c index fe99ebf3289..84f774db858 100644 --- a/drivers/modem/hl7800.c +++ b/drivers/modem/hl7800.c @@ -3489,8 +3489,8 @@ static void shutdown_uart(void) if (ictx.uart_on) { HL7800_IO_DBG_LOG("Power OFF the UART"); uart_irq_rx_disable(ictx.mdm_ctx.uart_dev); - rc = device_set_power_state(ictx.mdm_ctx.uart_dev, - PM_DEVICE_OFF_STATE, NULL, NULL); + rc = pm_device_state_set(ictx.mdm_ctx.uart_dev, + PM_DEVICE_OFF_STATE, NULL, NULL); if (rc) { LOG_ERR("Error disabling UART peripheral (%d)", rc); } @@ -3506,8 +3506,8 @@ static void power_on_uart(void) if (!ictx.uart_on) { HL7800_IO_DBG_LOG("Power ON the UART"); - rc = device_set_power_state(ictx.mdm_ctx.uart_dev, - PM_DEVICE_ACTIVE_STATE, NULL, NULL); + rc = pm_device_state_set(ictx.mdm_ctx.uart_dev, + PM_DEVICE_ACTIVE_STATE, NULL, NULL); if (rc) { LOG_ERR("Error enabling UART peripheral (%d)", rc); } diff --git a/drivers/modem/modem_receiver.c b/drivers/modem/modem_receiver.c index 67006779d51..00364157558 100644 --- a/drivers/modem/modem_receiver.c +++ b/drivers/modem/modem_receiver.c @@ -199,7 +199,7 @@ int mdm_receiver_sleep(struct mdm_receiver_context *ctx) { uart_irq_rx_disable(ctx->uart_dev); #ifdef PM_DEVICE_LOW_POWER_STATE - device_set_power_state(ctx->uart_dev, PM_DEVICE_LOW_POWER_STATE, NULL, NULL); + pm_device_state_set(ctx->uart_dev, PM_DEVICE_LOW_POWER_STATE, NULL, NULL); #endif return 0; } @@ -207,7 +207,7 @@ int mdm_receiver_sleep(struct mdm_receiver_context *ctx) int mdm_receiver_wake(struct mdm_receiver_context *ctx) { #ifdef PM_DEVICE_LOW_POWER_STATE - device_set_power_state(ctx->uart_dev, PM_DEVICE_ACTIVE_STATE, NULL, NULL); + pm_device_state_set(ctx->uart_dev, PM_DEVICE_ACTIVE_STATE, NULL, NULL); #endif uart_irq_rx_enable(ctx->uart_dev); diff --git a/include/pm/device.h b/include/pm/device.h index 5c44d0e3d2c..d226c553d27 100644 --- a/include/pm/device.h +++ b/include/pm/device.h @@ -131,9 +131,8 @@ const char *pm_device_state_str(uint32_t state); * @retval 0 If successful in queuing the request or changing the state. * @retval Errno Negative errno code if failure. Callback will not be called. */ -int device_set_power_state(const struct device *dev, - uint32_t device_power_state, - pm_device_cb cb, void *arg); +int pm_device_state_set(const struct device *dev, uint32_t device_power_state, + pm_device_cb cb, void *arg); /** * @brief Call the get power state function of a device @@ -148,8 +147,7 @@ int device_set_power_state(const struct device *dev, * @retval 0 If successful. * @retval Errno Negative errno code if failure. */ -int device_get_power_state(const struct device *dev, - uint32_t *device_power_state); +int pm_device_state_get(const struct device *dev, uint32_t *device_power_state); /** Alias for legacy use of device_pm_control_nop */ #define device_pm_control_nop __DEPRECATED_MACRO NULL diff --git a/samples/boards/nrf/system_off/src/main.c b/samples/boards/nrf/system_off/src/main.c index 1e2ad572be6..50840f9493b 100644 --- a/samples/boards/nrf/system_off/src/main.c +++ b/samples/boards/nrf/system_off/src/main.c @@ -66,17 +66,17 @@ void main(void) k_busy_wait(BUSY_WAIT_S * USEC_PER_SEC); printk("Busy-wait %u s with UART off\n", BUSY_WAIT_S); - rc = device_set_power_state(cons, PM_DEVICE_LOW_POWER_STATE, NULL, NULL); + rc = pm_device_state_set(cons, PM_DEVICE_LOW_POWER_STATE, NULL, NULL); k_busy_wait(BUSY_WAIT_S * USEC_PER_SEC); - rc = device_set_power_state(cons, PM_DEVICE_ACTIVE_STATE, NULL, NULL); + rc = pm_device_state_set(cons, PM_DEVICE_ACTIVE_STATE, NULL, NULL); printk("Sleep %u s\n", SLEEP_S); k_sleep(K_SECONDS(SLEEP_S)); printk("Sleep %u s with UART off\n", SLEEP_S); - rc = device_set_power_state(cons, PM_DEVICE_LOW_POWER_STATE, NULL, NULL); + rc = pm_device_state_set(cons, PM_DEVICE_LOW_POWER_STATE, NULL, NULL); k_sleep(K_SECONDS(SLEEP_S)); - rc = device_set_power_state(cons, PM_DEVICE_ACTIVE_STATE, NULL, NULL); + rc = pm_device_state_set(cons, PM_DEVICE_ACTIVE_STATE, NULL, NULL); printk("Entering system off; press BUTTON1 to restart\n"); diff --git a/samples/drivers/spi_flash_at45/src/main.c b/samples/drivers/spi_flash_at45/src/main.c index b7336c9d5d2..54dbf301469 100644 --- a/samples/drivers/spi_flash_at45/src/main.c +++ b/samples/drivers/spi_flash_at45/src/main.c @@ -151,8 +151,8 @@ void main(void) #if IS_ENABLED(CONFIG_PM_DEVICE) printk("Putting the flash device into low power state... "); - err = device_set_power_state(flash_dev, PM_DEVICE_LOW_POWER_STATE, - NULL, NULL); + err = pm_device_state_set(flash_dev, PM_DEVICE_LOW_POWER_STATE, + NULL, NULL); if (err != 0) { printk("FAILED\n"); return; diff --git a/samples/sensor/apds9960/src/main.c b/samples/sensor/apds9960/src/main.c index 3b5e754e6d8..82ac4fb3532 100644 --- a/samples/sensor/apds9960/src/main.c +++ b/samples/sensor/apds9960/src/main.c @@ -80,11 +80,11 @@ void main(void) uint32_t p_state; p_state = PM_DEVICE_LOW_POWER_STATE; - device_set_power_state(dev, p_state, NULL, NULL); + pm_device_state_set(dev, p_state, NULL, NULL); printk("set low power state for 2s\n"); k_sleep(K_MSEC(2000)); p_state = PM_DEVICE_ACTIVE_STATE; - device_set_power_state(dev, p_state, NULL, NULL); + pm_device_state_set(dev, p_state, NULL, NULL); #endif } } diff --git a/samples/sensor/fdc2x1x/src/main.c b/samples/sensor/fdc2x1x/src/main.c index b664f82bf84..ccf17887d61 100644 --- a/samples/sensor/fdc2x1x/src/main.c +++ b/samples/sensor/fdc2x1x/src/main.c @@ -98,13 +98,13 @@ void main(void) uint32_t p_state; p_state = PM_DEVICE_LOW_POWER_STATE; - device_set_power_state(dev, p_state, pm_cb, NULL); + pm_device_state_set(dev, p_state, pm_cb, NULL); p_state = PM_DEVICE_OFF_STATE; - device_set_power_state(dev, p_state, pm_cb, NULL); + pm_device_state_set(dev, p_state, pm_cb, NULL); p_state = PM_DEVICE_ACTIVE_STATE; - device_set_power_state(dev, p_state, pm_cb, NULL); + pm_device_state_set(dev, p_state, pm_cb, NULL); #endif while (1) { @@ -133,10 +133,10 @@ void main(void) #ifdef CONFIG_PM_DEVICE p_state = PM_DEVICE_OFF_STATE; - device_set_power_state(dev, p_state, pm_cb, NULL); + pm_device_state_set(dev, p_state, pm_cb, NULL); k_sleep(K_MSEC(2000)); p_state = PM_DEVICE_ACTIVE_STATE; - device_set_power_state(dev, p_state, pm_cb, NULL); + pm_device_state_set(dev, p_state, pm_cb, NULL); #elif CONFIG_FDC2X1X_TRIGGER_NONE k_sleep(K_MSEC(100)); #endif diff --git a/subsys/net/ip/net_shell.c b/subsys/net/ip/net_shell.c index 1ab1ce618e4..aabb6c885d2 100644 --- a/subsys/net/ip/net_shell.c +++ b/subsys/net/ip/net_shell.c @@ -5529,8 +5529,8 @@ static int cmd_net_suspend(const struct shell *shell, size_t argc, dev = net_if_get_device(iface); - ret = device_set_power_state(dev, PM_DEVICE_SUSPEND_STATE, - NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_SUSPEND_STATE, + NULL, NULL); if (ret != 0) { PR_INFO("Iface could not be suspended: "); @@ -5574,8 +5574,8 @@ static int cmd_net_resume(const struct shell *shell, size_t argc, dev = net_if_get_device(iface); - ret = device_set_power_state(dev, PM_DEVICE_ACTIVE_STATE, - NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_ACTIVE_STATE, + NULL, NULL); if (ret != 0) { PR_INFO("Iface could not be resumed\n"); } diff --git a/subsys/pm/device.c b/subsys/pm/device.c index 1c43ca100d7..b1b0ac46366 100644 --- a/subsys/pm/device.c +++ b/subsys/pm/device.c @@ -72,7 +72,7 @@ static int _pm_devices(uint32_t state) /* TODO: Improve the logic by checking device status * and set the device states accordingly. */ - rc = device_set_power_state(dev, state, NULL, NULL); + rc = pm_device_state_set(dev, state, NULL, NULL); if ((rc != -ENOTSUP) && (rc != 0)) { LOG_DBG("%s did not enter %s state: %d", dev->name, pm_device_state_str(state), rc); @@ -108,7 +108,7 @@ void pm_resume_devices(void) while (pmi < num_pm) { device_idx_t idx = pm_devices[pmi]; - device_set_power_state(&all_devices[idx], + pm_device_state_set(&all_devices[idx], PM_DEVICE_ACTIVE_STATE, NULL, NULL); ++pmi; @@ -183,9 +183,8 @@ const char *pm_device_state_str(uint32_t state) } } -int device_set_power_state(const struct device *dev, - uint32_t device_power_state, pm_device_cb cb, - void *arg) +int pm_device_state_set(const struct device *dev, uint32_t device_power_state, + pm_device_cb cb, void *arg) { if (dev->pm_control == NULL) { return -ENOSYS; @@ -195,8 +194,7 @@ int device_set_power_state(const struct device *dev, &device_power_state, cb, arg); } -int device_get_power_state(const struct device *dev, - uint32_t *device_power_state) +int pm_device_state_get(const struct device *dev, uint32_t *device_power_state) { if (dev->pm_control == NULL) { return -ENOSYS; diff --git a/subsys/pm/device_pm.c b/subsys/pm/device_pm.c index c8803558686..eac32d5d109 100644 --- a/subsys/pm/device_pm.c +++ b/subsys/pm/device_pm.c @@ -57,9 +57,8 @@ static void pm_work_handler(struct k_work *work) dev->pm->enable) { atomic_set(&dev->pm->fsm_state, PM_DEVICE_STATE_SUSPENDING); - ret = device_set_power_state(dev, - PM_DEVICE_SUSPEND_STATE, - device_pm_callback, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_SUSPEND_STATE, + device_pm_callback, NULL); } else { pm_state = PM_DEVICE_ACTIVE_STATE; goto fsm_out; @@ -70,9 +69,8 @@ static void pm_work_handler(struct k_work *work) !dev->pm->enable) { atomic_set(&dev->pm->fsm_state, PM_DEVICE_STATE_RESUMING); - ret = device_set_power_state(dev, - PM_DEVICE_ACTIVE_STATE, - device_pm_callback, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_ACTIVE_STATE, + device_pm_callback, NULL); } else { pm_state = PM_DEVICE_SUSPEND_STATE; goto fsm_out; diff --git a/subsys/shell/modules/device_service.c b/subsys/shell/modules/device_service.c index 382c6c9370a..9b0bee995ce 100644 --- a/subsys/shell/modules/device_service.c +++ b/subsys/shell/modules/device_service.c @@ -147,7 +147,7 @@ static int cmd_device_list(const struct shell *shell, } else { #ifdef CONFIG_PM_DEVICE uint32_t st = PM_DEVICE_ACTIVE_STATE; - int err = device_get_power_state(dev, &st); + int err = pm_device_state_get(dev, &st); if (!err) { state = pm_device_state_str(st); diff --git a/tests/kernel/device/src/main.c b/tests/kernel/device/src/main.c index 648422d904a..abc102b9aa2 100644 --- a/tests/kernel/device/src/main.c +++ b/tests/kernel/device/src/main.c @@ -240,7 +240,7 @@ static void test_build_suspend_device_list(void) * * @details Test the API enable and disable, cause we do not implement our PM * API here, it will use the default function to handle power status. So when - * we try to get power state by device_get_power_state(), it will default + * we try to get power state by pm_device_state_get(), it will default * return power state zero. And we check it. * * @ingroup kernel_device_tests @@ -256,7 +256,7 @@ static void test_enable_and_disable_automatic_runtime_pm(void) /* check its status at first */ /* for cases that cannot run runtime PM, we skip it now */ - ret = device_get_power_state(dev, &device_power_state); + ret = pm_device_state_get(dev, &device_power_state); if (ret == -ENOSYS) { TC_PRINT("Power management not supported on device"); ztest_test_skip(); @@ -285,7 +285,7 @@ static void test_enable_and_disable_automatic_runtime_pm(void) * * @see device_get_binding(), device_busy_set(), device_busy_clear(), * device_busy_check(), device_any_busy_check(), - * device_set_power_state() + * pm_device_state_set() */ void test_dummy_device_pm(void) { @@ -317,7 +317,7 @@ void test_dummy_device_pm(void) test_build_suspend_device_list(); /* Set device state to PM_DEVICE_ACTIVE_STATE */ - ret = device_set_power_state(dev, PM_DEVICE_ACTIVE_STATE, NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_ACTIVE_STATE, NULL, NULL); if (ret == -ENOSYS) { TC_PRINT("Power management not supported on device"); ztest_test_skip(); @@ -327,19 +327,19 @@ void test_dummy_device_pm(void) zassert_true((ret == 0), "Unable to set active state to device"); - ret = device_get_power_state(dev, &device_power_state); + ret = pm_device_state_get(dev, &device_power_state); zassert_true((ret == 0), "Unable to get active state to device"); zassert_true((device_power_state == PM_DEVICE_ACTIVE_STATE), "Error power status"); /* Set device state to PM_DEVICE_FORCE_SUSPEND_STATE */ - ret = device_set_power_state(dev, + ret = pm_device_state_set(dev, PM_DEVICE_FORCE_SUSPEND_STATE, NULL, NULL); zassert_true((ret == 0), "Unable to force suspend device"); - ret = device_get_power_state(dev, &device_power_state); + ret = pm_device_state_get(dev, &device_power_state); zassert_true((ret == 0), "Unable to get suspend state to device"); zassert_true((device_power_state == PM_DEVICE_ACTIVE_STATE), diff --git a/tests/net/pm/src/main.c b/tests/net/pm/src/main.c index deaacee7d87..d4ac8657e7c 100644 --- a/tests/net/pm/src/main.c +++ b/tests/net/pm/src/main.c @@ -149,15 +149,13 @@ void test_pm(void) */ k_yield(); - ret = device_set_power_state(dev, PM_DEVICE_SUSPEND_STATE, - NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_SUSPEND_STATE, NULL, NULL); zassert_true(ret == 0, "Could not set state"); zassert_true(net_if_is_suspended(iface), "net iface is not suspended"); /* Let's try to suspend it again, it should fail relevantly */ - ret = device_set_power_state(dev, PM_DEVICE_SUSPEND_STATE, - NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_SUSPEND_STATE, NULL, NULL); zassert_true(ret == -EALREADY, "Could change state"); zassert_true(net_if_is_suspended(iface), "net iface is not suspended"); @@ -167,14 +165,12 @@ void test_pm(void) (struct sockaddr *)&addr4, sizeof(struct sockaddr_in)); zassert_true(ret < 0, "Could send data"); - ret = device_set_power_state(dev, PM_DEVICE_ACTIVE_STATE, - NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_ACTIVE_STATE, NULL, NULL); zassert_true(ret == 0, "Could not set state"); zassert_false(net_if_is_suspended(iface), "net iface is suspended"); - ret = device_set_power_state(dev, PM_DEVICE_ACTIVE_STATE, - NULL, NULL); + ret = pm_device_state_set(dev, PM_DEVICE_ACTIVE_STATE, NULL, NULL); zassert_true(ret == -EALREADY, "Could change state"); /* Let's send some data, it should go through */ diff --git a/tests/subsys/pm/power_mgmt/src/main.c b/tests/subsys/pm/power_mgmt/src/main.c index 644088f825e..7d39ed5d9ec 100644 --- a/tests/subsys/pm/power_mgmt/src/main.c +++ b/tests/subsys/pm/power_mgmt/src/main.c @@ -41,7 +41,7 @@ __weak void pm_power_state_set(struct pm_state_info info) /* this function is called after devices enter low power state */ uint32_t device_power_state; /* at this point, devices have been deactivated */ - device_get_power_state(dev, &device_power_state); + pm_device_state_get(dev, &device_power_state); zassert_false(device_power_state == PM_DEVICE_ACTIVE_STATE, NULL); /* this function is called when system entering low power state, so @@ -94,7 +94,7 @@ static void notify_pm_state_entry(enum pm_state state) zassert_equal(state, PM_STATE_RUNTIME_IDLE, NULL); /* at this point, devices should not be active */ - device_get_power_state(dev, &device_power_state); + pm_device_state_get(dev, &device_power_state); zassert_false(device_power_state == PM_DEVICE_ACTIVE_STATE, NULL); set_pm = true; notify_app_exit = true; @@ -112,7 +112,7 @@ static void notify_pm_state_exit(enum pm_state state) zassert_equal(state, PM_STATE_RUNTIME_IDLE, NULL); /* at this point, devices are active again*/ - device_get_power_state(dev, &device_power_state); + pm_device_state_get(dev, &device_power_state); zassert_equal(device_power_state, PM_DEVICE_ACTIVE_STATE, NULL); leave_idle = true; @@ -170,8 +170,8 @@ void test_power_state_trans(void) * - system inform device system power state change through device interface * pm_control * - * @see pm_device_get(), pm_device_put(), device_set_power_state(), - * device_get_power_state() + * @see pm_device_get(), pm_device_put(), pm_device_state_set(), + * pm_device_state_get() * * @ingroup power_tests */ @@ -179,11 +179,11 @@ void test_power_state_notification(void) { uint32_t device_power_state; - device_get_power_state(dev, &device_power_state); + pm_device_state_get(dev, &device_power_state); zassert_equal(device_power_state, PM_DEVICE_ACTIVE_STATE, NULL); api->close(dev); - device_get_power_state(dev, &device_power_state); + pm_device_state_get(dev, &device_power_state); zassert_equal(device_power_state, PM_DEVICE_SUSPEND_STATE, NULL); /* reopen device as it will be closed in teardown */ api->open(dev);