From: Jonathan Cameron <jic23@kernel.org>
To: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>,
Peter Meerwald-Stadler <pmeerw@pmeerw.net>,
Nicolas Ferre <nicolas.ferre@microchip.com>,
Ludovic Desroches <ludovic.desroches@microchip.com>,
linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 01/11] iio: adc: at91_adc: remove platform data
Date: Sat, 28 Nov 2020 14:04:27 +0000 [thread overview]
Message-ID: <20201128140427.61dbaceb@archlinux> (raw)
In-Reply-To: <20201117140656.1235055-2-alexandre.belloni@bootlin.com>
On Tue, 17 Nov 2020 15:06:46 +0100
Alexandre Belloni <alexandre.belloni@bootlin.com> wrote:
> The at91 platforms have been DT only for a while, remove platform data.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Reviewed-by: Ludovic Desroches <ludovic.desroches@microchip.com>
Hi Alexandre,
I'd completely forgotten that we actually had a similar patch that
is already applied from Alexandru back in September.
Given vast majority matched, I've just changed your patch into one
that drops the id_table (which Alexandru didn't do).
So with that tweak applied to the togreg branch of iio.git.
Thanks,
Jonathan
> ---
> drivers/iio/adc/at91_adc.c | 80 +++++++-------------------
> include/linux/platform_data/at91_adc.h | 49 ----------------
> 2 files changed, 22 insertions(+), 107 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 9b2c548fae95..62bd35af8b13 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
> @@ -875,9 +892,6 @@ static int at91_adc_probe_dt(struct iio_dev *idev,
> int i = 0, ret;
> u32 prop;
>
> - if (!node)
> - return -EINVAL;
> -
> st->caps = (struct at91_adc_caps *)
> of_match_device(at91_adc_dt_ids, &pdev->dev)->data;
>
> @@ -960,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,
> };
> @@ -1160,15 +1150,9 @@ 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);
> -
> - if (ret) {
> - dev_err(&pdev->dev, "No platform data available.\n");
> - return -EINVAL;
> - }
> + ret = at91_adc_probe_dt(idev, pdev);
> + if (ret)
> + return ret;
>
> platform_set_drvdata(pdev, idev);
>
> @@ -1444,29 +1428,9 @@ static const struct of_device_id at91_adc_dt_ids[] = {
> };
> MODULE_DEVICE_TABLE(of, at91_adc_dt_ids);
>
> -static const struct platform_device_id at91_adc_ids[] = {
> - {
> - .name = "at91sam9260-adc",
> - .driver_data = (unsigned long)&at91sam9260_caps,
> - }, {
> - .name = "at91sam9rl-adc",
> - .driver_data = (unsigned long)&at91sam9rl_caps,
> - }, {
> - .name = "at91sam9g45-adc",
> - .driver_data = (unsigned long)&at91sam9g45_caps,
> - }, {
> - .name = "at91sam9x5-adc",
> - .driver_data = (unsigned long)&at91sam9x5_caps,
> - }, {
> - /* terminator */
> - }
> -};
> -MODULE_DEVICE_TABLE(platform, at91_adc_ids);
> -
> static struct platform_driver at91_adc_driver = {
> .probe = at91_adc_probe,
> .remove = at91_adc_remove,
> - .id_table = at91_adc_ids,
> .driver = {
> .name = DRIVER_NAME,
> .of_match_table = of_match_ptr(at91_adc_dt_ids),
> 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
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <jic23@kernel.org>
To: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: devicetree@vger.kernel.org, Lars-Peter Clausen <lars@metafoo.de>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
Ludovic Desroches <ludovic.desroches@microchip.com>,
Peter Meerwald-Stadler <pmeerw@pmeerw.net>,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 01/11] iio: adc: at91_adc: remove platform data
Date: Sat, 28 Nov 2020 14:04:27 +0000 [thread overview]
Message-ID: <20201128140427.61dbaceb@archlinux> (raw)
In-Reply-To: <20201117140656.1235055-2-alexandre.belloni@bootlin.com>
On Tue, 17 Nov 2020 15:06:46 +0100
Alexandre Belloni <alexandre.belloni@bootlin.com> wrote:
> The at91 platforms have been DT only for a while, remove platform data.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Reviewed-by: Ludovic Desroches <ludovic.desroches@microchip.com>
Hi Alexandre,
I'd completely forgotten that we actually had a similar patch that
is already applied from Alexandru back in September.
Given vast majority matched, I've just changed your patch into one
that drops the id_table (which Alexandru didn't do).
So with that tweak applied to the togreg branch of iio.git.
Thanks,
Jonathan
> ---
> drivers/iio/adc/at91_adc.c | 80 +++++++-------------------
> include/linux/platform_data/at91_adc.h | 49 ----------------
> 2 files changed, 22 insertions(+), 107 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 9b2c548fae95..62bd35af8b13 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
> @@ -875,9 +892,6 @@ static int at91_adc_probe_dt(struct iio_dev *idev,
> int i = 0, ret;
> u32 prop;
>
> - if (!node)
> - return -EINVAL;
> -
> st->caps = (struct at91_adc_caps *)
> of_match_device(at91_adc_dt_ids, &pdev->dev)->data;
>
> @@ -960,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,
> };
> @@ -1160,15 +1150,9 @@ 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);
> -
> - if (ret) {
> - dev_err(&pdev->dev, "No platform data available.\n");
> - return -EINVAL;
> - }
> + ret = at91_adc_probe_dt(idev, pdev);
> + if (ret)
> + return ret;
>
> platform_set_drvdata(pdev, idev);
>
> @@ -1444,29 +1428,9 @@ static const struct of_device_id at91_adc_dt_ids[] = {
> };
> MODULE_DEVICE_TABLE(of, at91_adc_dt_ids);
>
> -static const struct platform_device_id at91_adc_ids[] = {
> - {
> - .name = "at91sam9260-adc",
> - .driver_data = (unsigned long)&at91sam9260_caps,
> - }, {
> - .name = "at91sam9rl-adc",
> - .driver_data = (unsigned long)&at91sam9rl_caps,
> - }, {
> - .name = "at91sam9g45-adc",
> - .driver_data = (unsigned long)&at91sam9g45_caps,
> - }, {
> - .name = "at91sam9x5-adc",
> - .driver_data = (unsigned long)&at91sam9x5_caps,
> - }, {
> - /* terminator */
> - }
> -};
> -MODULE_DEVICE_TABLE(platform, at91_adc_ids);
> -
> static struct platform_driver at91_adc_driver = {
> .probe = at91_adc_probe,
> .remove = at91_adc_remove,
> - .id_table = at91_adc_ids,
> .driver = {
> .name = DRIVER_NAME,
> .of_match_table = of_match_ptr(at91_adc_dt_ids),
> 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
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-11-28 22:22 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-17 14:06 [PATCH v2 00/11] iio: adc: at91_adc: cleanup DT bindings Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 01/11] iio: adc: at91_adc: remove platform data Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-28 14:04 ` Jonathan Cameron [this message]
2020-11-28 14:04 ` Jonathan Cameron
2020-11-28 14:23 ` Alexandre Belloni
2020-11-28 14:23 ` Alexandre Belloni
2020-11-28 15:26 ` Jonathan Cameron
2020-11-28 15:26 ` Jonathan Cameron
2020-11-28 22:28 ` Alexandre Belloni
2020-11-28 22:28 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 02/11] iio: adc: at91_adc: rework resolution selection Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 03/11] dt-bindings:iio:adc:remove atmel,adc-res and atmel,adc-res-names Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 03/11] dt-bindings:iio:adc:remove atmel, adc-res and atmel, adc-res-names Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 04/11] dt-bindings:iio:adc:atmel,sama9260-adc: conversion to yaml from at91_adc.txt Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 04/11] dt-bindings:iio:adc:atmel, sama9260-adc: " Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 05/11] iio: adc: at91_adc: rework trigger definition Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 06/11] dt-bindings:iio:adc:remove triggers Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 07/11] iio: adc: at91_adc: merge at91_adc_probe_dt back in at91_adc_probe Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-28 15:21 ` Jonathan Cameron
2020-11-28 15:21 ` Jonathan Cameron
2020-11-17 14:06 ` [PATCH v2 08/11] iio: adc: at91_adc: remove forward declaration Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 09/11] ARM: dts: at91: sama5d3: use proper ADC compatible Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 10/11] ARM: dts: at91: at91sam9rl: fix ADC triggers Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-17 14:06 ` [PATCH v2 11/11] ARM: dts: at91: remove deprecated ADC properties Alexandre Belloni
2020-11-17 14:06 ` Alexandre Belloni
2020-11-21 15:56 ` [PATCH v2 00/11] iio: adc: at91_adc: cleanup DT bindings Jonathan Cameron
2020-11-21 15:56 ` Jonathan Cameron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201128140427.61dbaceb@archlinux \
--to=jic23@kernel.org \
--cc=alexandre.belloni@bootlin.com \
--cc=devicetree@vger.kernel.org \
--cc=lars@metafoo.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ludovic.desroches@microchip.com \
--cc=nicolas.ferre@microchip.com \
--cc=pmeerw@pmeerw.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.