[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200930073212.GB2804081@piout.net>
Date: Wed, 30 Sep 2020 09:32:12 +0200
From: Alexandre Belloni <alexandre.belloni@...tlin.com>
To: Alexandru Ardelean <alexandru.ardelean@...log.com>
Cc: linux-iio@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, jic23@...nel.org,
nicolas.ferre@...rochip.com, ludovic.desroches@...rochip.com
Subject: Re: [PATCH v2 2/4] iio: adc: at91_adc: const-ify some driver data
On 30/09/2020 09:00:06+0300, Alexandru Ardelean wrote:
> The main intent is to get rid of the cast for the void-pointer returned by
> of_device_get_match_data().
>
> This requires const-ifying the 'caps' and 'registers' references on the
> at91_adc_state struct.
>
> The caps can be obtained also from the old platform_data (in the
> at91_adc_probe_pdata() function), but that cast is not touched in this
> patch, since the old platform_data should be removed/cleaned-away.
> Also, that cast deals with converting a kernel_ulong_t type to a pointer.
> So, updating that cast doesn't yield any benefit.
>
> Signed-off-by: Alexandru Ardelean <alexandru.ardelean@...log.com>
Reviewed-by: Alexandre Belloni <alexandre.belloni@...tlin.com>
> ---
> drivers/iio/adc/at91_adc.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/iio/adc/at91_adc.c b/drivers/iio/adc/at91_adc.c
> index c9ec0a4a357e..7d846a2852a5 100644
> --- a/drivers/iio/adc/at91_adc.c
> +++ b/drivers/iio/adc/at91_adc.c
> @@ -202,7 +202,7 @@ struct at91_adc_state {
> struct mutex lock;
> u8 num_channels;
> void __iomem *reg_base;
> - struct at91_adc_reg_desc *registers;
> + const struct at91_adc_reg_desc *registers;
> u32 startup_time;
> u8 sample_hold_time;
> bool sleep_mode;
> @@ -214,7 +214,7 @@ struct at91_adc_state {
> u32 res; /* resolution used for convertions */
> bool low_res; /* the resolution corresponds to the lowest one */
> wait_queue_head_t wq_data_avail;
> - struct at91_adc_caps *caps;
> + const struct at91_adc_caps *caps;
>
> /*
> * Following ADC channels are shared by touchscreen:
> @@ -550,7 +550,7 @@ static int at91_adc_configure_trigger(struct iio_trigger *trig, bool state)
> {
> struct iio_dev *idev = iio_trigger_get_drvdata(trig);
> struct at91_adc_state *st = iio_priv(idev);
> - struct at91_adc_reg_desc *reg = st->registers;
> + const struct at91_adc_reg_desc *reg = st->registers;
> u32 status = at91_adc_readl(st, reg->trigger_register);
> int value;
> u8 bit;
> @@ -876,7 +876,7 @@ static int at91_adc_probe_dt(struct iio_dev *idev,
> if (!node)
> return -EINVAL;
>
> - st->caps = (struct at91_adc_caps *)of_device_get_match_data(&pdev->dev);
> + st->caps = of_device_get_match_data(&pdev->dev);
>
> st->use_external = of_property_read_bool(node, "atmel,adc-use-external-triggers");
>
> --
> 2.17.1
>
--
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Powered by blists - more mailing lists