qemu-e2k/include/hw
Thomas Huth b99260ebbb hw/ppc/spapr: Fix boot path of usb-host storage devices
When passing through an USB storage device to a pseries guest, it
is currently not possible to automatically boot from the device
if the "bootindex" property has been specified, too (e.g. when using
"-device nec-usb-xhci -device usb-host,hostbus=1,hostaddr=2,bootindex=0"
at the command line). The problem is that QEMU builds a device tree path
like "/pci@800000020000000/usb@0/usb-host@1" and passes it to SLOF
in the /chosen/qemu,boot-list property. SLOF, however, probes the
USB device, recognizes that it is a storage device and thus changes
its name to "storage", and additionally adds a child node for the
SCSI LUN, so the correct boot path in SLOF is something like
"/pci@800000020000000/usb@0/storage@1/disk@101000000000000" instead.
So when we detect an USB mass storage device with SCSI interface,
we've got to adjust the firmware boot-device path properly that
SLOF can automatically boot from the device.

Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1354177
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2017-01-31 10:10:13 +11:00
..
acpi machine: Make possible_cpu_arch_ids() return const pointer 2017-01-23 21:25:37 -02:00
adc STM32F2xx: Add the ADC device 2016-10-04 13:28:07 +01:00
arm char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
audio
block
char char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
core generic-loader: Add a generic loader 2016-10-04 13:28:09 +01:00
cpu
cris char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
display
dma include: Fix typos found by codespell 2017-01-24 23:26:52 +03:00
gpio
i2c i2c: Allow I2C devices to NAK start events 2017-01-09 11:40:20 +00:00
i386 char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
ide ide: Fix memory leak in ide_register_restart_cb() 2016-09-29 15:50:29 -04:00
input
intc hw/intc/arm_gicv3: Implement gicv3_cpuif_virt_update() 2017-01-20 11:15:10 +00:00
ipack
ipmi
isa
kvm
lm32 intc: make HMP 'info irq' and 'info pic' commands use InterruptStatsProvider interface 2016-10-04 10:00:25 +02:00
m68k char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
mem nvdimm acpi: rename nvdimm_acpi_hotplug 2016-11-15 17:20:37 +02:00
mips Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
misc aspeed: add the definitions for the AST2400 A1 SoC 2016-12-27 14:59:28 +00:00
net
nvram fw-cfg: turn FW_CFG_FILE_SLOTS into a device property 2017-01-18 22:59:53 +02:00
pci PCI/migration merge vmstate_pci_device and vmstate_pcie_device 2017-01-24 18:00:31 +00:00
pci-host include: Fix typos found by codespell 2017-01-24 23:26:52 +03:00
ppc ppc/spapr: implement H_SIGNAL_SYS_RESET 2017-01-31 10:10:13 +11:00
s390x
scsi
sd
sh4 char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
smbios smbios: filter based on CONFIG_SMBIOS rather than TARGET 2017-01-16 17:52:34 +01:00
sparc char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
ssi aspeed/smc: handle SPI flash Command mode 2017-01-20 11:15:08 +00:00
timer target-sparc: implement sun4v RTC 2017-01-18 22:03:44 +01:00
tricore
unicore32
usb
vfio vfio: Pass an error object to vfio_get_device 2016-10-17 10:58:00 -06:00
virtio First set of s390x patches for 2.9: 2017-01-20 15:53:58 +00:00
watchdog
xen char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
boards.h machine: Make possible_cpu_arch_ids() return const pointer 2017-01-23 21:25:37 -02:00
bt.h char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
compat.h pflash_cfi01: fix per-device sector length in CFI table 2017-01-27 15:20:22 +00:00
devices.h char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
elf_ops.h
empty_slot.h
fw-path-provider.h
hotplug.h qdev: hotplug: drop HotplugHandler.post_plug callback 2016-11-15 17:20:37 +02:00
hw.h hw: move reset handlers from vl.c to hw/core 2017-01-16 17:52:35 +01:00
ide.h
irq.h
loader.h fw-cfg: support writeable blobs 2017-01-18 22:59:53 +02:00
nmi.h
or-irq.h irq: Add a new irq device that allows the ORing of lines 2016-10-04 13:28:07 +01:00
pcmcia.h
platform-bus.h
ptimer.h hw/ptimer: Add "no counter round down" policy 2016-10-24 16:26:52 +01:00
qdev-core.h Introduce DEVICE_CATEGORY_CPU for CPU devices 2017-01-27 18:07:31 +01:00
qdev-dma.h
qdev-properties.h char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
qdev.h
register.h hw/registerfields.h: Pull FIELD etc macros out of hw/register.h 2017-01-27 15:20:21 +00:00
registerfields.h hw/registerfields.h: Pull FIELD etc macros out of hw/register.h 2017-01-27 15:20:21 +00:00
stream.h
sysbus.h sysbus: Remove ignored return value of FindSysbusDeviceFunc 2016-09-27 17:03:34 -03:00
usb.h hw/ppc/spapr: Fix boot path of usb-host storage devices 2017-01-31 10:10:13 +11:00