Message ID | 20200930060008.42134-3-alexandru.ardelean@analog.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | iio: adc: at91: misc driver cleanups | expand |
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@analog.com> Reviewed-by: Alexandre Belloni <alexandre.belloni@bootlin.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 >
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");
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@analog.com> --- drivers/iio/adc/at91_adc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)