[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] MMIO address changes
From: |
Paul Brook |
Subject: |
[Qemu-devel] MMIO address changes |
Date: |
Mon, 1 Dec 2008 18:59:35 +0000 |
User-agent: |
KMail/1.9.9 |
I've just committed a patch that changes the MMIO callback interface for
devices. Instead of being passed an absolute address these are now passed an
offset from the start[1] of the memory region that was registered.
By itself this change has fairly neutral benefit, it just moves logic about.
However it makes subsequent dynamic board configuration bits nicer, and is a
step towards a proper bus level API.
Most of the groundwork for this is already there, from my earlier changes to
separate ram and MMIO addresses TLB handling.
The main notable change it that the PhysPageDesc structure is not bigger. This
isn't ideal, however l2_phys_map needs to go away anyway, so I'm not really
worried about this.
Some devices register their memory regions in multiple segments. To facilitate
this I have added cpu_register_physical_memory_offset.
Most of the remaining changes are fairly mechanical tweaks to fix devices that
explicitly compensated for the absolute address. Many devices are untouched
because they ignore the high bits of the address.
I've tried to be fairly thorough with the changes, and tested what I can.
However it's possible I missed or broke something, so please test your
favourite targets.
Paul
[1] It's actually the offset from the start of the first page of that region.
In practice this difference doesn't matter, and makes the implementation a
lot simpler.
- [Qemu-devel] MMIO address changes,
Paul Brook <=
Re: [Qemu-devel] MMIO address changes, Edgar E. Iglesias, 2008/12/03
[Qemu-devel] [PATCH] usb-ohci: Add address masking., takasi-y, 2008/12/05