USB: apple-mfi-fastcharge: fix endianess issue in probe
authorOliver Neukum <oneukum@suse.com>
Thu, 13 Feb 2020 11:13:36 +0000 (12:13 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Feb 2020 13:07:10 +0000 (05:07 -0800)
The product ID is little endian and needs to be converted.

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Oliver Neukum <oneukum@suse.com>
Reviewed-by: Bastien Nocera <hadess@hadess.net>
Link: https://lore.kernel.org/r/20200213111336.32392-1-oneukum@suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/misc/apple-mfi-fastcharge.c

index f1c4461..b403094 100644 (file)
@@ -167,11 +167,11 @@ static int mfi_fc_probe(struct usb_device *udev)
 {
        struct power_supply_config battery_cfg = {};
        struct mfi_device *mfi = NULL;
-       int err;
+       int err, idProduct;
 
+       idProduct = le16_to_cpu(udev->descriptor.idProduct);
        /* See comment above mfi_fc_id_table[] */
-       if (udev->descriptor.idProduct < 0x1200 ||
-           udev->descriptor.idProduct > 0x12ff) {
+       if (idProduct < 0x1200 || idProduct > 0x12ff) {
                return -ENODEV;
        }