Lines Matching refs:mmio
2337 static int subpage_register (subpage_t *mmio, uint32_t start, uint32_t end,
3035 static inline uint32_t subpage_readlen (subpage_t *mmio, target_phys_addr_t addr, in subpage_readlen() argument
3044 mmio, len, addr, idx); in subpage_readlen()
3046 ret = (**mmio->mem_read[idx][len])(mmio->opaque[idx][0][len], in subpage_readlen()
3047 addr + mmio->region_offset[idx][0][len]); in subpage_readlen()
3052 static inline void subpage_writelen (subpage_t *mmio, target_phys_addr_t addr, in subpage_writelen() argument
3060 mmio, len, addr, idx, value); in subpage_writelen()
3062 (**mmio->mem_write[idx][len])(mmio->opaque[idx][1][len], in subpage_writelen()
3063 addr + mmio->region_offset[idx][1][len], in subpage_writelen()
3133 static int subpage_register (subpage_t *mmio, uint32_t start, uint32_t end, in subpage_register() argument
3145 mmio, start, end, idx, eidx, memory); in subpage_register()
3151 mmio->mem_read[idx][i] = &io_mem_read[memory][i]; in subpage_register()
3152 mmio->opaque[idx][0][i] = io_mem_opaque[memory]; in subpage_register()
3153 mmio->region_offset[idx][0][i] = region_offset; in subpage_register()
3156 mmio->mem_write[idx][i] = &io_mem_write[memory][i]; in subpage_register()
3157 mmio->opaque[idx][1][i] = io_mem_opaque[memory]; in subpage_register()
3158 mmio->region_offset[idx][1][i] = region_offset; in subpage_register()
3169 subpage_t *mmio; in subpage_init() local
3172 mmio = qemu_mallocz(sizeof(subpage_t)); in subpage_init()
3174 mmio->base = base; in subpage_init()
3175 subpage_memory = cpu_register_io_memory(subpage_read, subpage_write, mmio); in subpage_init()
3178 mmio, base, TARGET_PAGE_SIZE, subpage_memory); in subpage_init()
3181 subpage_register(mmio, 0, TARGET_PAGE_SIZE - 1, orig_memory, in subpage_init()
3184 return mmio; in subpage_init()