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-shark / include / mach / entry-macro.S < prev    next >
Encoding:
Text File  |  2008-12-24  |  1.0 KB  |  42 lines

  1. /*
  2.  * arch/arm/mach-shark/include/mach/entry-macro.S
  3.  *
  4.  * Low-level IRQ helper macros for Shark 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.         .macro    disable_fiq
  11.         .endm
  12.  
  13.         .macro  get_irqnr_preamble, base, tmp
  14.         .endm
  15.  
  16.         .macro  arch_ret_to_user, tmp1, tmp2
  17.         .endm
  18.  
  19.         .macro    get_irqnr_and_base, irqnr, irqstat, base, tmp
  20.         mov    r4, #0xe0000000
  21.  
  22.         mov    \irqstat, #0x0C
  23.         strb    \irqstat, [r4, #0x20]        @outb(0x0C, 0x20) /* Poll command */
  24.         ldrb    \irqnr, [r4, #0x20]        @irq = inb(0x20) & 7
  25.         and    \irqstat, \irqnr, #0x80
  26.         teq    \irqstat, #0
  27.         beq    43f
  28.         and    \irqnr, \irqnr, #7
  29.         teq    \irqnr, #2
  30.         bne    44f
  31. 43:        mov    \irqstat, #0x0C
  32.         strb    \irqstat, [r4, #0xa0]        @outb(0x0C, 0xA0) /* Poll command */
  33.         ldrb    \irqnr, [r4, #0xa0]        @irq = (inb(0xA0) & 7) + 8
  34.         and    \irqstat, \irqnr, #0x80
  35.         teq    \irqstat, #0
  36.         beq    44f
  37.         and    \irqnr, \irqnr, #7
  38.         add    \irqnr, \irqnr, #8
  39. 44:        teq    \irqstat, #0
  40.         .endm
  41.  
  42.