From: Jonathan Cameron <jic23@kernel.org>
To: Alexandru Ardelean <alexandru.ardelean@analog.com>
Cc: <linux-iio@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>, <nicolas.ferre@microchip.com>,
<alexandre.belloni@bootlin.com>,
<ludovic.desroches@microchip.com>
Subject: Re: [PATCH 1/2] iio: adc: at91_adc: use of_device_get_match_data() helper
Date: Tue, 29 Sep 2020 16:54:28 +0100 [thread overview]
Message-ID: <20200929165428.15ac9e4c@archlinux> (raw)
In-Reply-To: <20200928125424.35921-1-alexandru.ardelean@analog.com>
On Mon, 28 Sep 2020 15:54:23 +0300
Alexandru Ardelean <alexandru.ardelean@analog.com> wrote:
> This tries to solve a warning reported by the lkp bot:
>
> >> drivers/iio/adc/at91_adc.c:1439:34: warning: unused variable
> >> 'at91_adc_dt_ids' [-Wunused-const-variable]
> static const struct of_device_id at91_adc_dt_ids[] = {
> ^
> 1 warning generated.
>
> This shows up with 'compiler: clang version 12.0.0' and W=1 (as the bot
> mentions).
>
> Forward declarations for global variables can be a bit weird; forward
> function declarations are more common.
Hi,
That's not the forward declaration that it is complaining about...
It's a reasonable patch anyway, but doesn't fix that warning which is
about of_match_ptr and the lack of #ifdef CONFIG_OF around the
actual definition.
For the bug warning, I'd add add a Kconfig dependency on OF.
It doesn't make any sense to allow building this driver without that.
So resend this as a simple tidy up patch and another one adding
that build dependency.
Thanks,
Jonathan
>
> Maybe another fix for this would have been to prefix with 'extern' the
> 'at91_adc_dt_ids' variable, thus making it more friendly as a forward
> declaration. It would look weird, but it would work.
>
> But, we can avoid that forward declaration altogether simply by obtaining
> the private data with of_device_get_match_data().
>
> This appeared after commit 4027860dcc4c ("iio: Kconfig: at91_adc: add
> COMPILE_TEST dependency to driver"), which put this driver on the lkp's bot
> radar.
>
> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
> ---
> drivers/iio/adc/at91_adc.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/iio/adc/at91_adc.c b/drivers/iio/adc/at91_adc.c
> index 9b2c548fae95..c9ec0a4a357e 100644
> --- a/drivers/iio/adc/at91_adc.c
> +++ b/drivers/iio/adc/at91_adc.c
> @@ -829,8 +829,6 @@ static u32 calc_startup_ticks_9x5(u32 startup_time, u32 adc_clk_khz)
> return ticks;
> }
>
> -static const struct of_device_id at91_adc_dt_ids[];
> -
> static int at91_adc_probe_dt_ts(struct device_node *node,
> struct at91_adc_state *st, struct device *dev)
> {
> @@ -878,8 +876,7 @@ static int at91_adc_probe_dt(struct iio_dev *idev,
> if (!node)
> return -EINVAL;
>
> - st->caps = (struct at91_adc_caps *)
> - of_match_device(at91_adc_dt_ids, &pdev->dev)->data;
> + st->caps = (struct at91_adc_caps *)of_device_get_match_data(&pdev->dev);
>
> st->use_external = of_property_read_bool(node, "atmel,adc-use-external-triggers");
>
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <jic23@kernel.org>
To: Alexandru Ardelean <alexandru.ardelean@analog.com>
Cc: alexandre.belloni@bootlin.com, linux-iio@vger.kernel.org,
linux-kernel@vger.kernel.org, ludovic.desroches@microchip.com,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 1/2] iio: adc: at91_adc: use of_device_get_match_data() helper
Date: Tue, 29 Sep 2020 16:54:28 +0100 [thread overview]
Message-ID: <20200929165428.15ac9e4c@archlinux> (raw)
In-Reply-To: <20200928125424.35921-1-alexandru.ardelean@analog.com>
On Mon, 28 Sep 2020 15:54:23 +0300
Alexandru Ardelean <alexandru.ardelean@analog.com> wrote:
> This tries to solve a warning reported by the lkp bot:
>
> >> drivers/iio/adc/at91_adc.c:1439:34: warning: unused variable
> >> 'at91_adc_dt_ids' [-Wunused-const-variable]
> static const struct of_device_id at91_adc_dt_ids[] = {
> ^
> 1 warning generated.
>
> This shows up with 'compiler: clang version 12.0.0' and W=1 (as the bot
> mentions).
>
> Forward declarations for global variables can be a bit weird; forward
> function declarations are more common.
Hi,
That's not the forward declaration that it is complaining about...
It's a reasonable patch anyway, but doesn't fix that warning which is
about of_match_ptr and the lack of #ifdef CONFIG_OF around the
actual definition.
For the bug warning, I'd add add a Kconfig dependency on OF.
It doesn't make any sense to allow building this driver without that.
So resend this as a simple tidy up patch and another one adding
that build dependency.
Thanks,
Jonathan
>
> Maybe another fix for this would have been to prefix with 'extern' the
> 'at91_adc_dt_ids' variable, thus making it more friendly as a forward
> declaration. It would look weird, but it would work.
>
> But, we can avoid that forward declaration altogether simply by obtaining
> the private data with of_device_get_match_data().
>
> This appeared after commit 4027860dcc4c ("iio: Kconfig: at91_adc: add
> COMPILE_TEST dependency to driver"), which put this driver on the lkp's bot
> radar.
>
> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
> ---
> drivers/iio/adc/at91_adc.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/iio/adc/at91_adc.c b/drivers/iio/adc/at91_adc.c
> index 9b2c548fae95..c9ec0a4a357e 100644
> --- a/drivers/iio/adc/at91_adc.c
> +++ b/drivers/iio/adc/at91_adc.c
> @@ -829,8 +829,6 @@ static u32 calc_startup_ticks_9x5(u32 startup_time, u32 adc_clk_khz)
> return ticks;
> }
>
> -static const struct of_device_id at91_adc_dt_ids[];
> -
> static int at91_adc_probe_dt_ts(struct device_node *node,
> struct at91_adc_state *st, struct device *dev)
> {
> @@ -878,8 +876,7 @@ static int at91_adc_probe_dt(struct iio_dev *idev,
> if (!node)
> return -EINVAL;
>
> - st->caps = (struct at91_adc_caps *)
> - of_match_device(at91_adc_dt_ids, &pdev->dev)->data;
> + st->caps = (struct at91_adc_caps *)of_device_get_match_data(&pdev->dev);
>
> st->use_external = of_property_read_bool(node, "atmel,adc-use-external-triggers");
>
_______________________________________________
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-09-29 15:54 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-28 12:54 [PATCH 1/2] iio: adc: at91_adc: use of_device_get_match_data() helper Alexandru Ardelean
2020-09-28 12:54 ` Alexandru Ardelean
2020-09-28 12:54 ` [PATCH 2/2] iio: adc: at91_adc: const-ify some driver data Alexandru Ardelean
2020-09-28 12:54 ` Alexandru Ardelean
2020-09-29 15:55 ` Jonathan Cameron
2020-09-29 15:55 ` Jonathan Cameron
2020-09-29 15:54 ` Jonathan Cameron [this message]
2020-09-29 15:54 ` [PATCH 1/2] iio: adc: at91_adc: use of_device_get_match_data() helper Jonathan Cameron
2020-09-30 5:28 ` Alexandru Ardelean
2020-09-30 5:28 ` Alexandru Ardelean
2020-09-30 5:30 ` Alexandru Ardelean
2020-09-30 5:30 ` Alexandru Ardelean
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=20200929165428.15ac9e4c@archlinux \
--to=jic23@kernel.org \
--cc=alexandre.belloni@bootlin.com \
--cc=alexandru.ardelean@analog.com \
--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 \
/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.