hw/usb/hcd-xhci: Reset the XHCIState with device_cold_reset()
commit1dfb7a175f55039c0641cab9def130ca9e844da9
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 14 Oct 2022 14:54:23 +0000 (14 15:54 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Wed, 23 Nov 2022 11:28:51 +0000 (23 12:28 +0100)
tree4e324f1d2da6b7a7e9831079caa58c50074de8c4
parent64f1359bd08060ffe7a5689fdcbaeec6d8a59980
hw/usb/hcd-xhci: Reset the XHCIState with device_cold_reset()

Currently the hcd-xhci-pci and hcd-xhci-sysbus devices, which are
mostly wrappers around the TYPE_XHCI device, which is a direct
subclass of TYPE_DEVICE.  Since TYPE_DEVICE devices are not on any
qbus and do not get automatically reset, the wrapper devices both
reset the TYPE_XHCI device in their own reset functions.  However,
they do this using device_legacy_reset(), which will reset the device
itself but not any bus it has.

Switch to device_cold_reset(), which avoids using a deprecated
function and also propagates reset along any child buses.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20221014145423.2102706-1-peter.maydell@linaro.org>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
hw/usb/hcd-xhci-pci.c
hw/usb/hcd-xhci-sysbus.c