[PATCH v6 0/7] Per-user clock constraints

From: Tomeu Vizoso
Date: Fri Nov 28 2014 - 09:06:54 EST


Hello,

this sixth version of the series has a small fix in the per-user clks commit
and the following changes in the clk constraints patch:

* Take the prepare lock before removing a per-user clk
* Init per-user clks list before adding the first clk
* Pass the constraints to determine_rate and let clk implementations deal
with constraints
* Add clk_set_rate_range

A rough test module was used to test this:

http://cgit.collabora.com/git/user/tomeu/linux.git/commit/?h=per-user-clk-constraints-v6&id=1bada453ab690a1c5be28667d94a4861bc84f8ef

The first five patches are just cleanups that should be desirable on their own,
and that should make easier to review the actual per-user clock patch.

The sixth patch actually moves the per-clock data that was stored in struct
clk to a new struct clk_core and adds references to it from both struct clk and
struct clk_hw. struct clk is now ready to contain information that is specific
to a given clk consumer.

The seventh patch adds API for setting floor and ceiling constraints and stores
that information on the per-user struct clk, which is iterable from struct
clk_core.

They are based on top of linux-next 20141128.

http://cgit.collabora.com/git/user/tomeu/linux.git/log/?h=per-user-clk-constraints-v6

Thanks,

Tomeu

Tomeu Vizoso (7):
clk: Remove unused function __clk_get_prepare_count
clk: Don't try to use a struct clk* after it could have been freed
clk: Don't expose __clk_get_accuracy
clk: change clk_debugfs_add_file to take a struct clk_hw
clk: Change clk_ops->determine_rate to return a clk_hw as the best
parent
clk: Make clk API return per-user struct clk instances
clk: Add floor and ceiling constraints to clock rates

Documentation/clk.txt | 4 +-
arch/arm/mach-omap2/cclock3xxx_data.c | 108 +++--
arch/arm/mach-omap2/clock.h | 11 +-
arch/arm/mach-omap2/clock_common_data.c | 5 +-
arch/arm/mach-omap2/dpll3xxx.c | 2 +
arch/arm/mach-omap2/dpll44xx.c | 2 +
arch/mips/alchemy/common/clock.c | 18 +-
drivers/clk/at91/clk-programmable.c | 6 +-
drivers/clk/bcm/clk-kona.c | 6 +-
drivers/clk/clk-composite.c | 18 +-
drivers/clk/clk.c | 807 +++++++++++++++++++++-----------
drivers/clk/clk.h | 5 +
drivers/clk/clkdev.c | 73 ++-
drivers/clk/hisilicon/clk-hi3620.c | 4 +-
drivers/clk/qcom/clk-pll.c | 1 +
drivers/clk/qcom/clk-rcg.c | 24 +-
drivers/clk/qcom/clk-rcg2.c | 34 +-
drivers/clk/sunxi/clk-factors.c | 6 +-
drivers/clk/sunxi/clk-sun6i-ar100.c | 6 +-
include/linux/clk-private.h | 41 +-
include/linux/clk-provider.h | 26 +-
include/linux/clk.h | 28 ++
include/linux/clk/ti.h | 4 +
23 files changed, 849 insertions(+), 390 deletions(-)

--
1.9.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/