diff options
| -rw-r--r-- | drivers/hwmon/ads7871.c | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/drivers/hwmon/ads7871.c b/drivers/hwmon/ads7871.c index b300a2048af1..52319340e182 100644 --- a/drivers/hwmon/ads7871.c +++ b/drivers/hwmon/ads7871.c | |||
| @@ -160,30 +160,12 @@ static const struct attribute_group ads7871_group = { | |||
| 160 | 160 | ||
| 161 | static int __devinit ads7871_probe(struct spi_device *spi) | 161 | static int __devinit ads7871_probe(struct spi_device *spi) |
| 162 | { | 162 | { |
| 163 | int status, ret, err = 0; | 163 | int ret, err; |
| 164 | uint8_t val; | 164 | uint8_t val; |
| 165 | struct ads7871_data *pdata; | 165 | struct ads7871_data *pdata; |
| 166 | 166 | ||
| 167 | dev_dbg(&spi->dev, "probe\n"); | 167 | dev_dbg(&spi->dev, "probe\n"); |
| 168 | 168 | ||
| 169 | pdata = kzalloc(sizeof(struct ads7871_data), GFP_KERNEL); | ||
| 170 | if (!pdata) { | ||
| 171 | err = -ENOMEM; | ||
| 172 | goto exit; | ||
| 173 | } | ||
| 174 | |||
| 175 | status = sysfs_create_group(&spi->dev.kobj, &ads7871_group); | ||
| 176 | if (status < 0) | ||
| 177 | goto error_free; | ||
| 178 | |||
| 179 | pdata->hwmon_dev = hwmon_device_register(&spi->dev); | ||
| 180 | if (IS_ERR(pdata->hwmon_dev)) { | ||
| 181 | err = PTR_ERR(pdata->hwmon_dev); | ||
| 182 | goto error_remove; | ||
| 183 | } | ||
| 184 | |||
| 185 | spi_set_drvdata(spi, pdata); | ||
| 186 | |||
| 187 | /* Configure the SPI bus */ | 169 | /* Configure the SPI bus */ |
| 188 | spi->mode = (SPI_MODE_0); | 170 | spi->mode = (SPI_MODE_0); |
| 189 | spi->bits_per_word = 8; | 171 | spi->bits_per_word = 8; |
| @@ -201,6 +183,24 @@ static int __devinit ads7871_probe(struct spi_device *spi) | |||
| 201 | we need to make sure we really have a chip*/ | 183 | we need to make sure we really have a chip*/ |
| 202 | if (val != ret) { | 184 | if (val != ret) { |
| 203 | err = -ENODEV; | 185 | err = -ENODEV; |
| 186 | goto exit; | ||
| 187 | } | ||
| 188 | |||
| 189 | pdata = kzalloc(sizeof(struct ads7871_data), GFP_KERNEL); | ||
| 190 | if (!pdata) { | ||
| 191 | err = -ENOMEM; | ||
| 192 | goto exit; | ||
| 193 | } | ||
| 194 | |||
| 195 | err = sysfs_create_group(&spi->dev.kobj, &ads7871_group); | ||
| 196 | if (err < 0) | ||
| 197 | goto error_free; | ||
| 198 | |||
| 199 | spi_set_drvdata(spi, pdata); | ||
| 200 | |||
| 201 | pdata->hwmon_dev = hwmon_device_register(&spi->dev); | ||
| 202 | if (IS_ERR(pdata->hwmon_dev)) { | ||
| 203 | err = PTR_ERR(pdata->hwmon_dev); | ||
| 204 | goto error_remove; | 204 | goto error_remove; |
| 205 | } | 205 | } |
| 206 | 206 | ||
