On Thu, Apr 21, 2016 at 08:11:16PM +0000, Stefan Wahren wrote: > This patch simplifies the TS registration of mxs-lradc by > using devm_input_allocate_device. > > Signed-off-by: Stefan Wahren <stefan.wahren@xxxxxxxx> > --- > drivers/iio/adc/mxs-lradc.c | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/drivers/iio/adc/mxs-lradc.c b/drivers/iio/adc/mxs-lradc.c > index ad26da1..223650b 100644 > --- a/drivers/iio/adc/mxs-lradc.c > +++ b/drivers/iio/adc/mxs-lradc.c > @@ -1120,12 +1120,11 @@ static int mxs_lradc_ts_register(struct mxs_lradc *lradc) > { > struct input_dev *input; > struct device *dev = lradc->dev; > - int ret; > > if (!lradc->use_touchscreen) > return 0; > > - input = input_allocate_device(); > + input = devm_input_allocate_device(dev); Also please drop "input->dev.parent = dev;" below. > if (!input) > return -ENOMEM; > > @@ -1146,11 +1145,8 @@ static int mxs_lradc_ts_register(struct mxs_lradc *lradc) > > lradc->ts_input = input; > input_set_drvdata(input, lradc); > - ret = input_register_device(input); > - if (ret) > - input_free_device(lradc->ts_input); > > - return ret; > + return input_register_device(input); > } > > static void mxs_lradc_ts_unregister(struct mxs_lradc *lradc) > @@ -1159,7 +1155,6 @@ static void mxs_lradc_ts_unregister(struct mxs_lradc *lradc) > return; > > mxs_lradc_disable_ts(lradc); I do not think this is needed, since mxs_lradc_ts_close() does this for us (and it will be called automatically if input device is open at unregistration time), and if you remove this you can remove mxs_lradc_ts_unregister() altogether. > - input_unregister_device(lradc->ts_input); > } > > /* > -- > 1.7.9.5 > Thanks. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html