root/include/asm-m68k/amigaints.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2 ** amigaints.h -- Amiga Linux interrupt handling structs and prototypes
   3 **
   4 ** Copyright 1992 by Greg Harp
   5 **
   6 ** This file is subject to the terms and conditions of the GNU General Public
   7 ** License.  See the file README.legal in the main directory of this archive
   8 ** for more details.
   9 **
  10 ** Created 10/2/92 by Greg Harp
  11 */
  12 
  13 #ifndef _ASMm68k_AMIGAINTS_H_
  14 #define _ASMm68k_AMIGAINTS_H_
  15 
  16 /*
  17 ** Amiga Interrupt sources.
  18 **
  19 */
  20 
  21 #define NUM_AMIGA_SOURCES   (24)
  22 
  23 /* vertical blanking interrupt */
  24 #define IRQ_AMIGA_VERTB     (IRQ_MACHSPEC | 0)
  25 
  26 /* copper interrupt */
  27 #define IRQ_AMIGA_COPPER    (IRQ_MACHSPEC | 1)
  28 
  29 /* Audio interrupts */
  30 #define IRQ_AMIGA_AUD0      (IRQ_MACHSPEC | 2)
  31 #define IRQ_AMIGA_AUD1      (IRQ_MACHSPEC | 3)
  32 #define IRQ_AMIGA_AUD2      (IRQ_MACHSPEC | 4)
  33 #define IRQ_AMIGA_AUD3      (IRQ_MACHSPEC | 5)
  34 
  35 /* Blitter done interrupt */
  36 #define IRQ_AMIGA_BLIT      (IRQ_MACHSPEC | 6)
  37 
  38 /* floppy disk interrupts */
  39 #define IRQ_AMIGA_DSKSYN    (IRQ_MACHSPEC | 7)
  40 #define IRQ_AMIGA_DSKBLK    (IRQ_MACHSPEC | 8)
  41 
  42 /* builtin serial port interrupts */
  43 #define IRQ_AMIGA_RBF       (IRQ_MACHSPEC | 9)
  44 #define IRQ_AMIGA_TBE       (IRQ_MACHSPEC | 10)
  45 
  46 /* CIA interrupt sources */
  47 #define IRQ_AMIGA_CIAA_TA   (IRQ_MACHSPEC | 11)
  48 #define IRQ_AMIGA_CIAA_TB   (IRQ_MACHSPEC | 12)
  49 #define IRQ_AMIGA_CIAA_ALRM (IRQ_MACHSPEC | 13)
  50 #define IRQ_AMIGA_CIAA_SP   (IRQ_MACHSPEC | 14)
  51 #define IRQ_AMIGA_CIAA_FLG  (IRQ_MACHSPEC | 15)
  52 #define IRQ_AMIGA_CIAB_TA   (IRQ_MACHSPEC | 16)
  53 #define IRQ_AMIGA_CIAB_TB   (IRQ_MACHSPEC | 17)
  54 #define IRQ_AMIGA_CIAB_ALRM (IRQ_MACHSPEC | 18)
  55 #define IRQ_AMIGA_CIAB_SP   (IRQ_MACHSPEC | 19)
  56 #define IRQ_AMIGA_CIAB_FLG  (IRQ_MACHSPEC | 20)
  57 
  58 #define IRQ_AMIGA_SOFT      (IRQ_MACHSPEC | 21)
  59 
  60 #define IRQ_AMIGA_PORTS     (IRQ_MACHSPEC | 22)
  61 #define IRQ_AMIGA_EXTER     (IRQ_MACHSPEC | 23)
  62 
  63 #define IRQ_FLOPPY          IRQ_AMIGA_DSKBLK
  64 
  65 /* INTREQR masks */
  66 #define IRQ1_MASK   0x0007      /* INTREQR mask for IRQ 1 */
  67 #define IRQ2_MASK   0x0008      /* INTREQR mask for IRQ 2 */
  68 #define IRQ3_MASK   0x0070      /* INTREQR mask for IRQ 3 */
  69 #define IRQ4_MASK   0x0780      /* INTREQR mask for IRQ 4 */
  70 #define IRQ5_MASK   0x1800      /* INTREQR mask for IRQ 5 */
  71 #define IRQ6_MASK   0x2000      /* INTREQR mask for IRQ 6 */
  72 #define IRQ7_MASK   0x4000      /* INTREQR mask for IRQ 7 */
  73 
  74 #define IF_SETCLR   0x8000      /* set/clr bit */
  75 #define IF_INTEN    0x4000      /* master interrupt bit in INT* registers */
  76 #define IF_EXTER    0x2000      /* external level 6 and CIA B interrupt */
  77 #define IF_DSKSYN   0x1000      /* disk sync interrupt */
  78 #define IF_RBF      0x0800      /* serial receive buffer full interrupt */
  79 #define IF_AUD3     0x0400      /* audio channel 3 done interrupt */
  80 #define IF_AUD2     0x0200      /* audio channel 2 done interrupt */
  81 #define IF_AUD1     0x0100      /* audio channel 1 done interrupt */
  82 #define IF_AUD0     0x0080      /* audio channel 0 done interrupt */
  83 #define IF_BLIT     0x0040      /* blitter done interrupt */
  84 #define IF_VERTB    0x0020      /* vertical blanking interrupt */
  85 #define IF_COPER    0x0010      /* copper interrupt */
  86 #define IF_PORTS    0x0008      /* external level 2 and CIA A interrupt */
  87 #define IF_SOFT     0x0004      /* software initiated interrupt */
  88 #define IF_DSKBLK   0x0002      /* diskblock DMA finished */
  89 #define IF_TBE      0x0001      /* serial transmit buffer empty interrupt */
  90 
  91 /* CIA interrupt control register bits */
  92 
  93 #define CIA_ICR_TA   0x01
  94 #define CIA_ICR_TB   0x02
  95 #define CIA_ICR_ALRM 0x04
  96 #define CIA_ICR_SP   0x08
  97 #define CIA_ICR_FLG  0x10
  98 
  99 #endif /* asm-m68k/amigaints.h */

/* [previous][next][first][last][top][bottom][index][help] */