[PATCH 04/18] ARM: imx: cpuidle: create separate drivers for imx5/imx6
Shawn Guo
shawn.guo at linaro.org
Fri Apr 12 02:05:30 EDT 2013
On Wed, Apr 10, 2013 at 04:22:09PM +0200, Daniel Lezcano wrote:
> The code intializes the cpuidle driver at different places.
> The cpuidle driver for :
> * imx5 : is in the pm-imx5.c, the init function is in cpuidle.c
> * imx6 : is in cpuidle-imx6q.c, the init function is in cpuidle.c
> and cpuidle-imx6q.c
>
> Instead of having the cpuidle code spread across different files,
> let's write a driver for each SoC and make the code similar.
>
> That implies some code duplication but that will be fixed with the
> next patches which consolidate the initialization for all the drivers.
>
IMO, this is unnecessary churn. I agree that we can have cpuidle-imx5.c
instead of carrying imx5 cpuidle code in pm-imx5.c. But removing
cpuidle.c and duplicating what imx_cpuidle_init() does into imx5 and
imx6q driver is a step backward to me.
I suggest simply merging this patch into "[PATCH 18/18] ARM: imx:
cpuidle: use init/exit common routine"
> Signed-off-by: Daniel Lezcano <daniel.lezcano at linaro.org>
> ---
> arch/arm/mach-imx/Makefile | 1 +
> arch/arm/mach-imx/cpuidle-imx5.c | 74 ++++++++++++++++++++++++++++++++++
> arch/arm/mach-imx/cpuidle-imx6q.c | 36 ++++++++++++++++-
> arch/arm/mach-imx/cpuidle.c | 80 -------------------------------------
> arch/arm/mach-imx/cpuidle.h | 10 ++---
> arch/arm/mach-imx/pm-imx5.c | 29 +-------------
> 6 files changed, 115 insertions(+), 115 deletions(-)
> create mode 100644 arch/arm/mach-imx/cpuidle-imx5.c
> delete mode 100644 arch/arm/mach-imx/cpuidle.c
>
> diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile
> index c4ce090..bfd5f5b 100644
> --- a/arch/arm/mach-imx/Makefile
> +++ b/arch/arm/mach-imx/Makefile
> @@ -31,6 +31,7 @@ obj-$(CONFIG_CPU_FREQ_IMX) += cpufreq.o
>
> ifeq ($(CONFIG_CPU_IDLE),y)
> obj-y += cpuidle.o
This target should be removed, since arch/arm/mach-imx/cpuidle.c goes
away.
Shawn
> +obj-$(CONFIG_SOC_IMX5) += cpuidle-imx5.o
> obj-$(CONFIG_SOC_IMX6Q) += cpuidle-imx6q.o
> endif
More information about the linux-arm-kernel
mailing list