dev_m8820x.cc Source File
Back to the index.
Go to the documentation of this file.
111 if (!all && (sar & 0xfffff000) != (v & 0xfffff000))
122 fatal(
"[ m8820x_command: FATAL ERROR! unimplemented "
123 "command 0x%02x ]\n",
cmd);
131 uint64_t idata = 0, odata = 0;
140 odata = regs[relative_addr /
sizeof(uint32_t)];
142 switch (relative_addr /
sizeof(uint32_t)) {
146 fatal(
"m8820x: write to CMMU_IDR: TODO\n");
153 fatal(
"m8820x: read from CMMU_SCR: TODO\n");
156 regs[relative_addr /
sizeof(uint32_t)] = idata;
157 m8820x_command(
cpu, d);
163 fatal(
"m8820x: write to CMMU_SSR: TODO\n");
177 regs[relative_addr /
sizeof(uint32_t)] = idata;
190 int i = (relative_addr /
sizeof(uint32_t)) -
CMMU_BWP0;
192 regs[relative_addr /
sizeof(uint32_t)] = idata;
209 default:
fatal(
"[ m8820x: unimplemented %s offset 0x%x",
210 writeflag ==
MEM_WRITE?
"write to" :
"read from",
211 (
int) relative_addr);
213 fatal(
": 0x%x", (
int)idata);
#define M8820X_PATC_SUPERVISOR_BIT
struct m8820x_cmmu * cmmu[MAX_M8820X_CMMUS]
#define CMMU_FLUSH_SUPER_PAGE
#define CMMU_FLUSH_CACHE_CBI_LINE
#define CMMU_FLUSH_USER_ALL
#define CMMU_FLUSH_CACHE_INV_PAGE
#define CMMU_FLUSH_CACHE_INV_LINE
#define N_M88200_PATC_ENTRIES
void memory_device_register(struct memory *mem, const char *, uint64_t baseaddr, uint64_t len, int(*f)(struct cpu *, struct memory *, uint64_t, unsigned char *, size_t, int, void *), void *extra, int flags, unsigned char *dyntrans_data)
#define CMMU_FLUSH_CACHE_CBI_SEGMENT
uint32_t patc_p_and_supervisorbit[N_M88200_PATC_ENTRIES]
uint32_t reg[M8820X_LENGTH/sizeof(uint32_t)]
void fatal(const char *fmt,...)
uint64_t memory_readmax64(struct cpu *cpu, unsigned char *buf, int len)
uint32_t patc_v_and_control[N_M88200_PATC_ENTRIES]
void(* invalidate_translation_caches)(struct cpu *, uint64_t paddr, int flags)
#define CMMU_FLUSH_USER_PAGE
#define CMMU_FLUSH_CACHE_CBI_ALL
#define CMMU_FLUSH_SUPER_ALL
#define CMMU_FLUSH_CACHE_CB_PAGE
#define CMMU_FLUSH_CACHE_CBI_PAGE
#define CMMU_FLUSH_CACHE_INV_ALL
void memory_writemax64(struct cpu *cpu, unsigned char *buf, int len, uint64_t data)
uint32_t batc[N_M88200_BATC_REGS]
#define CMMU_FLUSH_CACHE_CB_LINE
#define CHECK_ALLOCATION(ptr)
Generated on Tue Mar 24 2020 14:04:48 for GXemul by
1.8.17