Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(armv8/psci): Handle unexpected psci behavior #179

Merged
merged 2 commits into from
Oct 3, 2024
Merged

Conversation

DavidMCerdeira
Copy link
Member

@DavidMCerdeira DavidMCerdeira commented Sep 27, 2024

We've observed that some platforms behave unexpectedly when performing power down, and others when performing standby. In these cases, the CPU cores are not awaken by interrupts as expected. These commit solve this, by adding the ability to skip the respective firmware call, instead relying on the fallback mechanism of using wfi.

danielRep
danielRep previously approved these changes Sep 27, 2024
@josecm josecm self-assigned this Sep 28, 2024
@josecm
Copy link
Member

josecm commented Sep 28, 2024

@DavidMCerdeira Shouldn't we address other calls to psci_power_down such as in psci_cpu_suspend_handler?

@josecm josecm mentioned this pull request Sep 28, 2024
@DavidMCerdeira
Copy link
Member Author

This is a good point
Let me first make a few tests to make sure the PSCI_WAKEUP_IDLE behavior is the same as the PSCI_STATE_TYPE_STANDBY

@josecm
Copy link
Member

josecm commented Oct 2, 2024

This is a good point Let me first make a few tests to make sure the PSCI_WAKEUP_IDLE behavior is the same as the PSCI_STATE_TYPE_STANDBY

Please make sure we are also inline with the PSCI in this respect.

@DavidMCerdeira DavidMCerdeira changed the title feat(armv8-a/cpu): Handle unexpected powerdown behavior feat(armv8-a/cpu): Handle unexpected psci behavior Oct 2, 2024
@DavidMCerdeira DavidMCerdeira force-pushed the feat/psci-powerdown branch 3 times, most recently from a981972 to 93d03a6 Compare October 2, 2024 16:07
@DavidMCerdeira DavidMCerdeira changed the title feat(armv8-a/cpu): Handle unexpected psci behavior feat(armv8/psci): Handle unexpected psci behavior Oct 2, 2024
src/arch/armv8/armv8-a/psci.c Outdated Show resolved Hide resolved
src/arch/armv8/armv8-a/psci.c Outdated Show resolved Hide resolved
src/arch/armv8/psci.c Outdated Show resolved Hide resolved
We've observed that some platforms behave unexpectedly when performing
power down. In these cases, after powerdown, the CPU cores are not awaken
by interrupts as expected by Bao. This commit solve this, by adding the
ability to skip the powerdown firmware call, instead relying on the
fallback mechanism of using standby.

Signed-off-by: David Cerdeira <[email protected]>
danielRep
danielRep previously approved these changes Oct 3, 2024
The development target zcu104/zcu102 and Ultra96 does not wake up on
interrupts after emiting PSCI standby calls to TF-A. We should
understand why. To circunvent this, we allow platforms to declare
standby is not supported and fallback to wfi.

Signed-off-by: David Cerdeira <[email protected]>
@josecm josecm merged commit 11b03d5 into main Oct 3, 2024
31 checks passed
@josecm josecm deleted the feat/psci-powerdown branch October 3, 2024 12:51
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.

3 participants