Hi,

this series uses a TIFS barrier before doing the ctrl_mmr_unlock(). This
specific implementation works for the platforms where TIFS is already
running at this point. Note that other K3 platforms may have the same
problem, but for these this implementation is not straight forward.

This series is only tested on am625 HS-SE. I don't have any other HS-SE
boards.

Best,
Markus

---
Changes in v2:
- Create a common helper k3_sysfw_wait_ready() to make the purpose of
  the get_ti_sci_handle() clear.
- Extend the series to the other SoCs with the same boot process: am62a7,
  am62p5 and j722s.
- Link to v1: 
https://patch.msgid.link/20260923-v2026-10-next-topic-am62-hs-se-fix-unlock-race-v1-1-300ddb9f5...@baylibre.com

To: [email protected]
Cc: Tom Rini <[email protected]>
Cc: Ilias Apalodimas <[email protected]>
Cc: Daniel Schultz <[email protected]>
Cc: Udit Kumar <[email protected]>
Cc: Richard Genoud <[email protected]>
Cc: Anshul Dalal <[email protected]>
Cc: Aristo Chen <[email protected]>
Signed-off-by: Markus Schneider-Pargmann <[email protected]>

---
Markus Schneider-Pargmann (5):
      arm: mach-k3: common: add helper to wait for TIFS initialization
      arm: mach-k3: am625: Wait for TIFS initialization
      arm: mach-k3: am62a7: Wait for TIFS initialization
      arm: mach-k3: am62p5: Wait for TIFS initialization
      arm: mach-k3: j722s: Wait for TIFS initialization

 arch/arm/mach-k3/am62ax/am62a7_init.c |  5 +++--
 arch/arm/mach-k3/am62px/am62p5_init.c |  5 +++--
 arch/arm/mach-k3/am62x/am625_init.c   |  5 +++--
 arch/arm/mach-k3/common.c             | 10 ++++++++++
 arch/arm/mach-k3/common.h             |  1 +
 arch/arm/mach-k3/j722s/j722s_init.c   |  5 +++--
 6 files changed, 23 insertions(+), 8 deletions(-)
---
base-commit: 75df64103873fac09642860cedadaffb8cf6b2c7
change-id: 20260923-v2026-10-next-topic-am62-hs-se-fix-unlock-race-15fda445257e

Best regards,
--  
Markus Schneider-Pargmann <[email protected]>

Reply via email to