aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iio/adc/vf610_adc.c
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2022-05-31 17:23:53 +0300
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2022-06-14 11:53:08 +0100
commit3cc6a67b73fdf2bb42f52aff7efe0f73496527a3 (patch)
tree8ec8bd14223310e3fb2214ffcb173baa6887add8 /drivers/iio/adc/vf610_adc.c
parentiio: dac: ad5592r: Get rid of OF specifics (diff)
downloadlinux-dev-3cc6a67b73fdf2bb42f52aff7efe0f73496527a3.tar.xz
linux-dev-3cc6a67b73fdf2bb42f52aff7efe0f73496527a3.zip
iio: adc: vf610_adc: Make use of device properties
Convert the module to be property provider agnostic and allow it to be used on non-OF platforms. Add mod_devicetable.h include. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20220531142353.64925-1-andriy.shevchenko@linux.intel.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'drivers/iio/adc/vf610_adc.c')
-rw-r--r--drivers/iio/adc/vf610_adc.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/drivers/iio/adc/vf610_adc.c b/drivers/iio/adc/vf610_adc.c
index c84293efc129..c6b16cf6e367 100644
--- a/drivers/iio/adc/vf610_adc.c
+++ b/drivers/iio/adc/vf610_adc.c
@@ -5,7 +5,9 @@
* Copyright 2013 Freescale Semiconductor, Inc.
*/
+#include <linux/mod_devicetable.h>
#include <linux/module.h>
+#include <linux/property.h>
#include <linux/platform_device.h>
#include <linux/interrupt.h>
#include <linux/delay.h>
@@ -14,10 +16,7 @@
#include <linux/io.h>
#include <linux/clk.h>
#include <linux/completion.h>
-#include <linux/of.h>
-#include <linux/of_irq.h>
#include <linux/regulator/consumer.h>
-#include <linux/of_platform.h>
#include <linux/err.h>
#include <linux/iio/iio.h>
@@ -799,6 +798,7 @@ MODULE_DEVICE_TABLE(of, vf610_adc_match);
static int vf610_adc_probe(struct platform_device *pdev)
{
+ struct device *dev = &pdev->dev;
struct vf610_adc *info;
struct iio_dev *indio_dev;
int irq;
@@ -846,13 +846,10 @@ static int vf610_adc_probe(struct platform_device *pdev)
info->vref_uv = regulator_get_voltage(info->vref);
- of_property_read_u32_array(pdev->dev.of_node, "fsl,adck-max-frequency",
- info->max_adck_rate, 3);
+ device_property_read_u32_array(dev, "fsl,adck-max-frequency", info->max_adck_rate, 3);
- ret = of_property_read_u32(pdev->dev.of_node, "min-sample-time",
- &info->adc_feature.default_sample_time);
- if (ret)
- info->adc_feature.default_sample_time = DEFAULT_SAMPLE_TIME;
+ info->adc_feature.default_sample_time = DEFAULT_SAMPLE_TIME;
+ device_property_read_u32(dev, "min-sample-time", &info->adc_feature.default_sample_time);
platform_set_drvdata(pdev, indio_dev);