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

jazzprom.h

Go to the documentation of this file.
00001 /*++ 00002 00003 Copyright (c) 1991 Microsoft Corporation 00004 00005 Module Name: 00006 00007 jazzprom.h 00008 00009 Abstract: 00010 00011 This module is the header file that describes physical and virtual 00012 address used by the PROM monitor and boot code. 00013 00014 Author: 00015 00016 David N. Cutler (davec) 27-Apr-1991 00017 00018 Revision History: 00019 00020 --*/ 00021 00022 #ifndef _JAZZPROM_ 00023 #define _JAZZPROM_ 00024 00025 // 00026 // Define virtual/physical base address pairs for boot mapping. 00027 // 00028 00029 #define DEVICE_VIRTUAL_BASE 0xe0000000 // virtual base of device space 00030 #define DEVICE_PHYSICAL_BASE 0x80000000 // physical base of device space 00031 00032 #undef INTERRUPT_VIRTUAL_BASE 00033 #define INTERRUPT_VIRTUAL_BASE 0xe0100000 // virtual base of interrupt source 00034 #define INTERRUPT_PHYSICAL_BASE 0xf0000000 // physical base of interrupt source 00035 00036 #define VIDEO_CONTROL_VIRTUAL_BASE 0xe0200000 // virtual base of video control 00037 #define VIDEO_CONTROL_PHYSICAL_BASE 0x60000000 // physical base of video control 00038 00039 #define EXTENDED_VIDEO_CONTROL_VIRTUAL_BASE 0xe0400000 // virtual base of extended video control 00040 #define EXTENDED_VIDEO_CONTROL_PHYSICAL_BASE 0x60200000 // physical base of extended video control 00041 00042 #define VIDEO_MEMORY_VIRTUAL_BASE 0xe0800000 // virtual base of video memory 00043 #define VIDEO_MEMORY_PHYSICAL_BASE 0x40000000 // physical base of video memory 00044 00045 #define PROM_VIRTUAL_BASE 0xe1000000 // virtual base of boot PROM 00046 #define PROM_PHYSICAL_BASE 0xfff00000 // physical base of boot PROM 00047 00048 #define EISA_IO_VIRTUAL_BASE 0xe2000000 // virtual base of EISA I/O 00049 #define EISA_IO_PHYSICAL_BASE 0x90000000 // physical base of EISA I/O 00050 #define EISA_EXTERNAL_IO_VIRTUAL_BASE 0xe4000000 // external virtual base of EISA I/O 00051 00052 #define EISA_MEMORY_VIRTUAL_BASE 0xe3000000 // virtual base of EISA memory 00053 #define EISA_MEMORY_PHYSICAL_BASE 0x91000000 // physical base of EISA memory 00054 00055 #define PCR_VIRTUAL_BASE KiPcr // virtual address of PCR 00056 #define PCR_PHYSICAL_BASE 0x7ff000 // physical address of PCR 00057 00058 #undef SP_PHYSICAL_BASE 00059 #define SP_VIRTUAL_BASE 0xffffa000 // virtual base of serial port 00060 #define SP_PHYSICAL_BASE 0x80006000 // physical base of serial port 00061 00062 // 00063 // Define boot code device virtual addresses. 00064 // 00065 00066 #undef DMA_VIRTUAL_BASE 00067 #define DMA_VIRTUAL_BASE 0xe0000000 // virtual base of DMA control 00068 00069 #define NET_VIRTUAL_BASE 0xe0001000 // virtual base of ethernet control 00070 00071 #define SCSI_VIRTUAL_BASE 0xe0002000 // virtual base os SCSI control 00072 00073 #define FLOPPY_VIRTUAL_BASE 0xe0003000 // virtual base of floppy control 00074 00075 #define RTC_VIRTUAL_BASE 0xe0004000 // virtual base of realtime clock 00076 00077 #define KEYBOARD_VIRTUAL_BASE 0xe0005000 // virtual base of keyboard control 00078 00079 #define COMPORT1_VIRTUAL_BASE 0xe0006000 // virtual base of comport 1 control 00080 00081 #define COMPORT2_VIRTUAL_BASE 0xe0007000 // virtual base of comport 2 control 00082 00083 #define PARALLEL_VIRTUAL_BASE 0xe0008000 // virtual base of parallel control 00084 00085 #define NVRAM_VIRTUAL_BASE 0xe0009000 // virtual base of NVRAM 00086 00087 #define SOUND_VIRTUAL_BASE 0xe000c000 // virtual base of sound control 00088 00089 #define DIAGNOSTIC_VIRTUAL_BASE 0xe000f000 // virtual base of diagnostic control 00090 00091 #define VIDEO_CURSOR_VIRTUAL_BASE 0xe0208000 // virtual base of cursor control 00092 00093 #define VIDEO_ID_VIRTUAL_BASE 0xe0210000 // virtual base of video id register 00094 00095 #define VIDEO_RESET_VIRTUAL_BASE 0xe0220000 // virtual base of reset register 00096 00097 // 00098 // Define base address and limit of DMA translation table. 00099 // 00100 00101 #define DMA_TRANSLATION_BASE 0xa0001000 // translation table base address 00102 #define DMA_TRANSLATION_LIMIT 0x1000 // translation table limit 00103 00104 // 00105 // Define pointer to DMA control registers. 00106 // 00107 00108 #define DMA_CONTROL ((volatile PDMA_REGISTERS)(DMA_VIRTUAL_BASE)) 00109 00110 // 00111 // Define DMA channels. 00112 // 00113 00114 #define SCSI_CHANNEL 0x0 // SCSI DMA channel number 00115 #define FLOPPY_CHANNEL 0x1 // Floppy DMA channel 00116 00117 // 00118 // Define pointer to interrupt source register. 00119 // 00120 00121 #undef INTERRUPT_SOURCE 00122 #define INTERRUPT_SOURCE ((volatile PUCHAR)INTERRUPT_VIRTUAL_BASE) 00123 00124 // 00125 // Define device interrupt identification values. 00126 // 00127 00128 #define PARALLEL_DEVICE 0x4 // Parallel port device interrupt id 00129 #define FLOPPY_DEVICE 0x8 // Floppy device interrupt id 00130 #define SOUND_DEVICE 0xC // Sound device interrupt id 00131 #define VIDEO_DEVICE 0x10 // Video device interrupt id 00132 #define ETHERNET_DEVICE 0x14 // Ethernet device interrupt id 00133 #define SCSI_DEVICE 0x18 // SCSI device interrupt id 00134 #define KEYBOARD_DEVICE 0x1C // Keyboard device interrupt id 00135 #define MOUSE_DEVICE 0x20 // Mouse device interrupt id 00136 #define SERIAL0_DEVICE 0x24 // Serial port 0 device interrupt id 00137 #define SERIAL1_DEVICE 0x28 // Serial port 1 device interrupt id 00138 00139 // 00140 // Define low memory transfer vector address and TB index address. 00141 // 00142 00143 #define TRANSFER_VECTOR (KSEG1_BASE + 0x400) // exception handler address 00144 00145 #endif // _JAZZPROM_

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