drivers: uart: silabs: revert pm deletion for usart_gecko

Revert delete of the uart_gecko_pm_action function.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
This commit is contained in:
Martin Hoff 2025-01-31 16:57:41 +01:00 committed by Benjamin Cabé
commit 2594eae6f1

View file

@ -669,6 +669,31 @@ static int uart_gecko_init(const struct device *dev)
return 0; return 0;
} }
#ifdef CONFIG_PM_DEVICE
static int uart_gecko_pm_action(const struct device *dev, enum pm_device_action action)
{
__maybe_unused const struct uart_gecko_config *config = dev->config;
switch (action) {
case PM_DEVICE_ACTION_SUSPEND:
#ifdef USART_STATUS_TXIDLE
/* Wait for TX FIFO to flush before suspending */
while (!(USART_StatusGet(config->base) & USART_STATUS_TXIDLE)) {
}
#endif
break;
case PM_DEVICE_ACTION_RESUME:
break;
default:
return -ENOTSUP;
}
return 0;
}
#endif
static DEVICE_API(uart, uart_gecko_driver_api) = { static DEVICE_API(uart, uart_gecko_driver_api) = {
.poll_in = uart_gecko_poll_in, .poll_in = uart_gecko_poll_in,
.poll_out = uart_gecko_poll_out, .poll_out = uart_gecko_poll_out,