root/arch/powerpc/include/asm/hydra.h

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

INCLUDED FROM


   1 /*
   2  *  include/asm-ppc/hydra.h -- Mac I/O `Hydra' definitions
   3  *
   4  *  Copyright (C) 1997 Geert Uytterhoeven
   5  *
   6  *  This file is based on the following documentation:
   7  *
   8  *      Macintosh Technology in the Common Hardware Reference Platform
   9  *      Apple Computer, Inc.
  10  *
  11  *      © Copyright 1995 Apple Computer, Inc. All rights reserved.
  12  *
  13  *  It's available online from http://www.cpu.lu/~mlan/ftp/MacTech.pdf
  14  *  You can obtain paper copies of this book from computer bookstores or by
  15  *  writing Morgan Kaufmann Publishers, Inc., 340 Pine Street, Sixth Floor, San
  16  *  Francisco, CA 94104. Reference ISBN 1-55860-393-X.
  17  *
  18  *  This file is subject to the terms and conditions of the GNU General Public
  19  *  License.  See the file COPYING in the main directory of this archive
  20  *  for more details.
  21  */
  22 
  23 #ifndef _ASMPPC_HYDRA_H
  24 #define _ASMPPC_HYDRA_H
  25 
  26 #ifdef __KERNEL__
  27 
  28 struct Hydra {
  29     /* DBDMA Controller Register Space */
  30     char Pad1[0x30];
  31     u_int CachePD;
  32     u_int IDs;
  33     u_int Feature_Control;
  34     char Pad2[0x7fc4];
  35     /* DBDMA Channel Register Space */
  36     char SCSI_DMA[0x100];
  37     char Pad3[0x300];
  38     char SCCA_Tx_DMA[0x100];
  39     char SCCA_Rx_DMA[0x100];
  40     char SCCB_Tx_DMA[0x100];
  41     char SCCB_Rx_DMA[0x100];
  42     char Pad4[0x7800];
  43     /* Device Register Space */
  44     char SCSI[0x1000];
  45     char ADB[0x1000];
  46     char SCC_Legacy[0x1000];
  47     char SCC[0x1000];
  48     char Pad9[0x2000];
  49     char VIA[0x2000];
  50     char Pad10[0x28000];
  51     char OpenPIC[0x40000];
  52 };
  53 
  54 extern volatile struct Hydra __iomem *Hydra;
  55 
  56 
  57     /*
  58      *  Feature Control Register
  59      */
  60 
  61 #define HYDRA_FC_SCC_CELL_EN    0x00000001      /* Enable SCC Clock */
  62 #define HYDRA_FC_SCSI_CELL_EN   0x00000002      /* Enable SCSI Clock */
  63 #define HYDRA_FC_SCCA_ENABLE    0x00000004      /* Enable SCC A Lines */
  64 #define HYDRA_FC_SCCB_ENABLE    0x00000008      /* Enable SCC B Lines */
  65 #define HYDRA_FC_ARB_BYPASS     0x00000010      /* Bypass Internal Arbiter */
  66 #define HYDRA_FC_RESET_SCC      0x00000020      /* Reset SCC */
  67 #define HYDRA_FC_MPIC_ENABLE    0x00000040      /* Enable OpenPIC */
  68 #define HYDRA_FC_SLOW_SCC_PCLK  0x00000080      /* 1=15.6672, 0=25 MHz */
  69 #define HYDRA_FC_MPIC_IS_MASTER 0x00000100      /* OpenPIC Master Mode */
  70 
  71 
  72     /*
  73      *  OpenPIC Interrupt Sources
  74      */
  75 
  76 #define HYDRA_INT_SIO           0
  77 #define HYDRA_INT_SCSI_DMA      1
  78 #define HYDRA_INT_SCCA_TX_DMA   2
  79 #define HYDRA_INT_SCCA_RX_DMA   3
  80 #define HYDRA_INT_SCCB_TX_DMA   4
  81 #define HYDRA_INT_SCCB_RX_DMA   5
  82 #define HYDRA_INT_SCSI          6
  83 #define HYDRA_INT_SCCA          7
  84 #define HYDRA_INT_SCCB          8
  85 #define HYDRA_INT_VIA           9
  86 #define HYDRA_INT_ADB           10
  87 #define HYDRA_INT_ADB_NMI       11
  88 #define HYDRA_INT_EXT1          12      /* PCI IRQW */
  89 #define HYDRA_INT_EXT2          13      /* PCI IRQX */
  90 #define HYDRA_INT_EXT3          14      /* PCI IRQY */
  91 #define HYDRA_INT_EXT4          15      /* PCI IRQZ */
  92 #define HYDRA_INT_EXT5          16      /* IDE Primary/Secondary */
  93 #define HYDRA_INT_EXT6          17      /* IDE Secondary */
  94 #define HYDRA_INT_EXT7          18      /* Power Off Request */
  95 #define HYDRA_INT_SPARE         19
  96 
  97 extern int hydra_init(void);
  98 
  99 #endif /* __KERNEL__ */
 100 
 101 #endif /* _ASMPPC_HYDRA_H */

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