|
@@ -568,6 +568,8 @@ static const struct iio_trigger_ops st_press_trigger_ops = {
|
|
|
int st_press_common_probe(struct iio_dev *indio_dev)
|
|
|
{
|
|
|
struct st_sensor_data *press_data = iio_priv(indio_dev);
|
|
|
+ struct st_sensors_platform_data *pdata =
|
|
|
+ (struct st_sensors_platform_data *)press_data->dev->platform_data;
|
|
|
int irq = press_data->get_irq_data_ready(indio_dev);
|
|
|
int err;
|
|
|
|
|
@@ -603,10 +605,8 @@ int st_press_common_probe(struct iio_dev *indio_dev)
|
|
|
press_data->odr = press_data->sensor_settings->odr.odr_avl[0].hz;
|
|
|
|
|
|
/* Some devices don't support a data ready pin. */
|
|
|
- if (!press_data->dev->platform_data &&
|
|
|
- press_data->sensor_settings->drdy_irq.addr)
|
|
|
- press_data->dev->platform_data =
|
|
|
- (struct st_sensors_platform_data *)&default_press_pdata;
|
|
|
+ if (!pdata && press_data->sensor_settings->drdy_irq.addr)
|
|
|
+ pdata = (struct st_sensors_platform_data *)&default_press_pdata;
|
|
|
|
|
|
err = st_sensors_init_sensor(indio_dev, press_data->dev->platform_data);
|
|
|
if (err < 0)
|