On 3/24/10, Michael S. Tsirkin wrote: > On Tue, Mar 23, 2010 at 11:43:51PM +0200, Blue Swirl wrote: > > rtl8139.c, e1000.c: need to convert ldl/stl to cpu_physical_memory_read/write. > > > I don't see how it would help. These still get target_phys_addr_t which > is per-target. Further, a ton of devices do > cpu_register_physical_memory/qemu_register_coalesced_mmio. > These are also per target. I don't know what I was eating yesterday: there are no references to ldl/stl in either rtl8139 or e1000. In fact, the conversion is simple for the device itself, just add a property "be". The attached patch performs this part. But now there is a bigger problem, how to pass the property to the device. It's not fair to require the user to remember to set it. > A simple solution would be to change all of cpu_XX functions to > get a 64 bit address. This is a lot of churn, if we do this > anyway we should also pass length to callbacks, this way > rwhandler will get very small or go away completely. It's not too much effort to keep the target_phys_addr_t type.