Power Management stopped shell working on uart0

Hello,

I'm trying to implement runtime power management (SDK 2.9.0), but as soon as I enable the option, the shell and logging on UART0 stop working at startup. The rest of the system functions normally.The status of UART0 is active, and I have never put it in standby.

Do you have any idea what might be causing this?

Changed configuration options :
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y
If I remove these two lines, everything works fine...

BR
Parents
  • Hello,

    When having shell enabled you usually want the application to control when the UART is suspended through PM actions, and this only requires CONFIG_PM_DEVICE device to be enabled. CONFIG_PM_DEVICE_RUNTIME is not needed for this.

    Is the CONFIG_UART_0_NRF_ASYNC_LOW_POWER symbol selected in your configuration file (build/<application name>/zephyr/.config)? From looking at the driver it looks like the UART should only be auto suspended on idle if you have both CONFIG_PM_DEVICE_RUNTIME and CONFIG_UART_0_NRF_ASYNC_LOW_POWER enabled.

    Best regards,

    Vidar

Reply
  • Hello,

    When having shell enabled you usually want the application to control when the UART is suspended through PM actions, and this only requires CONFIG_PM_DEVICE device to be enabled. CONFIG_PM_DEVICE_RUNTIME is not needed for this.

    Is the CONFIG_UART_0_NRF_ASYNC_LOW_POWER symbol selected in your configuration file (build/<application name>/zephyr/.config)? From looking at the driver it looks like the UART should only be auto suspended on idle if you have both CONFIG_PM_DEVICE_RUNTIME and CONFIG_UART_0_NRF_ASYNC_LOW_POWER enabled.

    Best regards,

    Vidar

Children
Related