dcscb_setup.S 829 B

123456789101112131415161718192021222324252627282930313233
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Created by: Dave Martin, 2012-06-22
  4. * Copyright: (C) 2012-2013 Linaro Limited
  5. */
  6. #include <linux/linkage.h>
  7. ENTRY(dcscb_power_up_setup)
  8. cmp r0, #0 @ check affinity level
  9. beq 2f
  10. /*
  11. * Enable cluster-level coherency, in preparation for turning on the MMU.
  12. * The ACTLR SMP bit does not need to be set here, because cpu_resume()
  13. * already restores that.
  14. *
  15. * A15/A7 may not require explicit L2 invalidation on reset, dependent
  16. * on hardware integration decisions.
  17. * For now, this code assumes that L2 is either already invalidated,
  18. * or invalidation is not required.
  19. */
  20. b cci_enable_port_for_self
  21. 2: @ Implementation-specific local CPU setup operations should go here,
  22. @ if any. In this case, there is nothing to do.
  23. bx lr
  24. ENDPROC(dcscb_power_up_setup)