Re: [PATCH 4/5] iio: mcp9600: Add support for thermocouple-type

From: David Lechner
Date: Sat Aug 16 2025 - 14:24:38 EST


On 8/15/25 11:46 AM, Ben Collins wrote:
> dt-bindings documentation for this driver claims to support
> thermocouple-type, but the driver does not actually make use of
> the property.
>
> Implement usage of the property to configure the chip for the
> selected thermocouple-type.
>
> Signed-off-by: Ben Collins <bcollins@xxxxxxxxxx>
> ---

...

> @@ -453,6 +504,24 @@ static int mcp9600_probe(struct i2c_client *client)
> data = iio_priv(indio_dev);
> data->client = client;
>
> + /* Accept type from dt with default of Type-K. */

We still also need a dt-bindings patch to specify the default there as well.

> + data->thermocouple_type = THERMOCOUPLE_TYPE_K;
> + ret = device_property_read_u32(&client->dev, "thermocouple-type",
> + &data->thermocouple_type);
> + if (ret < 0 && ret != -EINVAL)
> + return dev_err_probe(&client->dev, ret,
> + "Error reading thermocouple-type property\n");
> +
> + if (data->thermocouple_type >= ARRAY_SIZE(mcp9600_type_map))
> + return dev_err_probe(&client->dev, -EINVAL,
> + "Invalid thermocouple-type property %u.\n",
> + data->thermocouple_type);
> +
> + /* Set initial config. */
> + ret = mcp9600_config(data);
> + if (ret < 0)
> + return ret;
> +
> ch_sel = mcp9600_probe_alerts(indio_dev);
> if (ch_sel < 0)
> return ch_sel;