home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / arm / mach-sa1100 / include / mach / entry-macro.S < prev    next >
Encoding:
Text File  |  2008-12-24  |  1.2 KB  |  48 lines

  1. /*
  2.  * arch/arm/mach-sa1100/include/mach/entry-macro.S
  3.  *
  4.  * Low-level IRQ helper macros for SA1100-based platforms
  5.  *
  6.  * This file is licensed under  the terms of the GNU General Public
  7.  * License version 2. This program is licensed "as is" without any
  8.  * warranty of any kind, whether express or implied.
  9.  */
  10.  
  11.          .macro    disable_fiq
  12.         .endm
  13.  
  14.         .macro  get_irqnr_preamble, base, tmp
  15.         mov    \base, #0xfa000000        @ ICIP = 0xfa050000
  16.         add    \base, \base, #0x00050000
  17.         .endm
  18.  
  19.         .macro  arch_ret_to_user, tmp1, tmp2
  20.         .endm
  21.  
  22.         .macro    get_irqnr_and_base, irqnr, irqstat, base, tmp
  23.         ldr    \irqstat, [\base]        @ get irqs
  24.         ldr    \irqnr, [\base, #4]        @ ICMR = 0xfa050004
  25.         ands    \irqstat, \irqstat, \irqnr
  26.         mov    \irqnr, #0
  27.         beq    1001f
  28.         tst    \irqstat, #0xff
  29.         moveq    \irqstat, \irqstat, lsr #8
  30.         addeq    \irqnr, \irqnr, #8
  31.         tsteq    \irqstat, #0xff
  32.         moveq    \irqstat, \irqstat, lsr #8
  33.         addeq    \irqnr, \irqnr, #8
  34.         tsteq    \irqstat, #0xff
  35.         moveq    \irqstat, \irqstat, lsr #8
  36.         addeq    \irqnr, \irqnr, #8
  37.         tst    \irqstat, #0x0f
  38.         moveq    \irqstat, \irqstat, lsr #4
  39.         addeq    \irqnr, \irqnr, #4
  40.         tst    \irqstat, #0x03
  41.         moveq    \irqstat, \irqstat, lsr #2
  42.         addeq    \irqnr, \irqnr, #2
  43.         tst    \irqstat, #0x01
  44.         addeqs    \irqnr, \irqnr, #1
  45. 1001:
  46.         .endm
  47.  
  48.