root/arch/arm/mach-ebsa110/include/mach/entry-macro.S

/* [<][>][^][v][top][bottom][index][help] */
   1 /*
   2  * arch/arm/mach-ebsa110/include/mach/entry-macro.S
   3  *
   4  * Low-level IRQ helper macros for ebsa110 platform.
   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 
  12 
  13 #define IRQ_STAT                0xff000000      /* read */
  14 
  15         .macro  get_irqnr_preamble, base, tmp
  16         mov     \base, #IRQ_STAT
  17         .endm
  18 
  19         .macro  get_irqnr_and_base, irqnr, stat, base, tmp
  20         ldrb    \stat, [\base]                  @ get interrupts
  21         mov     \irqnr, #0
  22         tst     \stat, #15
  23         addeq   \irqnr, \irqnr, #4
  24         moveq   \stat, \stat, lsr #4
  25         tst     \stat, #3
  26         addeq   \irqnr, \irqnr, #2
  27         moveq   \stat, \stat, lsr #2
  28         tst     \stat, #1
  29         addeq   \irqnr, \irqnr, #1
  30         moveq   \stat, \stat, lsr #1
  31         tst     \stat, #1                       @ bit 0 should be set
  32         .endm
  33 

/* [<][>][^][v][top][bottom][index][help] */