entry-macro.S 898 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * arch/arm/mach-aaec2000/include/mach/entry-macro.S
  3. *
  4. * Low-level IRQ helper for aaec-2000 based platforms
  5. *
  6. * Copyright (c) 2005 Nicolas Bellido Y Ortega
  7. *
  8. * This program is free software; you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License version 2 as
  10. * published by the Free Software Foundation.
  11. *
  12. */
  13. #include <mach/irqs.h>
  14. .macro disable_fiq
  15. .endm
  16. .macro get_irqnr_preamble, base, tmp
  17. .endm
  18. .macro arch_ret_to_user, tmp1, tmp2
  19. .endm
  20. .macro get_irqnr_and_base, irqnr, irqstat, base, tmp
  21. mov r4, #0xf8000000
  22. add r4, r4, #0x00000500
  23. mov \base, r4
  24. ldr \irqstat, [\base, #0]
  25. cmp \irqstat, #0
  26. bne 1001f
  27. ldr \irqnr, =NR_IRQS+1
  28. b 1003f
  29. 1001: mov \irqnr, #0
  30. 1002: ands \tmp, \irqstat, #1
  31. mov \irqstat, \irqstat, LSR #1
  32. add \irqnr, \irqnr, #1
  33. beq 1002b
  34. sub \irqnr, \irqnr, #1
  35. 1003:
  36. .endm