move the ICST library to common clocks
Subsystems (4)
cover move the ICST library to common clocks
This consolidates the last piece of the Versatile clocks, the ICST clock divider, into drivers/clk/*
If the series is OK I suggest we take this through ARM SoC since the first patch needs to be applied there, alternatively they can both go into the clk tree.
Linus Walleij (2):
ARM: plat-versatile: remove stale clock header
ARM/clk: move the ICST library to drivers/clk
arch/arm/common/Kconfig | 3 ---
arch/arm/common/Makefile | 1 -
arch/arm/plat-versatile/include/plat/clock.h | 15 ---------------
drivers/clk/versatile/Kconfig | 3 +++
drivers/clk/versatile/Makefile | 2 +-
drivers/clk/versatile/clk-icst.c | 1 +
drivers/clk/versatile/clk-icst.h | 2 --
drivers/clk/versatile/clk-impd1.c | 1 +
drivers/clk/versatile/clk-realview.c | 1 +
drivers/clk/versatile/clk-versatile.c | 1 +
{arch/arm/common => drivers/clk/versatile}/icst.c | 2 +-
.../include/asm/hardware => drivers/clk/versatile}/icst.h | 6 ++----
12 files changed, 11 insertions(+), 27 deletions(-)
delete mode 100644 arch/arm/plat-versatile/include/plat/clock.h
rename {arch/arm/common => drivers/clk/versatile}/icst.c (98%)
rename {arch/arm/include/asm/hardware => drivers/clk/versatile}/icst.h (94%)Signature · 1 line
2.9.3
PATCH 1/2 ARM: plat-versatile: remove stale clock header
All the Versatile platforms (Integrator, Versatile, RealView Versatile Express) have been migrated to use the drivers/clk subsystem. Clean out this header that is not referenced anywhere anymore.
--- arch/arm/plat-versatile/include/plat/clock.h | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 arch/arm/plat-versatile/include/plat/clock.h
arch/arm/plat-versatile/include/plat/clock.h deleted +0 -15
@@ -1,15 +0,0 @@ -#ifndef PLAT_CLOCK_H -#define PLAT_CLOCK_H - -#include <asm/hardware/icst.h> - -struct clk_ops { -long (*round)(struct clk *,unsigned long ); -int (*set)(struct clk *,unsigned long ); -void (*setvco)(struct clk *,struct icst_vco ); -}; - -int icst_clk_set (struct clk *,unsigned long ); -long icst_clk_round (struct clk *,unsigned long ); - -#endif
Signature · 1 line
2.9.3
PATCH 2/2 ARM/clk: move the ICST library to drivers/clk
In reply to Linus WalleijThis moves the ICST clock divider helper library from arch/arm/common to drivers/clk/versatile so it is maintained with the other clock drivers.
We keep the structure as a helper library intact and do not fuse it with the clk-icst.c Versatile ICST clock driver: there may be other users out there that need to use this library for their clocking, and then it will be helpful to keep the library contained. (The icst.[c|h] files could just be moved to drivers/clk/lib or a similar location to share the library.)
---
arch/arm/common/Kconfig | 3 ---
arch/arm/common/Makefile | 1 -
drivers/clk/versatile/Kconfig | 3 +++
drivers/clk/versatile/Makefile | 2 +-
drivers/clk/versatile/clk-icst.c | 1 +
drivers/clk/versatile/clk-icst.h | 2 --
drivers/clk/versatile/clk-impd1.c | 1 +
drivers/clk/versatile/clk-realview.c | 1 +
drivers/clk/versatile/clk-versatile.c | 1 +
{arch/arm/common => drivers/clk/versatile}/icst.c | 2 +-
{arch/arm/include/asm/hardware => drivers/clk/versatile}/icst.h | 6 ++----
11 files changed, 11 insertions(+), 12 deletions(-)
rename {arch/arm/common => drivers/clk/versatile}/icst.c (98%)
rename {arch/arm/include/asm/hardware => drivers/clk/versatile}/icst.h (94%)arch/arm/common/Kconfig +0 -3
@@ -1,6 +1,3 @@ -config ICST - bool - config SA1111 bool select DMABOUNCE if !ARCH_PXA
arch/arm/common/Makefile +0 -1
@@ -4,7 +4,6 @@ obj-y += firmware.o -obj-$(CONFIG_ICST) += icst.o obj-$(CONFIG_SA1111) += sa1111.o obj-$(CONFIG_DMABOUNCE) += dmabounce.o obj-$(CONFIG_SHARP_LOCOMO) += locomo.o
drivers/clk/versatile/Kconfig +3 -0
@@ -1,3 +1,6 @@ +config ICST + bool + config COMMON_CLK_VERSATILE bool "Clock driver for ARM Reference designs" depends on ARCH_INTEGRATOR || ARCH_REALVIEW || \
drivers/clk/versatile/Makefile +1 -1
@@ -1,5 +1,5 @@ # Makefile for Versatile-specific clocks -obj-$(CONFIG_ICST) += clk-icst.o clk-versatile.o +obj-$(CONFIG_ICST) += icst.o clk-icst.o clk-versatile.o obj-$(CONFIG_INTEGRATOR_IMPD1) += clk-impd1.o obj-$(CONFIG_ARCH_REALVIEW) += clk-realview.o obj-$(CONFIG_CLK_SP810) += clk-sp810.o
drivers/clk/versatile/clk-icst.c +1 -0
@@ -22,6 +22,7 @@#include <linux/regmap.h> #include <linux/mfd/syscon.h> +#include "icst.h" #include "clk-icst.h" /* Magic unlocking token used on all Versatile boards */
drivers/clk/versatile/clk-icst.h +0 -2
@@ -1,5 +1,3 @@ -#include <asm/hardware/icst.h> -/** * struct clk_icst_desc - descriptor for the ICST VCO * @params: ICST parameters
drivers/clk/versatile/clk-impd1.c +1 -0
@@ -12,6 +12,7 @@#include <linux/io.h> #include <linux/platform_data/clk-integrator.h> +#include "icst.h" #include "clk-icst.h" #define IMPD1_OSC1 0x00
drivers/clk/versatile/clk-realview.c +1 -0
@@ -11,6 +11,7 @@#include <linux/io.h> #include <linux/clk-provider.h> +#include "icst.h" #include "clk-icst.h" #define REALVIEW_SYS_OSC0_OFFSET 0x0C
drivers/clk/versatile/clk-versatile.c +1 -0
@@ -12,6 +12,7 @@#include <linux/of.h> #include <linux/of_address.h> +#include "icst.h" #include "clk-icst.h" #define INTEGRATOR_HDR_LOCK_OFFSET 0x14
drivers/clk/versatile/icst.c renamed from arch/arm/common/icst.c +1 -1
@@ -17,7 +17,7 @@#include <linux/module.h> #include <linux/kernel.h> #include <asm/div64.h> -#include <asm/hardware/icst.h> +#include "icst.h" /* * Divisors for each OD setting.
drivers/clk/versatile/icst.h renamed from arch/arm/include/asm/hardware/icst.h +2 -4
@@ -1,6 +1,4 @@/* -* arch/arm/include/asm/hardware/icst.h -* * Copyright (C) 2003 Deep Blue Solutions, Ltd, All Rights Reserved. * * This program is free software; you can redistribute it and/or modify
@@ -11,8 +9,8 @@* clock generators. See http://www.idt.com/ for more information * on these devices. */ -#ifndef ASMARM_HARDWARE_ICST_H -#define ASMARM_HARDWARE_ICST_H +#ifndef ICST_H +#define ICST_H struct icst_params { unsigned long ref;
Signature · 1 line
2.9.3
PATCH 2/2 ARM/clk: move the ICST library to drivers/clk
Quoted 4 lines · Linus Walleij
This moves the ICST clock divider helper library from
arch/arm/commontodrivers/clk/versatileso it is maintained with the other clock drivers.
Quoted 8 lines
We keep the structure as a helper library intact and do not fuse it with the
clk-icst.cVersatile ICST clock driver: there may be other users out there that need to use this library for their clocking, and then it will be helpful to keep the library contained. (The icst.[c|h] files could just be moved todrivers/clk/libor a similar location to share the library.)Signed-off-by Linus Walleij <[email protected]>
CLK maintainers: could you ACK this so that I can ask the ARM SoC tree to pull in these two patches?
Or do you prefer to take all patches in the CLK tree so I should ask the ARM people to ACK it?
Yours,
Linus Walleij
PATCH 2/2 ARM/clk: move the ICST library to drivers/clk
Quoted 13 lines · Linus Walleij
Quoted 11 lines · Linus Walleij
This moves the ICST clock divider helper library from
arch/arm/commontodrivers/clk/versatileso it is maintained with the other clock drivers.We keep the structure as a helper library intact and do not fuse it with the
clk-icst.cVersatile ICST clock driver: there may be other users out there that need to use this library for their clocking, and then it will be helpful to keep the library contained. (The icst.[c|h] files could just be moved todrivers/clk/libor a similar location to share the library.)
Quoted 8 lines
Quoted 1 line
Signed-off-by Linus Walleij <[email protected]>CLK maintainers: could you ACK this so that I can ask the ARM SoC tree to pull in these two patches?
Or do you prefer to take all patches in the CLK tree so I should ask the ARM people to ACK it?
Either way is fine.
Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project