Re: [PATCH v3 1/9] iio: hid-sensors: drop redundant iio_dev argument
From: srinivas pandruvada
Date: Tue May 12 2026 - 08:48:42 EST
On Sat, 2026-05-09 at 15:40 +0530, Sanjay Chitroda wrote:
> From: Sanjay Chitroda <sanjayembeddedse@xxxxxxxxx>
>
> hid_sensor_remove_trigger() uses struct hid_sensor_common to release
> resources acquired during trigger setup.
>
> Earlier implementations required struct iio_dev to clean up buffers,
> but with the current code this argument is no longer used and is
> redundant.
>
> Adapt to hid_sensor_remove_trigger() API change across all HID IIO
> drivers to match updated prototype.
>
> Removing it simplifies the API and is a preparatory step toward
> converting the trigger handling to a devm-based API.
>
> Signed-off-by: Sanjay Chitroda <sanjayembeddedse@xxxxxxxxx>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx>
> ---
> drivers/iio/accel/hid-sensor-accel-3d.c | 4 ++--
> drivers/iio/common/hid-sensors/hid-sensor-trigger.c | 3 +--
> drivers/iio/common/hid-sensors/hid-sensor-trigger.h | 3 +--
> drivers/iio/gyro/hid-sensor-gyro-3d.c | 4 ++--
> drivers/iio/humidity/hid-sensor-humidity.c | 4 ++--
> drivers/iio/light/hid-sensor-als.c | 4 ++--
> drivers/iio/light/hid-sensor-prox.c | 4 ++--
> drivers/iio/magnetometer/hid-sensor-magn-3d.c | 4 ++--
> drivers/iio/orientation/hid-sensor-incl-3d.c | 4 ++--
> drivers/iio/orientation/hid-sensor-rotation.c | 4 ++--
> drivers/iio/position/hid-sensor-custom-intel-hinge.c | 4 ++--
> drivers/iio/pressure/hid-sensor-press.c | 4 ++--
> drivers/iio/temperature/hid-sensor-temperature.c | 4 ++--
> 13 files changed, 24 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/iio/accel/hid-sensor-accel-3d.c
> b/drivers/iio/accel/hid-sensor-accel-3d.c
> index 2ff591b3458f..a63dae90dadc 100644
> --- a/drivers/iio/accel/hid-sensor-accel-3d.c
> +++ b/drivers/iio/accel/hid-sensor-accel-3d.c
> @@ -416,7 +416,7 @@ static int hid_accel_3d_probe(struct
> platform_device *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &accel_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&accel_state->common_attributes);
> return ret;
> }
>
> @@ -429,7 +429,7 @@ static void hid_accel_3d_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev, hsdev->usage);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &accel_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&accel_state->common_attributes);
> }
>
> static const struct platform_device_id hid_accel_3d_ids[] = {
> diff --git a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> index 417c4ab8c1b2..28d050b45c74 100644
> --- a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> +++ b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> @@ -218,8 +218,7 @@ static const struct iio_buffer_setup_ops
> hid_sensor_buffer_ops = {
> .predisable = buffer_predisable,
> };
>
> -void hid_sensor_remove_trigger(struct iio_dev *indio_dev,
> - struct hid_sensor_common *attrb)
> +void hid_sensor_remove_trigger(struct hid_sensor_common *attrb)
> {
> if (atomic_read(&attrb->runtime_pm_enable))
> pm_runtime_disable(&attrb->pdev->dev);
> diff --git a/drivers/iio/common/hid-sensors/hid-sensor-trigger.h
> b/drivers/iio/common/hid-sensors/hid-sensor-trigger.h
> index f94fca4f1edf..afec46ecbe71 100644
> --- a/drivers/iio/common/hid-sensors/hid-sensor-trigger.h
> +++ b/drivers/iio/common/hid-sensors/hid-sensor-trigger.h
> @@ -16,8 +16,7 @@ extern const struct dev_pm_ops hid_sensor_pm_ops;
>
> int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char
> *name,
> struct hid_sensor_common *attrb);
> -void hid_sensor_remove_trigger(struct iio_dev *indio_dev,
> - struct hid_sensor_common *attrb);
> +void hid_sensor_remove_trigger(struct hid_sensor_common *attrb);
> int hid_sensor_power_state(struct hid_sensor_common *st, bool
> state);
>
> #endif
> diff --git a/drivers/iio/gyro/hid-sensor-gyro-3d.c
> b/drivers/iio/gyro/hid-sensor-gyro-3d.c
> index c340cc899a7c..fe663b19e902 100644
> --- a/drivers/iio/gyro/hid-sensor-gyro-3d.c
> +++ b/drivers/iio/gyro/hid-sensor-gyro-3d.c
> @@ -354,7 +354,7 @@ static int hid_gyro_3d_probe(struct
> platform_device *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &gyro_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&gyro_state->common_attributes);
> return ret;
> }
>
> @@ -367,7 +367,7 @@ static void hid_gyro_3d_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev, HID_USAGE_SENSOR_GYRO_3D);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &gyro_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&gyro_state->common_attributes);
> }
>
> static const struct platform_device_id hid_gyro_3d_ids[] = {
> diff --git a/drivers/iio/humidity/hid-sensor-humidity.c
> b/drivers/iio/humidity/hid-sensor-humidity.c
> index be2338d5f407..e580a2af9562 100644
> --- a/drivers/iio/humidity/hid-sensor-humidity.c
> +++ b/drivers/iio/humidity/hid-sensor-humidity.c
> @@ -255,7 +255,7 @@ static int hid_humidity_probe(struct
> platform_device *pdev)
> error_remove_callback:
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_HUMIDITY);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &humid_st-
> >common_attributes);
> + hid_sensor_remove_trigger(&humid_st->common_attributes);
> return ret;
> }
>
> @@ -268,7 +268,7 @@ static void hid_humidity_remove(struct
> platform_device *pdev)
>
> iio_device_unregister(indio_dev);
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_HUMIDITY);
> - hid_sensor_remove_trigger(indio_dev, &humid_st-
> >common_attributes);
> + hid_sensor_remove_trigger(&humid_st->common_attributes);
> }
>
> static const struct platform_device_id hid_humidity_ids[] = {
> diff --git a/drivers/iio/light/hid-sensor-als.c
> b/drivers/iio/light/hid-sensor-als.c
> index 384572844162..9b57cdced18a 100644
> --- a/drivers/iio/light/hid-sensor-als.c
> +++ b/drivers/iio/light/hid-sensor-als.c
> @@ -432,7 +432,7 @@ static int hid_als_probe(struct platform_device
> *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &als_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&als_state->common_attributes);
> return ret;
> }
>
> @@ -445,7 +445,7 @@ static void hid_als_remove(struct platform_device
> *pdev)
>
> sensor_hub_remove_callback(hsdev, hsdev->usage);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &als_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&als_state->common_attributes);
> }
>
> static const struct platform_device_id hid_als_ids[] = {
> diff --git a/drivers/iio/light/hid-sensor-prox.c
> b/drivers/iio/light/hid-sensor-prox.c
> index efa904a70d0e..473c45626487 100644
> --- a/drivers/iio/light/hid-sensor-prox.c
> +++ b/drivers/iio/light/hid-sensor-prox.c
> @@ -340,7 +340,7 @@ static int hid_prox_probe(struct platform_device
> *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &prox_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&prox_state->common_attributes);
> return ret;
> }
>
> @@ -353,7 +353,7 @@ static void hid_prox_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev, hsdev->usage);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &prox_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&prox_state->common_attributes);
> }
>
> static const struct platform_device_id hid_prox_ids[] = {
> diff --git a/drivers/iio/magnetometer/hid-sensor-magn-3d.c
> b/drivers/iio/magnetometer/hid-sensor-magn-3d.c
> index b01dd53eb100..8be3dfe4dd58 100644
> --- a/drivers/iio/magnetometer/hid-sensor-magn-3d.c
> +++ b/drivers/iio/magnetometer/hid-sensor-magn-3d.c
> @@ -542,7 +542,7 @@ static int hid_magn_3d_probe(struct
> platform_device *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &magn_state-
> >magn_flux_attributes);
> + hid_sensor_remove_trigger(&magn_state-
> >magn_flux_attributes);
> return ret;
> }
>
> @@ -555,7 +555,7 @@ static void hid_magn_3d_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_COMPASS_3D);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &magn_state-
> >magn_flux_attributes);
> + hid_sensor_remove_trigger(&magn_state-
> >magn_flux_attributes);
> }
>
> static const struct platform_device_id hid_magn_3d_ids[] = {
> diff --git a/drivers/iio/orientation/hid-sensor-incl-3d.c
> b/drivers/iio/orientation/hid-sensor-incl-3d.c
> index 4e23a598a3fb..56fd9c53dfc2 100644
> --- a/drivers/iio/orientation/hid-sensor-incl-3d.c
> +++ b/drivers/iio/orientation/hid-sensor-incl-3d.c
> @@ -378,7 +378,7 @@ static int hid_incl_3d_probe(struct
> platform_device *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &incl_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&incl_state->common_attributes);
> return ret;
> }
>
> @@ -391,7 +391,7 @@ static void hid_incl_3d_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_INCLINOMETER_3D);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &incl_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&incl_state->common_attributes);
> }
>
> static const struct platform_device_id hid_incl_3d_ids[] = {
> diff --git a/drivers/iio/orientation/hid-sensor-rotation.c
> b/drivers/iio/orientation/hid-sensor-rotation.c
> index 4a11e4555099..56fdb3412fe3 100644
> --- a/drivers/iio/orientation/hid-sensor-rotation.c
> +++ b/drivers/iio/orientation/hid-sensor-rotation.c
> @@ -353,7 +353,7 @@ static int hid_dev_rot_probe(struct
> platform_device *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &rot_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&rot_state->common_attributes);
> return ret;
> }
>
> @@ -366,7 +366,7 @@ static void hid_dev_rot_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev, hsdev->usage);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &rot_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&rot_state->common_attributes);
> }
>
> static const struct platform_device_id hid_dev_rot_ids[] = {
> diff --git a/drivers/iio/position/hid-sensor-custom-intel-hinge.c
> b/drivers/iio/position/hid-sensor-custom-intel-hinge.c
> index a26d391661fd..5288b63f4e21 100644
> --- a/drivers/iio/position/hid-sensor-custom-intel-hinge.c
> +++ b/drivers/iio/position/hid-sensor-custom-intel-hinge.c
> @@ -337,7 +337,7 @@ static int hid_hinge_probe(struct platform_device
> *pdev)
> error_remove_callback:
> sensor_hub_remove_callback(hsdev, hsdev->usage);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &st-
> >common_attributes);
> + hid_sensor_remove_trigger(&st->common_attributes);
> return ret;
> }
>
> @@ -350,7 +350,7 @@ static void hid_hinge_remove(struct
> platform_device *pdev)
>
> iio_device_unregister(indio_dev);
> sensor_hub_remove_callback(hsdev, hsdev->usage);
> - hid_sensor_remove_trigger(indio_dev, &st-
> >common_attributes);
> + hid_sensor_remove_trigger(&st->common_attributes);
> }
>
> static const struct platform_device_id hid_hinge_ids[] = {
> diff --git a/drivers/iio/pressure/hid-sensor-press.c
> b/drivers/iio/pressure/hid-sensor-press.c
> index 5f1d6abda3e4..2bf5d055e175 100644
> --- a/drivers/iio/pressure/hid-sensor-press.c
> +++ b/drivers/iio/pressure/hid-sensor-press.c
> @@ -319,7 +319,7 @@ static int hid_press_probe(struct platform_device
> *pdev)
> error_iio_unreg:
> iio_device_unregister(indio_dev);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &press_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&press_state->common_attributes);
> return ret;
> }
>
> @@ -332,7 +332,7 @@ static void hid_press_remove(struct
> platform_device *pdev)
>
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_PRESSURE);
> iio_device_unregister(indio_dev);
> - hid_sensor_remove_trigger(indio_dev, &press_state-
> >common_attributes);
> + hid_sensor_remove_trigger(&press_state->common_attributes);
> }
>
> static const struct platform_device_id hid_press_ids[] = {
> diff --git a/drivers/iio/temperature/hid-sensor-temperature.c
> b/drivers/iio/temperature/hid-sensor-temperature.c
> index 9f628a8e5cfb..60d4fcc8043b 100644
> --- a/drivers/iio/temperature/hid-sensor-temperature.c
> +++ b/drivers/iio/temperature/hid-sensor-temperature.c
> @@ -253,7 +253,7 @@ static int hid_temperature_probe(struct
> platform_device *pdev)
> error_remove_callback:
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_TEMPERATURE);
> error_remove_trigger:
> - hid_sensor_remove_trigger(indio_dev, &temp_st-
> >common_attributes);
> + hid_sensor_remove_trigger(&temp_st->common_attributes);
> return ret;
> }
>
> @@ -265,7 +265,7 @@ static void hid_temperature_remove(struct
> platform_device *pdev)
> struct temperature_state *temp_st = iio_priv(indio_dev);
>
> sensor_hub_remove_callback(hsdev,
> HID_USAGE_SENSOR_TEMPERATURE);
> - hid_sensor_remove_trigger(indio_dev, &temp_st-
> >common_attributes);
> + hid_sensor_remove_trigger(&temp_st->common_attributes);
> }
>
> static const struct platform_device_id hid_temperature_ids[] = {