On Wed, 2020-10-21 at 08:29 -0400, Alan Stern wrote: > On Wed, Oct 21, 2020 at 02:02:55PM +0200, Bastien Nocera wrote: > > On Wed, 2020-10-21 at 13:53 +0200, Bastien Nocera wrote: > > <snip> > > > I'll prepare a patch that adds a match function. I'll let you > > > (Vefa) > > > look at which of your patches need backporting though, as I'm > > > really > > > quite a bit lost in the different patch sets and branches :/ > > > > Something like that (untested): > > > > diff --git a/drivers/usb/misc/apple-mfi-fastcharge.c > > b/drivers/usb/misc/apple-mfi-fastcharge.c > > index b403094a6b3a..bb89dde018b1 100644 > > --- a/drivers/usb/misc/apple-mfi-fastcharge.c > > +++ b/drivers/usb/misc/apple-mfi-fastcharge.c > > @@ -163,17 +163,26 @@ static const struct power_supply_desc > > apple_mfi_fc_desc = { > > .property_is_writeable = > > apple_mfi_fc_property_is_writeable > > }; > > > > +static bool mfi_fc_match(struct usb_device *udev) > > +{ > > + int idProduct, idVendor; > > + > > + idVendor = le16_to_cpu(udev->descriptor.idVendor); > > + idProduct = le16_to_cpu(udev->descriptor.idProduct); > > + /* See comment above mfi_fc_id_table[] */ > > + return (idVendor == APPLE_VENDOR_ID && > > + idProduct >= 0x1200 && > > + idProduct <= 0x12ff); > > +} > > + > > static int mfi_fc_probe(struct usb_device *udev) > > { > > struct power_supply_config battery_cfg = {}; > > struct mfi_device *mfi = NULL; > > - int err, idProduct; > > + int err; > > > > - idProduct = le16_to_cpu(udev->descriptor.idProduct); > > - /* See comment above mfi_fc_id_table[] */ > > - if (idProduct < 0x1200 || idProduct > 0x12ff) { > > + if (!mfi_fc_probe(udev)) > > That should be mfi_fc_match(udev). *facepalm* Thanks