hw/usb/host-libusb.c: fix build with kernel < 5.0
commita3c27ea0344d3cc7295a5f0589d5514913ec1522
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Sun, 13 Dec 2020 21:30:16 +0000 (13 22:30 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Fri, 22 Jan 2021 13:51:35 +0000 (22 14:51 +0100)
tree2d54674255872d58633b83834eab6fc23cf29b6e
parent0e32462630687a18039464511bd0447ada5709c3
hw/usb/host-libusb.c: fix build with kernel < 5.0

USBDEVFS_GET_SPEED is used since version 5.2.0 and
https://gitlab.com/qemu-project/qemu/-/commit/202d69a715a4b1824dcd7ec1683d027ed2bae6d3
resulting in the following build failure with kernel < 5.0:

../hw/usb/host-libusb.c: In function 'usb_host_open':
../hw/usb/host-libusb.c:953:32: error: 'USBDEVFS_GET_SPEED' undeclared (first use in this function); did you mean 'USBDEVFS_GETDRIVER'?
         int rc = ioctl(hostfd, USBDEVFS_GET_SPEED, NULL);
                                ^~~~~~~~~~~~~~~~~~
                                USBDEVFS_GETDRIVER

A tentative was made to fix this build failure with
https://gitlab.com/qemu-project/qemu/-/commit/4969e697c15ac536d5c0700381d5d026ef7f0588

However, the assumption that distros with old kernels also have old
libusb is just wrong so also add a check for defined(USBDEVFS_GET_SPEED)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Message-id: 20201213213016.457350-1-fontaine.fabrice@gmail.com

[ kraxel: codestyle whitespace fixup ]

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
hw/usb/host-libusb.c