iio:pressure:ms5611: use probed device name
authorGrégor Boirie <gregor.boirie@parrot.com>
Wed, 17 Feb 2016 17:52:50 +0000 (18:52 +0100)
committerJonathan Cameron <jic23@kernel.org>
Wed, 24 Feb 2016 20:40:46 +0000 (20:40 +0000)
Use name of probed device instead of driver's one when registering device.

Signed-off-by: Gregor Boirie <gregor.boirie@parrot.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/pressure/ms5611.h
drivers/iio/pressure/ms5611_core.c
drivers/iio/pressure/ms5611_i2c.c
drivers/iio/pressure/ms5611_spi.c

index 2d70dd6e14b04d36d9d80d3c7269d685a4620afc..8b08e4b7e3a9b4778590b89fd33ce1961de7a61a 100644 (file)
@@ -51,7 +51,8 @@ struct ms5611_state {
        struct ms5611_chip_info *chip_info;
 };
 
-int ms5611_probe(struct iio_dev *indio_dev, struct device *dev, int type);
+int ms5611_probe(struct iio_dev *indio_dev, struct device *dev,
+                 const char* name, int type);
 int ms5611_remove(struct iio_dev *indio_dev);
 
 #endif /* _MS5611_H */
index 84ab8d234a7f027e22e3749dd8d19d61477e6564..acd8e37195bc6f07496590d8740aaed57101aeb9 100644 (file)
@@ -298,7 +298,8 @@ static int ms5611_init(struct iio_dev *indio_dev)
        return ms5611_read_prom(indio_dev);
 }
 
-int ms5611_probe(struct iio_dev *indio_dev, struct device *dev, int type)
+int ms5611_probe(struct iio_dev *indio_dev, struct device *dev,
+                 const char *name, int type)
 {
        int ret;
        struct ms5611_state *st = iio_priv(indio_dev);
@@ -306,7 +307,7 @@ int ms5611_probe(struct iio_dev *indio_dev, struct device *dev, int type)
        mutex_init(&st->lock);
        st->chip_info = &chip_info_tbl[type];
        indio_dev->dev.parent = dev;
-       indio_dev->name = dev->driver->name;
+       indio_dev->name = name;
        indio_dev->info = &ms5611_info;
        indio_dev->channels = ms5611_channels;
        indio_dev->num_channels = ARRAY_SIZE(ms5611_channels);
index 42706a89c6eebe267cb8ef3f5966afc24d0e6c24..ae6753941fab5b95ab44e93d5357088872947b74 100644 (file)
@@ -105,7 +105,7 @@ static int ms5611_i2c_probe(struct i2c_client *client,
        st->read_adc_temp_and_pressure = ms5611_i2c_read_adc_temp_and_pressure;
        st->client = client;
 
-       return ms5611_probe(indio_dev, &client->dev, id->driver_data);
+       return ms5611_probe(indio_dev, &client->dev, id->name, id->driver_data);
 }
 
 static int ms5611_i2c_remove(struct i2c_client *client)
index c4bf4e8f7c5c8dbb4efaf20b89322662c996d359..5cc009e85f0e680d5e2614cf38f814f4df308506 100644 (file)
@@ -105,8 +105,8 @@ static int ms5611_spi_probe(struct spi_device *spi)
        st->read_adc_temp_and_pressure = ms5611_spi_read_adc_temp_and_pressure;
        st->client = spi;
 
-       return ms5611_probe(indio_dev, &spi->dev,
-                           spi_get_device_id(spi)->driver_data);
+       return ms5611_probe(indio_dev, &spi->dev, spi_get_device_id(spi)->name,
+                           spi_get_device_id(spi)->driver_data);
 }
 
 static int ms5611_spi_remove(struct spi_device *spi)