plat_trampoline.S 840 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. * Copyright (c) 2016-2019, ARM Limited and Contributors. All rights reserved.
  3. * Copyright (c) 2020, NVIDIA Corporation. All rights reserved.
  4. *
  5. * SPDX-License-Identifier: BSD-3-Clause
  6. */
  7. #include <arch.h>
  8. #include <asm_macros.S>
  9. #include <common/bl_common.h>
  10. #include <memctrl_v2.h>
  11. #include <plat/common/common_def.h>
  12. #include <tegra_def.h>
  13. #define TEGRA186_MC_CTX_SIZE 0x93
  14. .globl tegra186_get_mc_ctx_size
  15. /*
  16. * Tegra186 reset data (offset 0x0 - 0x420)
  17. *
  18. * 0x000: MC context start
  19. * 0x420: MC context end
  20. */
  21. .align 4
  22. __tegra186_mc_context:
  23. .rept TEGRA186_MC_CTX_SIZE
  24. .quad 0
  25. .endr
  26. .align 4
  27. __tegra186_mc_context_end:
  28. /* return the size of the MC context */
  29. func tegra186_get_mc_ctx_size
  30. adr x0, __tegra186_mc_context_end
  31. adr x1, __tegra186_mc_context
  32. sub x0, x0, x1
  33. ret
  34. endfunc tegra186_get_mc_ctx_size