[PATCH v2] drivers: cpuidle: cpuidle-arm64: include asm/proc-fns.h explicitly
From: catalin.marinas@arm.com (Catalin Marinas)
Date: 2015-02-27 18:03:26
On Fri, Feb 27, 2015 at 05:54:31PM +0000, Lorenzo Pieralisi wrote:
On Fri, Feb 27, 2015 at 05:34:22PM +0000, Catalin Marinas wrote:quoted
On Fri, Feb 27, 2015 at 06:18:59PM +0100, Daniel Lezcano wrote:quoted
On 02/27/2015 06:16 PM, Lorenzo Pieralisi wrote:quoted
On Fri, Feb 27, 2015 at 04:44:42PM +0000, Daniel Lezcano wrote:quoted
On 02/26/2015 07:23 PM, Catalin Marinas wrote:quoted
On Wed, Feb 25, 2015 at 01:11:40PM +0000, Will Deacon wrote:quoted
On Wed, Feb 25, 2015 at 12:59:42PM +0000, Lorenzo Pieralisi wrote:quoted
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. The current ARM64 CPUidle driver does not include asm/proc-fns.h explicitly and it has so far relied on implicit inclusion from other header files. Owing to some header dependencies reshuffling this currently triggers build failures when CONFIG_ARM64_64K_PAGES=y: drivers/cpuidle/cpuidle-arm64.c: In function "arm64_enter_idle_state" drivers/cpuidle/cpuidle-arm64.c:42:3: error: implicit declaration of function "cpu_do_idle" [-Werror=implicit-function-declaration] cpu_do_idle(); ^ This patch adds the explicit inclusion of the asm/proc-fns.h header file to fix the build breakage and stop relying on implicit asm/proc-fns.h inclusion. Signed-off-by: Laura Abbott <redacted> [lp: rewrote commit log] Signed-off-by: Lorenzo Pieralisi <redacted> Tested-by: Mark Rutland <mark.rutland@arm.com> --- v2 changes:Acked-by: Will Deacon <redacted> Catalin will pick this up for -rc2, I suspect.I can merge this as long as Daniel or Rafael are fine with it.I am wondering if asm/proc-fns.h shouldn't be directly included in asm/cpuidle.h, otherwise each time cpuidle.h is included somewhere we have to include proc-fns.h also. It is not a problem for ARM64 because there is not a big number of cpuidle drivers but for ARM32 it is not the case. I have a patchset which put proc-fns.h inclusion directly in asm/cpuidle.h and cleanup the drivers. For the sake of consistency between ARM/ARM64 may be it would make sense to include in the cpuidle.h directly, no ?This patch is a build fix, and I'd rather get it in asap. We can move the inclusion and merge the resulting clean-up patch in your series later. I will put together the patch now, if Catalin has the pull request ready to be sent I do not see the point in delaying it though.I was just suggesting to put the proc-fns.h inclusion in cpuidle.h directly. That fixes the build also.This would do as well, especially since you plan to clean up arch/arm as well (or just move the cpu_do_idle() prototype in asm/cpuidle.h; we moved cpu_suspend() there already).What I wanted to say is that the clean-up will be merged the coming cycle anyway, not now, so I wanted to avoid delaying the pull request for something that could have been done later.
Agree, but since the change is small, I'll get your reworked patch which doesn't touch cpuidle-arm64.c Thanks. -- Catalin