uniphier_smp.S 610 B

1234567891011121314151617181920212223242526272829
  1. /*
  2. * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #include <arch.h>
  7. #include <asm_macros.S>
  8. .globl uniphier_warmboot_entrypoint
  9. .globl uniphier_fake_pwr_down
  10. func uniphier_warmboot_entrypoint
  11. mrs x0, mpidr_el1
  12. mov_imm x1, MPIDR_AFFINITY_MASK
  13. and x0, x0, x1
  14. b 1f
  15. 0: wfe
  16. 1: ldr x1, uniphier_holding_pen_release
  17. cmp x1, x0
  18. b.ne 0b
  19. ldr x0, uniphier_sec_entrypoint
  20. br x0
  21. endfunc uniphier_warmboot_entrypoint
  22. func uniphier_fake_pwr_down
  23. bl disable_mmu_icache_el3
  24. b uniphier_warmboot_entrypoint
  25. endfunc uniphier_fake_pwr_down