Re: [PATCH v2 1/6] hwmon: (sht3x) remove sht3x_platform_data

From: Guenter Roeck
Date: Sat Jun 17 2023 - 11:50:48 EST


On Sat, Jun 17, 2023 at 12:00:12AM +0800, JuenKit Yip wrote:
> Since no in-tree driver supports it, sht3x_platform_data has been
> removed and the relevant properties have been moved to sht3x_data.
>
> Signed-off-by: JuenKit Yip <JuenKit_Yip@xxxxxxxxxxx>

Applied to hwmon-next.

Thanks,
Guenter

> ---
> Documentation/hwmon/sht3x.rst | 2 +-
> drivers/hwmon/sht3x.c | 20 ++++++++------------
> include/linux/platform_data/sht3x.h | 15 ---------------
> 3 files changed, 9 insertions(+), 28 deletions(-)
> delete mode 100644 include/linux/platform_data/sht3x.h
>
> diff --git a/Documentation/hwmon/sht3x.rst b/Documentation/hwmon/sht3x.rst
> index 95a850d5b..31fd36b14 100644
> --- a/Documentation/hwmon/sht3x.rst
> +++ b/Documentation/hwmon/sht3x.rst
> @@ -28,7 +28,7 @@ The device communicates with the I2C protocol. Sensors can have the I2C
> addresses 0x44 or 0x45, depending on the wiring. See
> Documentation/i2c/instantiating-devices.rst for methods to instantiate the device.
>
> -There are two options configurable by means of sht3x_platform_data:
> +There are two options configurable by means of sht3x_data:
>
> 1. blocking (pull the I2C clock line down while performing the measurement) or
> non-blocking mode. Blocking mode will guarantee the fastest result but
> diff --git a/drivers/hwmon/sht3x.c b/drivers/hwmon/sht3x.c
> index 8305e44d9..580704d93 100644
> --- a/drivers/hwmon/sht3x.c
> +++ b/drivers/hwmon/sht3x.c
> @@ -20,7 +20,6 @@
> #include <linux/module.h>
> #include <linux/slab.h>
> #include <linux/jiffies.h>
> -#include <linux/platform_data/sht3x.h>
>
> /* commands (high precision mode) */
> static const unsigned char sht3x_cmd_measure_blocking_hpm[] = { 0x2c, 0x06 };
> @@ -135,8 +134,8 @@ struct sht3x_data {
> const unsigned char *command;
> u32 wait_time; /* in us*/
> unsigned long last_update; /* last update in periodic mode*/
> -
> - struct sht3x_platform_data setup;
> + bool blocking_io;
> + bool high_precision;
>
> /*
> * cached values for temperature and humidity and limits
> @@ -441,13 +440,13 @@ static void sht3x_select_command(struct sht3x_data *data)
> if (data->mode > 0) {
> data->command = sht3x_cmd_measure_periodic_mode;
> data->wait_time = 0;
> - } else if (data->setup.blocking_io) {
> - data->command = data->setup.high_precision ?
> + } else if (data->blocking_io) {
> + data->command = data->high_precision ?
> sht3x_cmd_measure_blocking_hpm :
> sht3x_cmd_measure_blocking_lpm;
> data->wait_time = 0;
> } else {
> - if (data->setup.high_precision) {
> + if (data->high_precision) {
> data->command = sht3x_cmd_measure_nonblocking_hpm;
> data->wait_time = SHT3X_NONBLOCKING_WAIT_TIME_HPM;
> } else {
> @@ -595,7 +594,7 @@ static ssize_t update_interval_store(struct device *dev,
> }
>
> if (mode > 0) {
> - if (data->setup.high_precision)
> + if (data->high_precision)
> command = periodic_measure_commands_hpm[mode - 1];
> else
> command = periodic_measure_commands_lpm[mode - 1];
> @@ -690,16 +689,13 @@ static int sht3x_probe(struct i2c_client *client)
> if (!data)
> return -ENOMEM;
>
> - data->setup.blocking_io = false;
> - data->setup.high_precision = true;
> + data->blocking_io = false;
> + data->high_precision = true;
> data->mode = 0;
> data->last_update = jiffies - msecs_to_jiffies(3000);
> data->client = client;
> crc8_populate_msb(sht3x_crc8_table, SHT3X_CRC8_POLYNOMIAL);
>
> - if (client->dev.platform_data)
> - data->setup = *(struct sht3x_platform_data *)dev->platform_data;
> -
> sht3x_select_command(data);
>
> mutex_init(&data->i2c_lock);
> diff --git a/include/linux/platform_data/sht3x.h b/include/linux/platform_data/sht3x.h
> deleted file mode 100644
> index 14680d2a9..000000000
> --- a/include/linux/platform_data/sht3x.h
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0-or-later */
> -/*
> - * Copyright (C) 2016 Sensirion AG, Switzerland
> - * Author: David Frey <david.frey@xxxxxxxxxxxxx>
> - * Author: Pascal Sachs <pascal.sachs@xxxxxxxxxxxxx>
> - */
> -
> -#ifndef __SHT3X_H_
> -#define __SHT3X_H_
> -
> -struct sht3x_platform_data {
> - bool blocking_io;
> - bool high_precision;
> -};
> -#endif /* __SHT3X_H_ */