The AT91 ADC driver no longer uses the 'at91_add_device_adc' platform data
type. This is no longer used (at least in mainline drivers).

This change removes the platform-data initialization from the driver, since
it is mostly dead code now.

Some definitions [from the platform data at91_adc.h include] have been to
be moved in the driver, since they are needed in the driver.

Signed-off-by: Alexandru Ardelean <alexandru.ardel...@analog.com>
---
 drivers/iio/adc/at91_adc.c             | 51 ++++++++++----------------
 include/linux/platform_data/at91_adc.h | 49 -------------------------
 2 files changed, 20 insertions(+), 80 deletions(-)
 delete mode 100644 include/linux/platform_data/at91_adc.h

diff --git a/drivers/iio/adc/at91_adc.c b/drivers/iio/adc/at91_adc.c
index 473bffe84fbd..d0e56b1b5949 100644
--- a/drivers/iio/adc/at91_adc.c
+++ b/drivers/iio/adc/at91_adc.c
@@ -22,8 +22,6 @@
 #include <linux/slab.h>
 #include <linux/wait.h>
 
-#include <linux/platform_data/at91_adc.h>
-
 #include <linux/iio/iio.h>
 #include <linux/iio/buffer.h>
 #include <linux/iio/trigger.h>
@@ -153,6 +151,25 @@
 #define TOUCH_SHTIM                    0xa
 #define TOUCH_SCTIM_US         10              /* 10us for the Touchscreen 
Switches Closure Time */
 
+enum atmel_adc_ts_type {
+       ATMEL_ADC_TOUCHSCREEN_NONE = 0,
+       ATMEL_ADC_TOUCHSCREEN_4WIRE = 4,
+       ATMEL_ADC_TOUCHSCREEN_5WIRE = 5,
+};
+
+/**
+ * struct at91_adc_trigger - description of triggers
+ * @name:              name of the trigger advertised to the user
+ * @value:             value to set in the ADC's trigger setup register
+                       to enable the trigger
+ * @is_external:       Does the trigger rely on an external pin?
+ */
+struct at91_adc_trigger {
+       const char      *name;
+       u8              value;
+       bool            is_external;
+};
+
 /**
  * struct at91_adc_reg_desc - Various informations relative to registers
  * @channel_base:      Base offset for the channel data registers
@@ -957,30 +974,6 @@ static int at91_adc_probe_dt(struct iio_dev *idev,
        return ret;
 }
 
-static int at91_adc_probe_pdata(struct at91_adc_state *st,
-                               struct platform_device *pdev)
-{
-       struct at91_adc_data *pdata = pdev->dev.platform_data;
-
-       if (!pdata)
-               return -EINVAL;
-
-       st->caps = (struct at91_adc_caps *)
-                       platform_get_device_id(pdev)->driver_data;
-
-       st->use_external = pdata->use_external_triggers;
-       st->vref_mv = pdata->vref;
-       st->channels_mask = pdata->channels_used;
-       st->num_channels = st->caps->num_channels;
-       st->startup_time = pdata->startup_time;
-       st->trigger_number = pdata->trigger_number;
-       st->trigger_list = pdata->trigger_list;
-       st->registers = &st->caps->registers;
-       st->touchscreen_type = pdata->touchscreen_type;
-
-       return 0;
-}
-
 static const struct iio_info at91_adc_info = {
        .read_raw = &at91_adc_read_raw,
 };
@@ -1157,11 +1150,7 @@ static int at91_adc_probe(struct platform_device *pdev)
 
        st = iio_priv(idev);
 
-       if (pdev->dev.of_node)
-               ret = at91_adc_probe_dt(idev, pdev);
-       else
-               ret = at91_adc_probe_pdata(st, pdev);
-
+       ret = at91_adc_probe_dt(idev, pdev);
        if (ret) {
                dev_err(&pdev->dev, "No platform data available.\n");
                return -EINVAL;
diff --git a/include/linux/platform_data/at91_adc.h 
b/include/linux/platform_data/at91_adc.h
deleted file mode 100644
index f20eaeb827ce..000000000000
--- a/include/linux/platform_data/at91_adc.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * Copyright (C) 2011 Free Electrons
- */
-
-#ifndef _AT91_ADC_H_
-#define _AT91_ADC_H_
-
-enum atmel_adc_ts_type {
-       ATMEL_ADC_TOUCHSCREEN_NONE = 0,
-       ATMEL_ADC_TOUCHSCREEN_4WIRE = 4,
-       ATMEL_ADC_TOUCHSCREEN_5WIRE = 5,
-};
-
-/**
- * struct at91_adc_trigger - description of triggers
- * @name:              name of the trigger advertised to the user
- * @value:             value to set in the ADC's trigger setup register
-                       to enable the trigger
- * @is_external:       Does the trigger rely on an external pin?
- */
-struct at91_adc_trigger {
-       const char      *name;
-       u8              value;
-       bool            is_external;
-};
-
-/**
- * struct at91_adc_data - platform data for ADC driver
- * @channels_used:             channels in use on the board as a bitmask
- * @startup_time:              startup time of the ADC in microseconds
- * @trigger_list:              Triggers available in the ADC
- * @trigger_number:            Number of triggers available in the ADC
- * @use_external_triggers:     does the board has external triggers availables
- * @vref:                      Reference voltage for the ADC in millivolts
- * @touchscreen_type:          If a touchscreen is connected, its type (4 or 5 
wires)
- */
-struct at91_adc_data {
-       unsigned long                   channels_used;
-       u8                              startup_time;
-       struct at91_adc_trigger         *trigger_list;
-       u8                              trigger_number;
-       bool                            use_external_triggers;
-       u16                             vref;
-       enum atmel_adc_ts_type          touchscreen_type;
-};
-
-extern void __init at91_add_device_adc(struct at91_adc_data *data);
-#endif
-- 
2.17.1

Reply via email to