Skip to content

Conversation

karstenkoenig
Copy link
Contributor

To get a glitchfree UARTE suspend sequence we need to

  • load the GPIO configuration for the suspend state
  • disable the UARTE so the GPIO configuration is applied
  • (optional) enable the GPIO retention as state should stick around

The previous sequence (optionally) locked the analog state of the GPIO so the configuration wouldn't actually get applied. Next it disabled the UART, falling back to the existing GPIO state. Next it loaded the new GPIO state, which could be different from the old GPIO state, leading to a potential transition from TX high to low to high.

Upstream PR #: 91550

To get a glitchfree UARTE suspend sequence we need to
* load the GPIO configuration for the suspend state
* disable the UARTE so the GPIO configuration is applied
* (optional) enable the GPIO retention as state should stick around

The previous sequence (optionally) locked the analog state of the GPIO so
the configuration wouldn't actually get applied. Next it disabled the
UART, falling back to the existing GPIO state. Next it loaded the new GPIO
state, which could be different from the old GPIO state, leading to a
potential transition from TX high to low to high.

Upstream PR #: 91550

Signed-off-by: Karsten Koenig <[email protected]>
@sonarqubecloud
Copy link

@karstenkoenig
Copy link
Contributor Author

Handled by gpd rework

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants