Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

jazzdef.h

Go to the documentation of this file.
00001 /*++ BUILD Version: 0005 // Increment this if a change has global effects 00002 00003 Copyright (c) 1990 Microsoft Corporation 00004 00005 Module Name: 00006 00007 jazzdef.h 00008 00009 Abstract: 00010 00011 This module is the header file that describes hardware addresses 00012 for the Jazz system. 00013 00014 Author: 00015 00016 David N. Cutler (davec) 26-Nov-1990 00017 00018 Revision History: 00019 00020 --*/ 00021 00022 #ifndef _JAZZDEF_ 00023 #define _JAZZDEF_ 00024 00025 // 00026 // Define physical base addresses for system mapping. 00027 // 00028 00029 #define VIDEO_MEMORY_PHYSICAL_BASE 0x40000000 // physical base of video memory 00030 #define VIDEO_CONTROL_PHYSICAL_BASE 0x60000000 // physical base of video control 00031 #define CURSOR_CONTROL_PHYSICAL_BASE 0x60008000 // physical base of cursor control 00032 #define VIDEO_ID_PHYSICAL_BASE 0x60010000 // physical base of video id register 00033 #define VIDEO_RESET_PHYSICAL_BASE 0x60020000 // physical base of reset register 00034 #define DEVICE_PHYSICAL_BASE 0x80000000 // physical base of device space 00035 #define NET_PHYSICAL_BASE 0x80001000 // physical base of ethernet control 00036 #define SCSI_PHYSICAL_BASE 0x80002000 // physical base os SCSI control 00037 #define FLOPPY_PHYSICAL_BASE 0x80003000 // physical base of floppy control 00038 #define RTCLOCK_PHYSICAL_BASE 0x80004000 // physical base of realtime clock 00039 #define KEYBOARD_PHYSICAL_BASE 0x80005000 // physical base of keyboard control 00040 #define MOUSE_PHYSICAL_BASE 0x80005000 // physical base of mouse control 00041 #define SERIAL0_PHYSICAL_BASE 0x80006000 // physical base of serial port 0 00042 #define SERIAL1_PHYSICAL_BASE 0x80007000 // physical base of serial port 1 00043 #define PARALLEL_PHYSICAL_BASE 0x80008000 // physical base of parallel port 00044 #define SOUND_PHYSICAL_BASE 0x8000C000 // physical base of sound control 00045 #define EISA_CONTROL_PHYSICAL_BASE 0x90000000 // physical base of EISA control 00046 #define EISA_MEMORY_PHYSICAL_BASE 0x91000000 // physical base of EISA memory 00047 #define EISA_MEMORY_VERSION2_LOW 0x00000000 // physical base of EISA memory 00048 #define EISA_MEMORY_VERSION2_HIGH 0x00000001 // with version 2 address chip 00049 #define PROM_PHYSICAL_BASE 0xfff00000 // physical base of boot PROM 00050 00051 // 00052 // Define virtual/physical base addresses for system mapping. 00053 // 00054 00055 #define NVRAM_VIRTUAL_BASE 0xffff8000 // virtual base of nonvolatile RAM 00056 #define NVRAM_PHYSICAL_BASE 0x80009000 // physical base of nonvolatile RAM 00057 00058 #define SP_VIRTUAL_BASE 0xffffa000 // virtual base of serial port 0 00059 #define SP_PHYSICAL_BASE SERIAL0_PHYSICAL_BASE // physical base of serial port 0 00060 00061 #define DMA_VIRTUAL_BASE 0xffffc000 // virtual base of DMA control 00062 #define DMA_PHYSICAL_BASE DEVICE_PHYSICAL_BASE // physical base of DMA control 00063 00064 #define INTERRUPT_VIRTUAL_BASE 0xffffd000 // virtual base of interrupt source 00065 #define INTERRUPT_PHYSICAL_BASE 0xf0000000 // physical base of interrupt source 00066 00067 // 00068 // Define the size of the DMA translation table. 00069 // 00070 00071 #define DMA_TRANSLATION_LIMIT 0x2000 // translation table limit 00072 00073 // 00074 // Define the maximum number of map registers allowed per allocation. 00075 // 00076 00077 #define DMA_REQUEST_LIMIT (DMA_TRANSLATION_LIMIT/(sizeof(TRANSLATION_ENTRY) * 8)) 00078 00079 // 00080 // Define pointer to DMA control registers. 00081 // 00082 00083 #define DMA_CONTROL ((volatile PDMA_REGISTERS)(DMA_VIRTUAL_BASE)) 00084 00085 // 00086 // Define DMA device channels. 00087 // 00088 00089 #define SCSI_CHANNEL 0x0 // SCSI DMA channel number 00090 #define FLOPPY_CHANNEL 0x1 // Floppy DMA channel 00091 #define SOUND_CHANNEL_A 0x2 // Sound DMA channel A 00092 #define SOUND_CHANNEL_B 0x3 // Sound DMA channel B 00093 00094 // 00095 // Define DMA channel interrupt level. 00096 // 00097 00098 #define DMA_LEVEL 3 00099 00100 // 00101 // Define EISA NMI interrupt level. 00102 // 00103 00104 #define EISA_NMI_LEVEL 6 00105 00106 // 00107 // Define the minimum and maximum system time increment value in 100ns units. 00108 // 00109 00110 #define MAXIMUM_INCREMENT (10 * 1000 * 10) 00111 #define MINIMUM_INCREMENT (1 * 1000 * 10) 00112 00113 // 00114 // Define Jazz clock levels. 00115 // 00116 00117 #define CLOCK_LEVEL 7 // Interval clock level 00118 #define CLOCK_INTERVAL ((MAXIMUM_INCREMENT / (10 * 1000)) - 1) // Ms minus 1 00119 00120 #if defined(R3000) 00121 00122 #define EISA_DEVICE_LEVEL 8 // EISA bus interrupt level 00123 00124 #endif 00125 00126 #if defined(R4000) 00127 00128 #define EISA_DEVICE_LEVEL 5 // EISA bus interrupt level 00129 00130 #endif 00131 00132 #define CLOCK2_LEVEL CLOCK_LEVEL // 00133 00134 // 00135 // Define EISA device interrupt vectors. 00136 // 00137 00138 #define EISA_VECTORS 32 00139 00140 #define IRQL10_VECTOR (10 + EISA_VECTORS) // Eisa interrupt request level 10 00141 #define IRQL11_VECTOR (11 + EISA_VECTORS) // Eisa interrupt request level 11 00142 #define IRQL12_VECTOR (12 + EISA_VECTORS) // Eisa interrupt request level 12 00143 #define IRQL13_VECTOR (13 + EISA_VECTORS) // Eisa interrupt request level 13 00144 00145 #define MAXIMUM_EISA_VECTOR (15 + EISA_VECTORS) // maximum EISA vector 00146 00147 // 00148 // Define I/O device interrupt level. 00149 // 00150 00151 #define DEVICE_LEVEL 4 // I/O device interrupt level 00152 00153 // 00154 // Define device interrupt vectors. 00155 // 00156 00157 #define DEVICE_VECTORS 16 // starting builtin device vector 00158 00159 #define PARALLEL_VECTOR (1 + DEVICE_VECTORS) // Parallel device interrupt vector 00160 #define FLOPPY_VECTOR (2 + DEVICE_VECTORS) // Floppy device interrupt vector 00161 #define SOUND_VECTOR (3 + DEVICE_VECTORS) // Sound device interrupt vector 00162 #define VIDEO_VECTOR (4 + DEVICE_VECTORS) // video device interrupt vector 00163 #define NET_VECTOR (5 + DEVICE_VECTORS) // ethernet device interrupt vector 00164 #define SCSI_VECTOR (6 + DEVICE_VECTORS) // SCSI device interrupt vector 00165 #define KEYBOARD_VECTOR (7 + DEVICE_VECTORS) // Keyboard device interrupt vector 00166 #define MOUSE_VECTOR (8 + DEVICE_VECTORS) // Mouse device interrupt vector 00167 #define SERIAL0_VECTOR (9 + DEVICE_VECTORS) // Serial device 0 interrupt vector 00168 #define SERIAL1_VECTOR (10 + DEVICE_VECTORS) // Serial device 1 interrupt vector 00169 00170 #define MAXIMUM_BUILTIN_VECTOR SERIAL1_VECTOR // maximum builtin vector 00171 00172 // 00173 // Define the clock speed in megahetz for the SCSI protocol chips. 00174 // 00175 00176 #define NCR_SCSI_CLOCK_SPEED 24 00177 #define EMULEX_SCSI_CLOCK_SPEED 40 00178 00179 // 00180 // PROM entry point definitions. 00181 // 00182 // Define base address of prom entry vector and prom entry macro. 00183 // 00184 00185 #define PROM_BASE (KSEG1_BASE | 0x1fc00000) 00186 #define PROM_ENTRY(x) (PROM_BASE + ((x) * 8)) 00187 00188 00189 #endif // _JAZZDEF_

Generated on Sat May 15 19:40:32 2004 for test by doxygen 1.3.7