On Thursday 07 January 2010 10:29:36 am Bastian Blank wrote: > Get the features information from the driver info of the usb device id > structure provided by the caller. The device ids and feature structs > are strong coupled using indices. > > Signed-off-by: Bastian Blank <waldi@xxxxxxxxxx> > --- > drivers/input/tablet/wacom_sys.c | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/input/tablet/wacom_sys.c > b/drivers/input/tablet/wacom_sys.c index ab42c25..b0f3fc3 100644 > --- a/drivers/input/tablet/wacom_sys.c > +++ b/drivers/input/tablet/wacom_sys.c > @@ -532,7 +532,7 @@ static int wacom_probe(struct usb_interface *intf, > const struct usb_device_id *i struct usb_endpoint_descriptor *endpoint; > struct wacom *wacom; > struct wacom_wac *wacom_wac; > - struct wacom_features *features; > + struct wacom_features *features = (void *)id->driver_info; What is this cast for? > struct input_dev *input_dev; > int error = -ENOMEM; > > @@ -557,7 +557,9 @@ static int wacom_probe(struct usb_interface *intf, > const struct usb_device_id *i usb_make_path(dev, wacom->phys, > sizeof(wacom->phys)); > strlcat(wacom->phys, "/input0", sizeof(wacom->phys)); > > - wacom_wac->features = features = get_wacom_feature(id); > + if (!features) > + features = get_wacom_feature(id); In which cases driver would not have driver_info set up? > + wacom_wac->features = features; > BUG_ON(features->pktlen > WACOM_PKGLEN_MAX); > > input_dev->name = wacom_wac->features->name; > -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html