> I'd prefer a generic address type since this makes it easier to > share code: for example virtio devices can use different busses,
This is exactly why virtio devices should not be accessing memory. They should be doing everything via a virtqueue, which can interface with the host bindings appropriately. Paul