On 11/15/2011 05:22 PM, Benoît Canet wrote:
> When converting lines like :
>
> - cpu_register_physical_memory_offset(0x1f800000, 0x1000,
> - sh7750_io_memory, 0x1f800000);
> - cpu_register_physical_memory_offset(0xff800000, 0x1000,
> - sh7750_io_memory, 0x1f800000);
>
> I'm tempted to do :
>
> + memory_region_init_alias(&s->iomem_1f8, "memory-1f8",
> + &s->iomem, 0x1f800000, 0x1000);
> + memory_region_add_subregion(sysmem, 0x1f800000, &s->iomem_1f8);
> +
> + memory_region_init_alias(&s->iomem_ff8, "memory-ff8",
> + &s->iomem, 0xff800000, 0x1000);
> + memory_region_add_subregion(sysmem, 0xff800000, &s->iomem_ff8);
>
> but I'm affraid to loose some information contained in the offset
> different from the base address (0xff800000 != 0x1f800000).
>
I think the last lines need to be
memory_region_init_alias(&s->iomem_ff8, "memory-ff8",
&s->iomem, 0x1f800000, 0x1000);
memory_region_add_subregion(sysmem, 0xff800000, &s->iomem_ff8);
This redirects writes to 0xff800xxx in sysmem to 0x1f800xxx in iomem,
which is what I think the original code intends.
--
error compiling committee.c: too many arguments to function