From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Arnd Bergmann <arnd@arndb.de>, Vinod Koul <vinod.koul@intel.com>,
dmaengine@vger.kernel.org
Cc: Dan Williams <dan.j.williams@intel.com>,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
Sekhar Nori <nsekhar@ti.com>,
Kevin Hilman <khilman@deeprootsystems.com>,
linux-omap@vger.kernel.org
Subject: Re: [PATCH] dmaengine: edma: fix build without CONFIG_OF
Date: Wed, 4 Nov 2015 09:42:35 +0200 [thread overview]
Message-ID: <5639B6EB.8030101@ti.com> (raw)
In-Reply-To: <17811472.bY8CqmdEVy@wuerfel>
On 11/03/2015 04:00 PM, Arnd Bergmann wrote:
> During the edma rework, a build error was introduced for the
> case that CONFIG_OF is disabled:
>
> drivers/built-in.o: In function `edma_tc_set_pm_state':
> :(.text+0x43bf0): undefined reference to `of_find_device_by_node'
>
> As the edma_tc_set_pm_state() function does nothing in case
> we are running without OF, this adds an IS_ENABLED() check
> that turns the function into an empty stub then and avoids the
> link error.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Fixes: ca304fa9bb76 ("ARM/dmaengine: edma: Public API to use private struct pointer")
The actual commit this patch is fixing is:
1be5336bc7ba dmaengine: edma: New device tree binding
> ---
> Found on ARM randconfig builds with today's linux-next
I have sanity built the kernel with omap2plus_defconfig and
davinci_all_defconfig since eDMA is used by these platforms and did not faced
with this issue, as obviously these defconfigs will result OF to be enabled.
> diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
> index 31722d436a42..16713a93da10 100644
> --- a/drivers/dma/edma.c
> +++ b/drivers/dma/edma.c
> @@ -1560,7 +1560,7 @@ static void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
> struct platform_device *tc_pdev;
> int ret;
>
> - if (!tc)
> + if (!IS_ENABLED(CONFIG_OF) || !tc)
> return;
Should we instead put the function inside of:
#if IS_ENABLED(CONFIG_OF)
static void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
{
...
}
#else
static inline void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
{
}
#endif /* IS_ENABLED(CONFIG_OF) */
>
> tc_pdev = of_find_device_by_node(tc->node);
>
--
Péter
WARNING: multiple messages have this Message-ID (diff)
From: peter.ujfalusi@ti.com (Peter Ujfalusi)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] dmaengine: edma: fix build without CONFIG_OF
Date: Wed, 4 Nov 2015 09:42:35 +0200 [thread overview]
Message-ID: <5639B6EB.8030101@ti.com> (raw)
In-Reply-To: <17811472.bY8CqmdEVy@wuerfel>
On 11/03/2015 04:00 PM, Arnd Bergmann wrote:
> During the edma rework, a build error was introduced for the
> case that CONFIG_OF is disabled:
>
> drivers/built-in.o: In function `edma_tc_set_pm_state':
> :(.text+0x43bf0): undefined reference to `of_find_device_by_node'
>
> As the edma_tc_set_pm_state() function does nothing in case
> we are running without OF, this adds an IS_ENABLED() check
> that turns the function into an empty stub then and avoids the
> link error.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Fixes: ca304fa9bb76 ("ARM/dmaengine: edma: Public API to use private struct pointer")
The actual commit this patch is fixing is:
1be5336bc7ba dmaengine: edma: New device tree binding
> ---
> Found on ARM randconfig builds with today's linux-next
I have sanity built the kernel with omap2plus_defconfig and
davinci_all_defconfig since eDMA is used by these platforms and did not faced
with this issue, as obviously these defconfigs will result OF to be enabled.
> diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
> index 31722d436a42..16713a93da10 100644
> --- a/drivers/dma/edma.c
> +++ b/drivers/dma/edma.c
> @@ -1560,7 +1560,7 @@ static void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
> struct platform_device *tc_pdev;
> int ret;
>
> - if (!tc)
> + if (!IS_ENABLED(CONFIG_OF) || !tc)
> return;
Should we instead put the function inside of:
#if IS_ENABLED(CONFIG_OF)
static void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
{
...
}
#else
static inline void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
{
}
#endif /* IS_ENABLED(CONFIG_OF) */
>
> tc_pdev = of_find_device_by_node(tc->node);
>
--
P?ter
WARNING: multiple messages have this Message-ID (diff)
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Arnd Bergmann <arnd@arndb.de>, Vinod Koul <vinod.koul@intel.com>,
<dmaengine@vger.kernel.org>
Cc: Dan Williams <dan.j.williams@intel.com>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
Sekhar Nori <nsekhar@ti.com>,
Kevin Hilman <khilman@deeprootsystems.com>,
<linux-omap@vger.kernel.org>
Subject: Re: [PATCH] dmaengine: edma: fix build without CONFIG_OF
Date: Wed, 4 Nov 2015 09:42:35 +0200 [thread overview]
Message-ID: <5639B6EB.8030101@ti.com> (raw)
In-Reply-To: <17811472.bY8CqmdEVy@wuerfel>
On 11/03/2015 04:00 PM, Arnd Bergmann wrote:
> During the edma rework, a build error was introduced for the
> case that CONFIG_OF is disabled:
>
> drivers/built-in.o: In function `edma_tc_set_pm_state':
> :(.text+0x43bf0): undefined reference to `of_find_device_by_node'
>
> As the edma_tc_set_pm_state() function does nothing in case
> we are running without OF, this adds an IS_ENABLED() check
> that turns the function into an empty stub then and avoids the
> link error.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Fixes: ca304fa9bb76 ("ARM/dmaengine: edma: Public API to use private struct pointer")
The actual commit this patch is fixing is:
1be5336bc7ba dmaengine: edma: New device tree binding
> ---
> Found on ARM randconfig builds with today's linux-next
I have sanity built the kernel with omap2plus_defconfig and
davinci_all_defconfig since eDMA is used by these platforms and did not faced
with this issue, as obviously these defconfigs will result OF to be enabled.
> diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
> index 31722d436a42..16713a93da10 100644
> --- a/drivers/dma/edma.c
> +++ b/drivers/dma/edma.c
> @@ -1560,7 +1560,7 @@ static void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
> struct platform_device *tc_pdev;
> int ret;
>
> - if (!tc)
> + if (!IS_ENABLED(CONFIG_OF) || !tc)
> return;
Should we instead put the function inside of:
#if IS_ENABLED(CONFIG_OF)
static void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
{
...
}
#else
static inline void edma_tc_set_pm_state(struct edma_tc *tc, bool enable)
{
}
#endif /* IS_ENABLED(CONFIG_OF) */
>
> tc_pdev = of_find_device_by_node(tc->node);
>
--
Péter
next prev parent reply other threads:[~2015-11-04 7:42 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-03 14:00 [PATCH] dmaengine: edma: fix build without CONFIG_OF Arnd Bergmann
2015-11-03 14:00 ` Arnd Bergmann
2015-11-04 7:42 ` Peter Ujfalusi [this message]
2015-11-04 7:42 ` Peter Ujfalusi
2015-11-04 7:42 ` Peter Ujfalusi
2015-11-04 8:46 ` Arnd Bergmann
2015-11-04 8:46 ` Arnd Bergmann
2015-11-04 9:05 ` Peter Ujfalusi
2015-11-04 9:05 ` Peter Ujfalusi
2015-11-04 9:05 ` Peter Ujfalusi
2015-11-04 10:29 ` Arnd Bergmann
2015-11-04 10:29 ` Arnd Bergmann
2015-11-16 3:36 ` Vinod Koul
2015-11-16 3:36 ` Vinod Koul
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=5639B6EB.8030101@ti.com \
--to=peter.ujfalusi@ti.com \
--cc=arnd@arndb.de \
--cc=dan.j.williams@intel.com \
--cc=dmaengine@vger.kernel.org \
--cc=khilman@deeprootsystems.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=nsekhar@ti.com \
--cc=vinod.koul@intel.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.