aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iio
diff options
context:
space:
mode:
authorStefan Wahren <stefan.wahren@i2se.com>2016-04-23 15:57:57 -0400
committerJonathan Cameron <jic23@kernel.org>2016-05-04 05:44:26 -0400
commita91e0b6de468cc4413d8ca260ed4ed0366dfb5b7 (patch)
tree99a0940527c701e9fd88d210fd7fc7abff388fa5 /drivers/iio
parent32133be6768257726b57094f673415418cb3dc48 (diff)
iio: mxs-lradc: simplify TS registration
This patch simplifies the TS registration of mxs-lradc by using devm_input_allocate_device. Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> Reviewed-by: Marek Vasut <marex@denx.de> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio')
-rw-r--r--drivers/iio/adc/mxs-lradc.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/iio/adc/mxs-lradc.c b/drivers/iio/adc/mxs-lradc.c
index ad26da1edbee..3d1d3706bf9b 100644
--- a/drivers/iio/adc/mxs-lradc.c
+++ b/drivers/iio/adc/mxs-lradc.c
@@ -1120,18 +1120,16 @@ static int mxs_lradc_ts_register(struct mxs_lradc *lradc)
1120{ 1120{
1121 struct input_dev *input; 1121 struct input_dev *input;
1122 struct device *dev = lradc->dev; 1122 struct device *dev = lradc->dev;
1123 int ret;
1124 1123
1125 if (!lradc->use_touchscreen) 1124 if (!lradc->use_touchscreen)
1126 return 0; 1125 return 0;
1127 1126
1128 input = input_allocate_device(); 1127 input = devm_input_allocate_device(dev);
1129 if (!input) 1128 if (!input)
1130 return -ENOMEM; 1129 return -ENOMEM;
1131 1130
1132 input->name = DRIVER_NAME; 1131 input->name = DRIVER_NAME;
1133 input->id.bustype = BUS_HOST; 1132 input->id.bustype = BUS_HOST;
1134 input->dev.parent = dev;
1135 input->open = mxs_lradc_ts_open; 1133 input->open = mxs_lradc_ts_open;
1136 input->close = mxs_lradc_ts_close; 1134 input->close = mxs_lradc_ts_close;
1137 1135
@@ -1146,11 +1144,8 @@ static int mxs_lradc_ts_register(struct mxs_lradc *lradc)
1146 1144
1147 lradc->ts_input = input; 1145 lradc->ts_input = input;
1148 input_set_drvdata(input, lradc); 1146 input_set_drvdata(input, lradc);
1149 ret = input_register_device(input);
1150 if (ret)
1151 input_free_device(lradc->ts_input);
1152 1147
1153 return ret; 1148 return input_register_device(input);
1154} 1149}
1155 1150
1156static void mxs_lradc_ts_unregister(struct mxs_lradc *lradc) 1151static void mxs_lradc_ts_unregister(struct mxs_lradc *lradc)
@@ -1159,7 +1154,6 @@ static void mxs_lradc_ts_unregister(struct mxs_lradc *lradc)
1159 return; 1154 return;
1160 1155
1161 mxs_lradc_disable_ts(lradc); 1156 mxs_lradc_disable_ts(lradc);
1162 input_unregister_device(lradc->ts_input);
1163} 1157}
1164 1158
1165/* 1159/*