28 |
* SUCH DAMAGE. |
* SUCH DAMAGE. |
29 |
* |
* |
30 |
* |
* |
31 |
* $Id: memory.h,v 1.29 2005/02/26 16:53:32 debug Exp $ |
* $Id: memory.h,v 1.32 2005/05/23 14:22:03 debug Exp $ |
32 |
* |
* |
33 |
* Memory controller related functions. |
* Memory controller related functions. |
34 |
*/ |
*/ |
118 |
|
|
119 |
#define CACHE_FLAGS_MASK 0x3 |
#define CACHE_FLAGS_MASK 0x3 |
120 |
|
|
121 |
#define NO_EXCEPTIONS 8 |
#define NO_EXCEPTIONS 16 |
122 |
#define PHYSICAL 16 |
#define PHYSICAL 32 |
123 |
|
#define NO_SEGMENTATION 64 /* for X86 */ |
124 |
|
|
125 |
|
|
126 |
/* memory.c: */ |
/* memory.c: */ |
144 |
unsigned char *fast_vaddr_to_hostaddr(struct cpu *cpu, uint64_t vaddr, |
unsigned char *fast_vaddr_to_hostaddr(struct cpu *cpu, uint64_t vaddr, |
145 |
int writeflag); |
int writeflag); |
146 |
|
|
147 |
|
/* MIPS stuff: */ |
148 |
int translate_address_mmu3k(struct cpu *cpu, uint64_t vaddr, |
int translate_address_mmu3k(struct cpu *cpu, uint64_t vaddr, |
149 |
uint64_t *return_addr, int flags); |
uint64_t *return_addr, int flags); |
150 |
int translate_address_mmu8k(struct cpu *cpu, uint64_t vaddr, |
int translate_address_mmu8k(struct cpu *cpu, uint64_t vaddr, |
156 |
int translate_address_generic(struct cpu *cpu, uint64_t vaddr, |
int translate_address_generic(struct cpu *cpu, uint64_t vaddr, |
157 |
uint64_t *return_addr, int flags); |
uint64_t *return_addr, int flags); |
158 |
|
|
159 |
|
/* X86 stuff: */ |
160 |
|
int translate_address_x86(struct cpu *cpu, uint64_t vaddr, |
161 |
|
uint64_t *return_addr, int flags); |
162 |
|
|
163 |
|
|
164 |
#define FLAG_WRITEFLAG 1 |
#define FLAG_WRITEFLAG 1 |
165 |
#define FLAG_NOEXCEPTIONS 2 |
#define FLAG_NOEXCEPTIONS 2 |
166 |
#define FLAG_INSTR 4 |
#define FLAG_INSTR 4 |
185 |
void *extra, int flags, unsigned char *bintrans_data); |
void *extra, int flags, unsigned char *bintrans_data); |
186 |
void memory_device_remove(struct memory *mem, int i); |
void memory_device_remove(struct memory *mem, int i); |
187 |
|
|
188 |
#define MEM_DEFAULT 0 |
/* Bit flags: */ |
189 |
#define MEM_BINTRANS_OK 1 |
#define MEM_DEFAULT 0 |
190 |
#define MEM_BINTRANS_WRITE_OK 2 |
#define MEM_BINTRANS_OK 1 |
191 |
|
#define MEM_BINTRANS_WRITE_OK 2 |
192 |
|
#define MEM_READING_HAS_NO_SIDE_EFFECTS 4 |
193 |
|
|
194 |
|
|
195 |
#endif /* MEMORY_H */ |
#endif /* MEMORY_H */ |