linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64
@ 2015-02-25  1:25 Laura Abbott
  2015-02-25  8:31 ` Lorenzo Pieralisi
  2015-02-25 11:18 ` Mark Rutland
  0 siblings, 2 replies; 6+ messages in thread
From: Laura Abbott @ 2015-02-25  1:25 UTC (permalink / raw)
  To: linux-arm-kernel

cpuidle-arm64.c fails to compile with CONFIG_ARM64_64K_PAGES=y

/kernel/drivers/cpuidle/cpuidle-arm64.c: In function "arm64_enter_idle_state"
/kernel/drivers/cpuidle/cpuidle-arm64.c:42:3: error: implicit declaration of function "cpu_do_idle" [-Werror=implicit-function-declaration]
   cpu_do_idle();
   ^

Explicitly add the header file with the declaration of cpu_do_idle.

Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
---
Not sure how long this has been broken, bisect between v3.19 and master showed
6b00f7efb5303418c231994c91fb8239f5ada260 as the first bad commit which
isn't particularly helpful. Probably some header shuffling.
---
 drivers/cpuidle/cpuidle-arm64.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
index 80704b9..f1d5422 100644
--- a/drivers/cpuidle/cpuidle-arm64.c
+++ b/drivers/cpuidle/cpuidle-arm64.c
@@ -19,6 +19,7 @@
 #include <linux/of.h>
 
 #include <asm/cpuidle.h>
+#include <asm/proc-fns.h>
 #include <asm/suspend.h>
 
 #include "dt_idle_states.h"
-- 
Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64
  2015-02-25  1:25 [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64 Laura Abbott
@ 2015-02-25  8:31 ` Lorenzo Pieralisi
  2015-02-25 11:18 ` Mark Rutland
  1 sibling, 0 replies; 6+ messages in thread
From: Lorenzo Pieralisi @ 2015-02-25  8:31 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Feb 25, 2015 at 01:25:06AM +0000, Laura Abbott wrote:
> cpuidle-arm64.c fails to compile with CONFIG_ARM64_64K_PAGES=y
> 
> /kernel/drivers/cpuidle/cpuidle-arm64.c: In function "arm64_enter_idle_state"
> /kernel/drivers/cpuidle/cpuidle-arm64.c:42:3: error: implicit declaration of function "cpu_do_idle" [-Werror=implicit-function-declaration]
>    cpu_do_idle();
>    ^
> 
> Explicitly add the header file with the declaration of cpu_do_idle.

I was about to send the same patch.

Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>

> 
> Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
> ---
> Not sure how long this has been broken, bisect between v3.19 and master showed
> 6b00f7efb5303418c231994c91fb8239f5ada260 as the first bad commit which
> isn't particularly helpful. Probably some header shuffling.

Yes, agreed, I was trying to bisect it yesterday, but including the
asm/proc-fns.h file is the right thing to do regardless.

Thanks,
Lorenzo

> ---
>  drivers/cpuidle/cpuidle-arm64.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
> index 80704b9..f1d5422 100644
> --- a/drivers/cpuidle/cpuidle-arm64.c
> +++ b/drivers/cpuidle/cpuidle-arm64.c
> @@ -19,6 +19,7 @@
>  #include <linux/of.h>
>  
>  #include <asm/cpuidle.h>
> +#include <asm/proc-fns.h>
>  #include <asm/suspend.h>
>  
>  #include "dt_idle_states.h"
> -- 
> Qualcomm Innovation Center, Inc.
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
> 
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64
  2015-02-25  1:25 [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64 Laura Abbott
  2015-02-25  8:31 ` Lorenzo Pieralisi
@ 2015-02-25 11:18 ` Mark Rutland
  2015-02-25 11:27   ` Lorenzo Pieralisi
  1 sibling, 1 reply; 6+ messages in thread
From: Mark Rutland @ 2015-02-25 11:18 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Laura,

On Wed, Feb 25, 2015 at 01:25:06AM +0000, Laura Abbott wrote:
> cpuidle-arm64.c fails to compile with CONFIG_ARM64_64K_PAGES=y
> 
> /kernel/drivers/cpuidle/cpuidle-arm64.c: In function "arm64_enter_idle_state"
> /kernel/drivers/cpuidle/cpuidle-arm64.c:42:3: error: implicit declaration of function "cpu_do_idle" [-Werror=implicit-function-declaration]
>    cpu_do_idle();
>    ^
> 
> Explicitly add the header file with the declaration of cpu_do_idle.
> 
> Signed-off-by: Laura Abbott <lauraa@codeaurora.org>

I just hit the same problem. The fix looks sane, and it would be nice to
have it queued ASAP.

> ---
> Not sure how long this has been broken, bisect between v3.19 and master showed
> 6b00f7efb5303418c231994c91fb8239f5ada260 as the first bad commit which
> isn't particularly helpful. Probably some header shuffling.
> ---
>  drivers/cpuidle/cpuidle-arm64.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
> index 80704b9..f1d5422 100644
> --- a/drivers/cpuidle/cpuidle-arm64.c
> +++ b/drivers/cpuidle/cpuidle-arm64.c
> @@ -19,6 +19,7 @@
>  #include <linux/of.h>
>  
>  #include <asm/cpuidle.h>
> +#include <asm/proc-fns.h>
>  #include <asm/suspend.h>

I wasn't able to apply this patch atop of v4.0-rc1 or current mainline;
there's no asm/suspend.h include in either of those. Which tree is this
based on?

Mark.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64
  2015-02-25 11:18 ` Mark Rutland
@ 2015-02-25 11:27   ` Lorenzo Pieralisi
  2015-02-25 11:39     ` Mark Rutland
  2015-02-25 18:04     ` Laura Abbott
  0 siblings, 2 replies; 6+ messages in thread
From: Lorenzo Pieralisi @ 2015-02-25 11:27 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Feb 25, 2015 at 11:18:29AM +0000, Mark Rutland wrote:

[...]

> >  drivers/cpuidle/cpuidle-arm64.c | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
> > index 80704b9..f1d5422 100644
> > --- a/drivers/cpuidle/cpuidle-arm64.c
> > +++ b/drivers/cpuidle/cpuidle-arm64.c
> > @@ -19,6 +19,7 @@
> >  #include <linux/of.h>
> >  
> >  #include <asm/cpuidle.h>
> > +#include <asm/proc-fns.h>
> >  #include <asm/suspend.h>
> 
> I wasn't able to apply this patch atop of v4.0-rc1 or current mainline;
> there's no asm/suspend.h include in either of those. Which tree is this
> based on?

Yes, it does not apply to mainline, either we fix that up or here is
the version I was sending on top of mainline.

Thanks,
Lorenzo

-- >8 --
Subject: [PATCH] drivers: cpuidle: cpuidle-arm64: include asm/proc-fns.h
 explicitly

ARM64 CPUidle driver requires the cpu_do_idle function so that it can
be used to enter the shallowest idle state, and it is declared in
asm/proc-fns.h.

This patch adds the explicit inclusion of the asm/proc-fns.h header file
to stop relying on implicit inclusion of the same file through implicit
header files dependencies.

Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
[lp: rebased/rewrote commit log]
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
---
 drivers/cpuidle/cpuidle-arm64.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
index 39a2c62..c8bb6c5 100644
--- a/drivers/cpuidle/cpuidle-arm64.c
+++ b/drivers/cpuidle/cpuidle-arm64.c
@@ -19,6 +19,7 @@
 #include <linux/of.h>
 
 #include <asm/cpuidle.h>
+#include <asm/proc-fns.h>
 
 #include "dt_idle_states.h"
 
-- 
2.2.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64
  2015-02-25 11:27   ` Lorenzo Pieralisi
@ 2015-02-25 11:39     ` Mark Rutland
  2015-02-25 18:04     ` Laura Abbott
  1 sibling, 0 replies; 6+ messages in thread
From: Mark Rutland @ 2015-02-25 11:39 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Lorenzo,

> Subject: [PATCH] drivers: cpuidle: cpuidle-arm64: include asm/proc-fns.h
>  explicitly
> 
> ARM64 CPUidle driver requires the cpu_do_idle function so that it can
> be used to enter the shallowest idle state, and it is declared in
> asm/proc-fns.h.
> 
> This patch adds the explicit inclusion of the asm/proc-fns.h header file
> to stop relying on implicit inclusion of the same file through implicit
> header files dependencies.

Laura's original commit message made it clear that this was a real
problem for CONFIG_ARM64_64K_PAGES=y, while this makes it sound like a
cleanup.

We should make it clear that without this the build is broken when
CONFIG_ARM64_64K_PAGES=y.

> Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
> [lp: rebased/rewrote commit log]
> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>

Otherwise this applies, and seems to work:

Tested-by: Mark Rutland <mark.rutland@arm.com>

Mark.

> ---
>  drivers/cpuidle/cpuidle-arm64.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
> index 39a2c62..c8bb6c5 100644
> --- a/drivers/cpuidle/cpuidle-arm64.c
> +++ b/drivers/cpuidle/cpuidle-arm64.c
> @@ -19,6 +19,7 @@
>  #include <linux/of.h>
>  
>  #include <asm/cpuidle.h>
> +#include <asm/proc-fns.h>
>  
>  #include "dt_idle_states.h"
>  
> -- 
> 2.2.1
> 
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64
  2015-02-25 11:27   ` Lorenzo Pieralisi
  2015-02-25 11:39     ` Mark Rutland
@ 2015-02-25 18:04     ` Laura Abbott
  1 sibling, 0 replies; 6+ messages in thread
From: Laura Abbott @ 2015-02-25 18:04 UTC (permalink / raw)
  To: linux-arm-kernel

On 2/25/2015 3:27 AM, Lorenzo Pieralisi wrote:
> On Wed, Feb 25, 2015 at 11:18:29AM +0000, Mark Rutland wrote:
>
> [...]
>
>>>   drivers/cpuidle/cpuidle-arm64.c | 1 +
>>>   1 file changed, 1 insertion(+)
>>>
>>> diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
>>> index 80704b9..f1d5422 100644
>>> --- a/drivers/cpuidle/cpuidle-arm64.c
>>> +++ b/drivers/cpuidle/cpuidle-arm64.c
>>> @@ -19,6 +19,7 @@
>>>   #include <linux/of.h>
>>>
>>>   #include <asm/cpuidle.h>
>>> +#include <asm/proc-fns.h>
>>>   #include <asm/suspend.h>
>>
>> I wasn't able to apply this patch atop of v4.0-rc1 or current mainline;
>> there's no asm/suspend.h include in either of those. Which tree is this
>> based on?
>
> Yes, it does not apply to mainline, either we fix that up or here is
> the version I was sending on top of mainline.
>
> Thanks,
> Lorenzo
>

Blah, I forgot I had cruft in my tree. Sorry about that.

> -- >8 --
> Subject: [PATCH] drivers: cpuidle: cpuidle-arm64: include asm/proc-fns.h
>   explicitly
>
> ARM64 CPUidle driver requires the cpu_do_idle function so that it can
> be used to enter the shallowest idle state, and it is declared in
> asm/proc-fns.h.
>
> This patch adds the explicit inclusion of the asm/proc-fns.h header file
> to stop relying on implicit inclusion of the same file through implicit
> header files dependencies.
>
> Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
> [lp: rebased/rewrote commit log]
> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> ---
>   drivers/cpuidle/cpuidle-arm64.c | 1 +
>   1 file changed, 1 insertion(+)
>
> diff --git a/drivers/cpuidle/cpuidle-arm64.c b/drivers/cpuidle/cpuidle-arm64.c
> index 39a2c62..c8bb6c5 100644
> --- a/drivers/cpuidle/cpuidle-arm64.c
> +++ b/drivers/cpuidle/cpuidle-arm64.c
> @@ -19,6 +19,7 @@
>   #include <linux/of.h>
>
>   #include <asm/cpuidle.h>
> +#include <asm/proc-fns.h>
>
>   #include "dt_idle_states.h"
>
>


-- 
Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-02-25 18:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-25  1:25 [PATCH] drivers: cpuidle: Explictly include proc-fns.h for cpuidle-arm64 Laura Abbott
2015-02-25  8:31 ` Lorenzo Pieralisi
2015-02-25 11:18 ` Mark Rutland
2015-02-25 11:27   ` Lorenzo Pieralisi
2015-02-25 11:39     ` Mark Rutland
2015-02-25 18:04     ` Laura Abbott

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).