Gerd Hoffmann 
							
						 
					 
					
						
						
							
						
						b946434f26 
					 
					
						
						
							
							usb: fix setup_len init (CVE-2020-14364)  
						
						... 
						
						
						
						Store calculated setup_len in a local variable, verify it, and only
write it to the struct (USBDevice->setup_len) in case it passed the
sanity checks.
This prevents other code (do_token_{in,out} functions specifically)
from working with invalid USBDevice->setup_len values and overrunning
the USBDevice->setup_buf[] buffer.
Fixes: CVE-2020-14364
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Tested-by: Gonglei <arei.gonglei@huawei.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-id: 20200825053636.29648-1-kraxel@redhat.com  
						
						
					 
					
						2020-08-31 08:23:39 +02:00 
						 
				 
			
				
					
						
							
							
								Gerd Hoffmann 
							
						 
					 
					
						
						
							
						
						202d69a715 
					 
					
						
						
							
							usb-host: workaround libusb bug  
						
						... 
						
						
						
						libusb_get_device_speed() does not work for
libusb_wrap_sys_device() devices in v1.0.23.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1871090 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Message-id: 20200824110057.32089-1-kraxel@redhat.com  
						
						
					 
					
						2020-08-31 08:23:39 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						d7c1523f58 
					 
					
						
						
							
							hw/usb: Add U2F device autoscan to passthru mode  
						
						... 
						
						
						
						This patch adds an autoscan to let u2f-passthru choose the first U2F
device it finds.
The autoscan is performed using libudev with an enumeration of all the
hidraw devices present on the host.
The first device which happens to be a U2F device is taken to do the
passtru.
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-13-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:23:39 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						4ee40a6b98 
					 
					
						
						
							
							hw/usb: Add U2F device check to passthru mode  
						
						... 
						
						
						
						This patchs adds a check to verify that the device passed through the
hidraw property is a U2F device.
The check is done by ensuring that the first values of the report
descriptor (USAGE PAGE and USAGE) correspond to those of a U2F device.
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-12-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:23:39 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						0a40bcb740 
					 
					
						
						
							
							meson: Add U2F key to meson  
						
						... 
						
						
						
						Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-8-cesar.belley@lse.epita.fr 
[ fixes suggested by paolo ]
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:23:10 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						a983b1135f 
					 
					
						
						
							
							hw/usb: Add U2F key emulated mode  
						
						... 
						
						
						
						This patch adds the U2F key emulated mode.
The emulated mode consists of completely emulating the behavior of a
U2F device through software part. Libu2f-emu is used for that.
The emulated mode is associated with a device inheriting from
u2f-key base.
To work, an emulated U2F device must have differents elements which
can be given in different ways. This is detailed in docs/u2f.txt.
The Ephemeral one is the simplest way to configure, it lets the device
generate all the elements it needs for a single use of the lifetime
of the device:
    qemu -usb -device u2f-emulated
For more information about libu2f-emu see this page:
https://github.com/MattGorko/libu2f-emu .
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-7-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						299976b050 
					 
					
						
						
							
							hw/usb: Add U2F key passthru mode  
						
						... 
						
						
						
						This patch adds the U2F key pass-through mode.
The pass-through mode consists of passing all requests made from the
guest to the physical security key connected to the host machine and
vice versa.
In addition, the dedicated pass-through allows to have a U2F security key
shared on several guests which is not possible with a simple host device
assignment pass-through.
The pass-through mode is associated with a device inheriting from
u2f-key base.
To work, it needs the path to a U2F hidraw, obtained from the Qemu
command line, and passed by the user:
    qemu -usb -device u2f-passthru,hidraw=/dev/hidrawX
Autoscan and U2F compatibility checking features are given at the end
of the patch series.
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-6-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						bb014a810b 
					 
					
						
						
							
							hw/usb: Add U2F key base class implementation  
						
						... 
						
						
						
						This patch adds the U2F key base class implementation.
The U2F key base mainly takes care of the HID interfacing with guest.
On the one hand, it retrieves the guest U2FHID packets and transmits
them to the variant associated according to the mode: pass-through
or emulated.
On the other hand, it provides the public API used by its variants to
send U2FHID packets to the guest.
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-5-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						80e267f1d1 
					 
					
						
						
							
							hw/usb: Add U2F key base class  
						
						... 
						
						
						
						This patch adds the specification for the U2F key base class.
Used to group the common characteristics, this device class will be
inherited by its two variants, corresponding to the two modes:
passthrough and emulated
This prepares the U2F devices hierarchy which is as follow:
USB device -> u2f-key -> {u2f-passthru, u2f-emulated}.
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200826114209.28821-4-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								César Belley 
							
						 
					 
					
						
						
							
						
						84b6c23629 
					 
					
						
						
							
							hw/usb: Regroup USB HID protocol values  
						
						... 
						
						
						
						Group some HID values that are used pretty much everywhere when
dealing with HID devices.
Signed-off-by: César Belley <cesar.belley@lse.epita.fr >
Message-id: 20200812094135.20550-2-cesar.belley@lse.epita.fr 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								Gerd Hoffmann 
							
						 
					 
					
						
						
							
						
						10b2d90c94 
					 
					
						
						
							
							ehci: drop pointless warn_report for guest bugs.  
						
						... 
						
						
						
						We have a tracepoint at the same place which can be enabled if needed.
Buglink: https://bugzilla.redhat.com//show_bug.cgi?id=1859236 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com >
Message-Id: <20200722072613.10390-1-kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								Li Qiang 
							
						 
					 
					
						
						
							
						
						2fdb42d840 
					 
					
						
						
							
							hw: ehci: check return value of 'usb_packet_map'  
						
						... 
						
						
						
						If 'usb_packet_map' fails, we should stop to process the usb
request.
Signed-off-by: Li Qiang <liq3ea@163.com >
Message-Id: <20200812161727.29412-1-liq3ea@163.com >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								Li Qiang 
							
						 
					 
					
						
						
							
						
						dd8525472a 
					 
					
						
						
							
							hw: ehci: destroy sglist in error path  
						
						... 
						
						
						
						This may cause resource leak.
Signed-off-by: Li Qiang <liq3ea@163.com >
Message-Id: <20200812161712.29361-1-liq3ea@163.com >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								Li Qiang 
							
						 
					 
					
						
						
							
						
						21bc31524e 
					 
					
						
						
							
							hw: xhci: check return value of 'usb_packet_map'  
						
						... 
						
						
						
						Currently we don't check the return value of 'usb_packet_map',
this will cause an UAF issue. This is LP#1891341.
Following is the reproducer provided in:
-->https://bugs.launchpad.net/qemu/+bug/1891341 
cat << EOF | ./i386-softmmu/qemu-system-i386 -device nec-usb-xhci \
-trace usb\* -device usb-audio -device usb-storage,drive=mydrive \
-drive id=mydrive,file=null-co://,size=2M,format=raw,if=none \
-nodefaults -nographic -qtest stdio
outl 0xcf8 0x80001016
outl 0xcfc 0x3c009f0d
outl 0xcf8 0x80001004
outl 0xcfc 0xc77695e
writel 0x9f0d000000000040 0xffff3655
writeq 0x9f0d000000002000 0xff2f9e0000000000
write 0x1d 0x1 0x27
write 0x2d 0x1 0x2e
write 0x17232 0x1 0x03
write 0x17254 0x1 0x06
write 0x17278 0x1 0x34
write 0x3d 0x1 0x27
write 0x40 0x1 0x2e
write 0x41 0x1 0x72
write 0x42 0x1 0x01
write 0x4d 0x1 0x2e
write 0x4f 0x1 0x01
writeq 0x9f0d000000002000 0x5c051a0100000000
write 0x34001d 0x1 0x13
write 0x340026 0x1 0x30
write 0x340028 0x1 0x08
write 0x34002c 0x1 0xfe
write 0x34002d 0x1 0x08
write 0x340037 0x1 0x5e
write 0x34003a 0x1 0x05
write 0x34003d 0x1 0x05
write 0x34004d 0x1 0x13
writeq 0x9f0d000000002000 0xff00010100400009
EOF
This patch fixes this.
Buglink: https://bugs.launchpad.net/qemu/+bug/1891341 
Reported-by: Alexander Bulekov <alxndr@bu.edu >
Signed-off-by: Li Qiang <liq3ea@163.com >
Message-id: 20200812153139.15146-1-liq3ea@163.com 
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com > 
						
						
					 
					
						2020-08-31 08:10:47 +02:00 
						 
				 
			
				
					
						
							
							
								Peter Maydell 
							
						 
					 
					
						
						
							
						
						ea1bb830cb 
					 
					
						
						
							
							Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20200828' into staging  
						
						... 
						
						
						
						target-arm queue:
 * target/arm: Cleanup and refactoring preparatory to SVE2
 * armsse: Define ARMSSEClass correctly
 * hw/misc/unimp: Improve information provided in log messages
 * hw/qdev-clock: Avoid calling qdev_connect_clock_in after DeviceRealize
 * hw/arm/xilinx_zynq: Call qdev_connect_clock_in() before DeviceRealize
 * hw/net/allwinner-sun8i-emac: Use AddressSpace for DMA transfers
 * hw/sd/allwinner-sdhost: Use AddressSpace for DMA transfers
 * target/arm: Fill in the WnR syndrome bit in mte_check_fail
 * target/arm: Clarify HCR_EL2 ARMCPRegInfo type
 * hw/arm/musicpal: Use AddressSpace for DMA transfers
 * hw/clock: Minor cleanups
 * hw/arm/sbsa-ref: fix typo breaking PCIe IRQs
# gpg: Signature made Fri 28 Aug 2020 10:23:02 BST
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org "
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org >" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com >" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk >" [ultimate]
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE
* remotes/pmaydell/tags/pull-target-arm-20200828: (35 commits)
  target/arm: Convert sq{, r}dmulh to gvec for aa64 advsimd
  target/arm: Convert integer multiply-add (indexed) to gvec for aa64 advsimd
  target/arm: Convert integer multiply (indexed) to gvec for aa64 advsimd
  target/arm: Generalize inl_qrdmlah_* helper functions
  target/arm: Tidy SVE tszimm shift formats
  target/arm: Split out gen_gvec_ool_zz
  target/arm: Split out gen_gvec_ool_zzz
  target/arm: Split out gen_gvec_ool_zzp
  target/arm: Merge helper_sve_clr_* and helper_sve_movz_*
  target/arm: Split out gen_gvec_ool_zzzp
  target/arm: Use tcg_gen_gvec_bitsel for trans_SEL_pppp
  target/arm: Clean up 4-operand predicate expansion
  target/arm: Merge do_vector2_p into do_mov_p
  target/arm: Rearrange {sve,fp}_check_access assert
  target/arm: Split out gen_gvec_fn_zzz, do_zzz_fn
  target/arm: Split out gen_gvec_fn_zz
  qemu/int128: Add int128_lshift
  armsse: Define ARMSSEClass correctly
  hw/misc/unimp: Display the offset with width of the region size
  hw/misc/unimp: Display the value with width of the access size
  ...
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 15:14:40 +01:00 
						 
				 
			
				
					
						
							
							
								Peter Maydell 
							
						 
					 
					
						
						
							
						
						3e39dac035 
					 
					
						
						
							
							Merge remote-tracking branch 'remotes/ehabkost/tags/machine-next-pull-request' into staging  
						
						... 
						
						
						
						Machine queue + QOM fixes and cleanups
Bug fix:
* numa: hmat: fix cache size check (Igor Mammedov)
QOM fixes and cleanups:
* Move QOM macros and typedefs to header files
* Use TYPE_* constants on TypeInfo structs
* Rename QOM type checking macros for consistency
* Rename enum values and typedefs that conflict with QOM
  type checking amcros
* Fix typos on QOM type checking macros
* Delete unused QOM type checking macros that use
  non-existing typedefs
* hvf: Add missing include
* xen-legacy-backend: Add missing typedef XenLegacyDevice
# gpg: Signature made Thu 27 Aug 2020 20:20:05 BST
# gpg:                using RSA key 5A322FD5ABC4D3DBACCFD1AA2807936F984DC5A6
# gpg:                issuer "ehabkost@redhat.com "
# gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com >" [full]
# Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF  D1AA 2807 936F 984D C5A6
* remotes/ehabkost/tags/machine-next-pull-request: (53 commits)
  dc390: Use TYPE_DC390_DEVICE constant
  ppce500: Use TYPE_PPC_E500_PCI_BRIDGE constant
  tosa: Use TYPE_TOSA_MISC_GPIO constant
  xlnx-zcu102: Use TYPE_ZCU102_MACHINE constant
  sclpconsole: Use TYPE_* constants
  amd_iommu: Use TYPE_AMD_IOMMU_PCI constant
  nios2_iic: Use TYPE_ALTERA_IIC constant
  etsec: Use TYPE_ETSEC_COMMON constant
  migration: Rename class type checking macros
  swim: Rename struct SWIM to Swim
  s390-virtio-ccw: Rename S390_MACHINE_CLASS macro
  nubus: Rename class type checking macros
  vfio/pci: Move QOM macros to header
  kvm: Move QOM macros to kvm.h
  mptsas: Move QOM macros to header
  pxa2xx: Move QOM macros to header
  rocker: Move QOM macros to header
  auxbus: Move QOM macros to header
  piix: Move QOM macros to header
  virtio-serial-bus: Move QOM macros to header
  ...
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 11:05:08 +01:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						512c65e62e 
					 
					
						
						
							
							armsse: Define ARMSSEClass correctly  
						
						... 
						
						
						
						TYPE_ARM_SSE is a TYPE_SYS_BUS_DEVICE subclass, but
ARMSSEClass::parent_class is declared as DeviceClass.
It never caused any problems by pure luck:
We were not setting class_size for TYPE_ARM_SSE, so class_size of
TYPE_SYS_BUS_DEVICE was being used (sizeof(SysBusDeviceClass)).
This made the system allocate enough memory for TYPE_ARM_SSE
devices even though ARMSSEClass was too small for a sysbus
device.
Additionally, the ARMSSEClass::info field ended up at the same
offset as SysBusDeviceClass::explicit_ofw_unit_address.  This
would make sysbus_get_fw_dev_path() crash for the device.
Luckily, sysbus_get_fw_dev_path() never gets called for
TYPE_ARM_SSE devices, because qdev_get_fw_dev_path() is only used
by the boot device code, and TYPE_ARM_SSE devices don't appear at
the fw_boot_order list.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Message-id: 20200826181006.4097163-1-ehabkost@redhat.com 
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:47 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						55d35c8819 
					 
					
						
						
							
							hw/misc/unimp: Display the offset with width of the region size  
						
						... 
						
						
						
						To have a better idea of how big is the region where the offset
belongs, display the value with the width of the region size
(i.e. a region of 0x1000 bytes uses 0x000 format).
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-id: 20200812190206.31595-4-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:46 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						a12b4c53cb 
					 
					
						
						
							
							hw/misc/unimp: Display the value with width of the access size  
						
						... 
						
						
						
						To quickly notice the access size, display the value with the
width of the access (i.e. 16-bit access is displayed 0x0000,
while 8-bit access 0x00).
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-id: 20200812190206.31595-3-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:46 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						68274b945e 
					 
					
						
						
							
							hw/misc/unimp: Display value after offset  
						
						... 
						
						
						
						To better align the read/write accesses, display the value after
the offset (read accesses only display the offset).
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-id: 20200812190206.31595-2-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:46 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						739fa32554 
					 
					
						
						
							
							hw/qdev-clock: Avoid calling qdev_connect_clock_in after DeviceRealize  
						
						... 
						
						
						
						Clock canonical name is set in device_set_realized (see the block
added to hw/core/qdev.c in commit 0e6934f264f4bug@amsat.org >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-id: 20200803105647.22223-5-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:46 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						f129360ca1 
					 
					
						
						
							
							hw/qdev-clock: Uninline qdev_connect_clock_in()  
						
						... 
						
						
						
						We want to assert the device is not realized. To avoid overloading
this header including "hw/qdev-core.h", uninline the function first.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-id: 20200803105647.22223-4-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:46 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						3ab9287895 
					 
					
						
						
							
							hw/arm/xilinx_zynq: Call qdev_connect_clock_in() before DeviceRealize  
						
						... 
						
						
						
						Clock canonical name is set in device_set_realized (see the block
added to hw/core/qdev.c in commit 0e6934f264f4bug@amsat.org >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-id: 20200803105647.22223-3-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:45 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						31a171cc8b 
					 
					
						
						
							
							hw/arm/xilinx_zynq: Uninline cadence_uart_create()  
						
						... 
						
						
						
						As we want to call qdev_connect_clock_in() before the device
is realized, we need to uninline cadence_uart_create() first.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-id: 20200803105647.22223-2-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:45 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						4757cb8579 
					 
					
						
						
							
							hw/net/allwinner-sun8i-emac: Use AddressSpace for DMA transfers  
						
						... 
						
						
						
						Allow the device to execute the DMA transfers in a different
AddressSpace.
The H3 SoC keeps using the system_memory address space,
but via the proper dma_memory_access() API.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com >
Tested-by: Niek Linnenbank <nieklinnenbank@gmail.com >
Message-id: 20200814122907.27732-1-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:45 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						b3aec952bf 
					 
					
						
						
							
							hw/sd/allwinner-sdhost: Use AddressSpace for DMA transfers  
						
						... 
						
						
						
						Allow the device to execute the DMA transfers in a different
AddressSpace.
The A10 and H3 SoC keep using the system_memory address space,
but via the proper dma_memory_access() API.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Tested-by: Niek Linnenbank <nieklinnenbank@gmail.com >
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com >
Message-id: 20200814110057.307-1-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:45 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						79ed6fd650 
					 
					
						
						
							
							hw/arm/musicpal: Use AddressSpace for DMA transfers  
						
						... 
						
						
						
						Allow the device to execute the DMA transfers in a different
AddressSpace.
We keep using the system_memory address space, but via the
proper dma_memory_access() API.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20200814125533.4047-1-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:44 +01:00 
						 
				 
			
				
					
						
							
							
								Philippe Mathieu-Daudé 
							
						 
					 
					
						
						
							
						
						15aa2876d9 
					 
					
						
						
							
							hw/clock: Let clock_set() return boolean value  
						
						... 
						
						
						
						Let clock_set() return a boolean value whether the clock
has been updated or not.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20200806123858.30058-3-f4bug@amsat.org 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:44 +01:00 
						 
				 
			
				
					
						
							
							
								Graeme Gregory 
							
						 
					 
					
						
						
							
						
						870f0051b4 
					 
					
						
						
							
							hw/arm/sbsa-ref: fix typo breaking PCIe IRQs  
						
						... 
						
						
						
						Fixing a typo in a previous patch that translated an "i" to a 1
and therefore breaking the allocation of PCIe interrupts. This was
discovered when virtio-net-pci devices ceased to function correctly.
Cc: qemu-stable@nongnu.org 
Fixes: 48ba18e6d3graeme@nuviainc.com >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-id: 20200821083853.356490-1-graeme@nuviainc.com 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org > 
						
						
					 
					
						2020-08-28 10:02:43 +01:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						92951316dc 
					 
					
						
						
							
							dc390: Use TYPE_DC390_DEVICE constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <20200826184334.4120620-9-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						8c2eedcea3 
					 
					
						
						
							
							ppce500: Use TYPE_PPC_E500_PCI_BRIDGE constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Acked-by: David Gibson <david@gibson.dropbear.id.au >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <20200826184334.4120620-8-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						c58a7deff8 
					 
					
						
						
							
							tosa: Use TYPE_TOSA_MISC_GPIO constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <20200826184334.4120620-7-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						0b43132f30 
					 
					
						
						
							
							xlnx-zcu102: Use TYPE_ZCU102_MACHINE constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <20200826184334.4120620-6-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						1a3bae794b 
					 
					
						
						
							
							sclpconsole: Use TYPE_* constants  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Acked-by: Cornelia Huck <cohuck@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Reviewed-by: Thomas Huth <thuth@redhat.com >
Message-Id: <20200826184334.4120620-5-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						e91830b121 
					 
					
						
						
							
							amd_iommu: Use TYPE_AMD_IOMMU_PCI constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Reviewed-by: Michael S. Tsirkin <mst@redhat.com >
Message-Id: <20200826184334.4120620-4-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						04d8dbb102 
					 
					
						
						
							
							nios2_iic: Use TYPE_ALTERA_IIC constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <20200826184334.4120620-3-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						f7d82e9bcd 
					 
					
						
						
							
							etsec: Use TYPE_ETSEC_COMMON constant  
						
						... 
						
						
						
						This will make future conversion to use OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Acked-by: David Gibson <david@gibson.dropbear.id.au >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <20200826184334.4120620-2-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:21:48 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						b694ed1f56 
					 
					
						
						
							
							swim: Rename struct SWIM to Swim  
						
						... 
						
						
						
						Currently we have a SWIM typedef and a SWIM type checking macro,
but OBJECT_DECLARE* would transform the SWIM macro into a
function, and the function name would conflict with the SWIM
typedef name.
Rename the struct and typedef to "Swim". This will make future
conversion to OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Acked-by: Laurent Vivier <laurent@vivier.eu >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-50-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						b1af5872ff 
					 
					
						
						
							
							s390-virtio-ccw: Rename S390_MACHINE_CLASS macro  
						
						... 
						
						
						
						Rename it to be consistent with S390_CCW_MACHINE and
TYPE_S390_CCW_MACHINE.
This will make future conversion to OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Acked-by: Cornelia Huck <cohuck@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-49-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						001040158d 
					 
					
						
						
							
							nubus: Rename class type checking macros  
						
						... 
						
						
						
						Rename the existing class type checking macros to be consistent
with the type name and instance type checking macro.  Use a
NUBUS_MACFB prefix instead of MACFB_NUBUS.
This will make future conversion to OBJECT_DECLARE* easier.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Acked-by: Laurent Vivier <laurent@vivier.eu >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-44-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						42db0fb5e0 
					 
					
						
						
							
							vfio/pci: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-43-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						040c1fd35c 
					 
					
						
						
							
							mptsas: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-41-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						2d8eb5f85f 
					 
					
						
						
							
							pxa2xx: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-40-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						8eeb6f3624 
					 
					
						
						
							
							rocker: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-39-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						cb8cf86b3e 
					 
					
						
						
							
							auxbus: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-38-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						fe47ad3aa9 
					 
					
						
						
							
							piix: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-37-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:55 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						b28b80376b 
					 
					
						
						
							
							virtio-serial-bus: Move QOM macros to header  
						
						... 
						
						
						
						This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-36-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:54 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						240b6cd717 
					 
					
						
						
							
							vmbus: Move QOM macros to vmbus.h  
						
						... 
						
						
						
						Move all declarations related to TYPE_VMBUS to the same place in
vmbus.h.
This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-35-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:54 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						41ea82055c 
					 
					
						
						
							
							pckbd: Move QOM macro to header  
						
						... 
						
						
						
						Move the I8042 macro close to the TYPE_I8042 define.
This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-34-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:54 -04:00 
						 
				 
			
				
					
						
							
							
								Eduardo Habkost 
							
						 
					 
					
						
						
							
						
						dc15d9eb41 
					 
					
						
						
							
							ahci: Move QOM macro to header  
						
						... 
						
						
						
						Move the ALLWINNER_AHCI macro close to the TYPE_ALLWINNER_AHCI
define.
This will make future conversion to OBJECT_DECLARE* easier.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com >
Tested-By: Roman Bolshakov <r.bolshakov@yadro.com >
Message-Id: <20200825192110.3528606-33-ehabkost@redhat.com >
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com > 
						
						
					 
					
						2020-08-27 14:04:54 -04:00