mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 18:41:58 +09:00
iio: adc: qcom-spmi-adc5: Fix the channel name
commit701c875adeupstream. The node name can contain an address part which is unused by the driver. Moreover, this string is propagated into the userspace label, sysfs filenames *and breaking ABI*. Cut the address part out before assigning the channel name. Fixes:4f47a236a2("iio: adc: qcom-spmi-adc5: convert to device properties") Reported-by: Marijn Suijten <marijn.suijten@somainline.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org> Link: https://lore.kernel.org/r/20230118100623.42255-1-andriy.shevchenko@linux.intel.com Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a876adf4ad
commit
a09eb53a18
@@ -626,12 +626,20 @@ static int adc5_get_fw_channel_data(struct adc5_chip *adc,
|
||||
struct fwnode_handle *fwnode,
|
||||
const struct adc5_data *data)
|
||||
{
|
||||
const char *name = fwnode_get_name(fwnode), *channel_name;
|
||||
const char *channel_name;
|
||||
char *name;
|
||||
u32 chan, value, varr[2];
|
||||
u32 sid = 0;
|
||||
int ret;
|
||||
struct device *dev = adc->dev;
|
||||
|
||||
name = devm_kasprintf(dev, GFP_KERNEL, "%pfwP", fwnode);
|
||||
if (!name)
|
||||
return -ENOMEM;
|
||||
|
||||
/* Cut the address part */
|
||||
name[strchrnul(name, '@') - name] = '\0';
|
||||
|
||||
ret = fwnode_property_read_u32(fwnode, "reg", &chan);
|
||||
if (ret) {
|
||||
dev_err(dev, "invalid channel number %s\n", name);
|
||||
|
||||
Reference in New Issue
Block a user