Commit e93cde03 authored by Marijn Suijten's avatar Marijn Suijten Committed by Jonathan Cameron
Browse files

iio: adc: qcom-spmi-adc5: Use driver datasheet_name instead of DT label



iio_chan_spec::datasheet_name expects a channel/pin name on the hardware
part, i.e. from its datasheet, instead of a friendly name from DT which
typically describes the use of said channel.  GPIO channels are commonly
specialized in QCOM board DTS based on what a - typically thermistor -
is connected to.

Also rename adc5_channel_prop::datasheet_name to channel_name to that
effect.

Signed-off-by: default avatarMarijn Suijten <marijn.suijten@somainline.org>
Reviewed-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20230502-iio-adc-propagate-fw-node-label-v3-2-6be5db6e6b5a@somainline.org


Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 123627ad
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -114,7 +114,7 @@ enum adc5_cal_val {
 *	that is an average of multiple measurements.
 *	that is an average of multiple measurements.
 * @scale_fn_type: Represents the scaling function to convert voltage
 * @scale_fn_type: Represents the scaling function to convert voltage
 *	physical units desired by the client for the channel.
 *	physical units desired by the client for the channel.
 * @datasheet_name: Channel name used in device tree.
 * @channel_name: Channel name used in device tree.
 */
 */
struct adc5_channel_prop {
struct adc5_channel_prop {
	unsigned int		channel;
	unsigned int		channel;
@@ -126,7 +126,7 @@ struct adc5_channel_prop {
	unsigned int		hw_settle_time;
	unsigned int		hw_settle_time;
	unsigned int		avg_samples;
	unsigned int		avg_samples;
	enum vadc_scale_fn_type	scale_fn_type;
	enum vadc_scale_fn_type	scale_fn_type;
	const char		*datasheet_name;
	const char		*channel_name;
};
};


/**
/**
@@ -671,7 +671,7 @@ static int adc5_get_fw_channel_data(struct adc5_chip *adc,
	if (ret)
	if (ret)
		channel_name = name;
		channel_name = name;


	prop->datasheet_name = channel_name;
	prop->channel_name = channel_name;


	ret = fwnode_property_read_u32(fwnode, "qcom,decimation", &value);
	ret = fwnode_property_read_u32(fwnode, "qcom,decimation", &value);
	if (!ret) {
	if (!ret) {
@@ -861,8 +861,8 @@ static int adc5_get_fw_data(struct adc5_chip *adc)
		adc_chan = &adc->data->adc_chans[prop.channel];
		adc_chan = &adc->data->adc_chans[prop.channel];


		iio_chan->channel = prop.channel;
		iio_chan->channel = prop.channel;
		iio_chan->datasheet_name = prop.datasheet_name;
		iio_chan->datasheet_name = adc_chan->datasheet_name;
		iio_chan->extend_name = prop.datasheet_name;
		iio_chan->extend_name = prop.channel_name;
		iio_chan->info_mask_separate = adc_chan->info_mask;
		iio_chan->info_mask_separate = adc_chan->info_mask;
		iio_chan->type = adc_chan->type;
		iio_chan->type = adc_chan->type;
		iio_chan->address = index;
		iio_chan->address = index;