smc.S 614 B

12345678910111213141516171819202122232425
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copied from omap44xx-smc.S Copyright (C) 2010 Texas Instruments, Inc.
  4. * Copyright 2012 Calxeda, Inc.
  5. */
  6. #include <linux/linkage.h>
  7. /*
  8. * This is common routine to manage secure monitor API
  9. * used to modify the PL310 secure registers.
  10. * 'r0' contains the value to be modified and 'r12' contains
  11. * the monitor API number.
  12. * Function signature : void highbank_smc1(u32 fn, u32 arg)
  13. */
  14. .arch armv7-a
  15. .arch_extension sec
  16. ENTRY(highbank_smc1)
  17. stmfd sp!, {r4-r11, lr}
  18. mov r12, r0
  19. mov r0, r1
  20. dsb
  21. smc #0
  22. ldmfd sp!, {r4-r11, pc}
  23. ENDPROC(highbank_smc1)