From 35157f443b6f4537b03ea1752bd96fbb28ec7a4f Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sun, 23 May 2021 19:01:00 +0200 Subject: [PATCH] iio: accel: bmc150: Remove bmc150_set/get_second_device() accessor functions Now that the definition of the bmc150_accel_data struct is no longer private to bmc150-accel-core.c, bmc150-accel-i2c.c can simply directly access the second_dev member and the accessor functions are no longer necessary. Note if the i2c_acpi_new_device() for the second-client now fails, an ERR_PTR gets stored in data->second_dev this is fine since it is only ever passed to i2c_unregister_device() which has an IS_ERR_OR_NULL() check. Signed-off-by: Hans de Goede Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20210523170103.176958-7-hdegoede@redhat.com Signed-off-by: Jonathan Cameron --- drivers/iio/accel/bmc150-accel-core.c | 16 ---------------- drivers/iio/accel/bmc150-accel-i2c.c | 10 ++++------ drivers/iio/accel/bmc150-accel.h | 2 -- 3 files changed, 4 insertions(+), 24 deletions(-) diff --git a/drivers/iio/accel/bmc150-accel-core.c b/drivers/iio/accel/bmc150-accel-core.c index d90874fc3ca0..ee9ceb7d222e 100644 --- a/drivers/iio/accel/bmc150-accel-core.c +++ b/drivers/iio/accel/bmc150-accel-core.c @@ -1750,22 +1750,6 @@ err_disable_regulators: } EXPORT_SYMBOL_GPL(bmc150_accel_core_probe); -struct i2c_client *bmc150_get_second_device(struct i2c_client *client) -{ - struct bmc150_accel_data *data = iio_priv(i2c_get_clientdata(client)); - - return data->second_device; -} -EXPORT_SYMBOL_GPL(bmc150_get_second_device); - -void bmc150_set_second_device(struct i2c_client *client, struct i2c_client *second_dev) -{ - struct bmc150_accel_data *data = iio_priv(i2c_get_clientdata(client)); - - data->second_device = second_dev; -} -EXPORT_SYMBOL_GPL(bmc150_set_second_device); - int bmc150_accel_core_remove(struct device *dev) { struct iio_dev *indio_dev = dev_get_drvdata(dev); diff --git a/drivers/iio/accel/bmc150-accel-i2c.c b/drivers/iio/accel/bmc150-accel-i2c.c index 41b4c9e22d60..ab0cda8ff8fa 100644 --- a/drivers/iio/accel/bmc150-accel-i2c.c +++ b/drivers/iio/accel/bmc150-accel-i2c.c @@ -35,8 +35,8 @@ static const struct acpi_device_id bmc150_acpi_dual_accel_ids[] = { */ static void bmc150_acpi_dual_accel_probe(struct i2c_client *client) { + struct bmc150_accel_data *data = iio_priv(i2c_get_clientdata(client)); struct acpi_device *adev = ACPI_COMPANION(&client->dev); - struct i2c_client *second_dev; char dev_name[16]; struct i2c_board_info board_info = { .type = "bmc150_accel", @@ -55,16 +55,14 @@ static void bmc150_acpi_dual_accel_probe(struct i2c_client *client) board_info.irq = acpi_dev_gpio_irq_get(adev, 1); - second_dev = i2c_acpi_new_device(&client->dev, 1, &board_info); - if (!IS_ERR(second_dev)) - bmc150_set_second_device(client, second_dev); + data->second_device = i2c_acpi_new_device(&client->dev, 1, &board_info); } static void bmc150_acpi_dual_accel_remove(struct i2c_client *client) { - struct i2c_client *second_dev = bmc150_get_second_device(client); + struct bmc150_accel_data *data = iio_priv(i2c_get_clientdata(client)); - i2c_unregister_device(second_dev); + i2c_unregister_device(data->second_device); } #else static void bmc150_acpi_dual_accel_probe(struct i2c_client *client) {} diff --git a/drivers/iio/accel/bmc150-accel.h b/drivers/iio/accel/bmc150-accel.h index f503c5b5801e..5da6fd32bac5 100644 --- a/drivers/iio/accel/bmc150-accel.h +++ b/drivers/iio/accel/bmc150-accel.h @@ -78,8 +78,6 @@ enum { int bmc150_accel_core_probe(struct device *dev, struct regmap *regmap, int irq, const char *name, bool block_supported); int bmc150_accel_core_remove(struct device *dev); -struct i2c_client *bmc150_get_second_device(struct i2c_client *second_device); -void bmc150_set_second_device(struct i2c_client *client, struct i2c_client *second_dev); extern const struct dev_pm_ops bmc150_accel_pm_ops; extern const struct regmap_config bmc150_regmap_conf;