summaryrefslogtreecommitdiffstats
path: root/bootdevice.c
diff options
context:
space:
mode:
authorMark Cave-Ayland2018-08-05 13:28:49 +0200
committerEduardo Habkost2018-08-17 03:27:43 +0200
commitbe64d7776bcc48a542acf1f74765a3930692cef4 (patch)
tree9b72e6cf3d25bcd3dce8e690075abdb7e5834bc6 /bootdevice.c
parentmachine: Fix coding style at machine_run_board_init() (diff)
downloadqemu-be64d7776bcc48a542acf1f74765a3930692cef4.tar.gz
qemu-be64d7776bcc48a542acf1f74765a3930692cef4.tar.xz
qemu-be64d7776bcc48a542acf1f74765a3930692cef4.zip
sysbus: always allow explicit_ofw_unit_address() to override address generation
Some SysBusDevices either use sysbus_init_mmio() without sysbus_mmio_map() or the first MMIO memory region doesn't represent the bus address, causing a firmware device path with an invalid address to be generated. SysBusDeviceClass does provide a virtual explicit_ofw_unit_address() method that can be used to override this process, but it was originally intended only as as a fallback option meaning that any existing MMIO memory regions still take priority whilst determining the firmware device address. There is currently only one user of explicit_ofw_unit_address() and that is the PCI expander bridge (PXB) device which has no MMIO/PIO resources defined. This enables us to allow explicit_ofw_unit_address() to take priority without affecting backwards compatibility, allowing the address to be customised as required. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20180805112850.26063-2-mark.cave-ayland@ilande.co.uk> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'bootdevice.c')
0 files changed, 0 insertions, 0 deletions