aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iio
diff options
context:
space:
mode:
authorVarka Bhadram <varkabhadram@gmail.com>2015-01-21 22:38:04 -0500
committerJonathan Cameron <jic23@kernel.org>2015-01-27 13:49:58 -0500
commit76cd2e71780b5b5dfd6d0cffef8301b664d4fcf0 (patch)
treee29c24dc6eef0d4197278da3cd91e45b194690fa /drivers/iio
parenteec06b8c532588fb114fcbd9724f3c9fbdfe10c9 (diff)
imu: inv_mpu6050: cleanup on error check
Signed-off-by: Varka Bhadram <varkab@cdac.in> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio')
-rw-r--r--drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c b/drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c
index ab8c85a2a5f8..844610c3a3a9 100644
--- a/drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c
+++ b/drivers/iio/imu/inv_mpu6050/inv_mpu_trigger.c
@@ -120,29 +120,28 @@ int inv_mpu6050_probe_trigger(struct iio_dev *indio_dev)
120 "%s-dev%d", 120 "%s-dev%d",
121 indio_dev->name, 121 indio_dev->name,
122 indio_dev->id); 122 indio_dev->id);
123 if (st->trig == NULL) { 123 if (!st->trig)
124 ret = -ENOMEM; 124 return -ENOMEM;
125 goto error_ret; 125
126 }
127 ret = devm_request_irq(&indio_dev->dev, st->client->irq, 126 ret = devm_request_irq(&indio_dev->dev, st->client->irq,
128 &iio_trigger_generic_data_rdy_poll, 127 &iio_trigger_generic_data_rdy_poll,
129 IRQF_TRIGGER_RISING, 128 IRQF_TRIGGER_RISING,
130 "inv_mpu", 129 "inv_mpu",
131 st->trig); 130 st->trig);
132 if (ret) 131 if (ret)
133 goto error_ret; 132 return ret;
133
134 st->trig->dev.parent = &st->client->dev; 134 st->trig->dev.parent = &st->client->dev;
135 st->trig->ops = &inv_mpu_trigger_ops; 135 st->trig->ops = &inv_mpu_trigger_ops;
136 iio_trigger_set_drvdata(st->trig, indio_dev); 136 iio_trigger_set_drvdata(st->trig, indio_dev);
137
137 ret = iio_trigger_register(st->trig); 138 ret = iio_trigger_register(st->trig);
138 if (ret) 139 if (ret)
139 goto error_ret; 140 return ret;
141
140 indio_dev->trig = iio_trigger_get(st->trig); 142 indio_dev->trig = iio_trigger_get(st->trig);
141 143
142 return 0; 144 return 0;
143
144error_ret:
145 return ret;
146} 145}
147 146
148void inv_mpu6050_remove_trigger(struct inv_mpu6050_state *st) 147void inv_mpu6050_remove_trigger(struct inv_mpu6050_state *st)