aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-07-27clk: change clk_ops' ->determine_rate() prototypeBoris Brezillon20-401/+392
Clock rates are stored in an unsigned long field, but ->determine_rate() (which returns a rounded rate from a requested one) returns a long value (errors are reported using negative error codes), which can lead to long overflow if the clock rate exceed 2Ghz. Change ->determine_rate() prototype to return 0 or an error code, and pass a pointer to a clk_rate_request structure containing the expected target rate and the rate constraints imposed by clk users. The clk_rate_request structure might be extended in the future to contain other kind of constraints like the rounding policy, the maximum clock inaccuracy or other things that are not yet supported by the CCF (power consumption constraints ?). Signed-off-by: Boris Brezillon <[email protected]> CC: Jonathan Corbet <[email protected]> CC: Tony Lindgren <[email protected]> CC: Ralf Baechle <[email protected]> CC: "Emilio López" <[email protected]> CC: Maxime Ripard <[email protected]> Acked-by: Tero Kristo <[email protected]> CC: Peter De Schrijver <[email protected]> CC: Prashant Gaikwad <[email protected]> CC: Stephen Warren <[email protected]> CC: Thierry Reding <[email protected]> CC: Alexandre Courbot <[email protected]> CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] [[email protected]: Fix parent dereference problem in __clk_determine_rate()] Signed-off-by: Stephen Boyd <[email protected]> Tested-by: Romain Perier <[email protected]> Signed-off-by: Heiko Stuebner <[email protected]> [[email protected]: Folded in fix from Heiko for fixed-rate clocks without parents or a rate determining op] Signed-off-by: Stephen Boyd <[email protected]>
2015-07-24clk: exynos3250: Add cpu clock configuration data and instaniate cpu clockChanwoo Choi2-2/+31
This patch add CPU clock configuration data and instantiate the CPU clock type for Exynos3250 to support Samsung specific cpu-clock type. Cc: Sylwester Nawrocki <[email protected]> Cc: Tomasz Figa <[email protected]> Signed-off-by: Chanwoo Choi <[email protected]> Acked-by: Kyungmin Park <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Reviewed-by: Bartlomiej Zolnierkiewicz <[email protected]> Acked-by: Michael Turquette <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
2015-07-24clk: exynos5250: add cpu clock configuration data and instantiate cpu clockThomas Abraham2-0/+32
With the addition of the new Samsung specific cpu-clock type, the arm clock can be represented as a cpu-clock type. Add the CPU clock configuration data and instantiate the CPU clock type for Exynos5250. Cc: Tomasz Figa <[email protected]> Signed-off-by: Thomas Abraham <[email protected]> [b.zolnierkie: split exynos5250 support from the original patch] [b.zolnierkie: moved E5250_CPU_DIV[0,1] macros to clk-exynos5250.c] Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]> Reviewed-by: Javier Martinez Canillas <[email protected]> Tested-by: Javier Martinez Canillas <[email protected]> Acked-by: Sylwester Nawrocki <[email protected]> Acked-by: Viresh Kumar <[email protected]> Signed-off-by: Krzysztof Kozlowski <[email protected]> Acked-by: Michael Turquette <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
2015-07-20clk: Remove clk.h from clk-provider.hStephen Boyd1-1/+1
Remove clk.h from clk-provider.h so that we can clearly split clk providers from clk consumers. This will allow us to quickly detect when clock providers are using the consumer APIs by looking at the includes. Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: h8300: Remove clk.h and clkdev.h includesStephen Boyd2-4/+0
Neither of these includes are used in these files, remove them. Cc: Yoshinori Sato <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: at91: Include clk.h and slab.hStephen Boyd1-0/+2
This clock provider uses the consumer API, so include clk.h explicitly. Also include slab.h instead of relying on clkdev.h for it. Acked-by: Boris Brezillon <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: ti: Switch clk-provider.h include to clk.hStephen Boyd1-1/+1
This file isn't a clock provider but uses the consumer API, so include clk.h instead of clk-provider.h. Acked-by: Tero Kristo <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: pistachio: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Andrew Bresticker <[email protected]> Cc: Ralf Baechle <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: ingenic: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Paul Burton <[email protected]> Cc: Paul Cercueil <[email protected]> Cc: Ralf Baechle <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: si570: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Guenter Roeck <[email protected]> Acked-by: Sören Brinkmann <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: moxart: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Jonas Jensen <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: cdce925: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Mike Looijmans <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: Include clk.h in clk.cStephen Boyd1-0/+1
This file implements the clk API and so it should include clk.h directly instead of indirectly including it through clk-provider.h. Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: zynq: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Acked-by: Sören Brinkmann <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: ti: Include clk.hStephen Boyd10-0/+10
This clock provider uses the consumer API, so include clk.h explicitly. Acked-by: Tero Kristo <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: sunxi: Include clk.h and remove unused clkdev.h includesStephen Boyd6-5/+10
This clock provider uses the consumer API, so include clk.h explicitly. Also remove clkdev.h in files that aren't using it and include slab.h when clkdev.h was being used to implicitly include it. Cc: Chen-Yu Tsai <[email protected]> Cc: Maxime Ripard <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: st: Include clk.hStephen Boyd4-0/+4
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Gabriel Fernandez <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: qcom: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: highbank: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Rob Herring <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: bcm: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Acked-by: Alex Elder <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: versatile: Remove clk.h and clkdev.h includesStephen Boyd5-7/+5
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Also remove clkdev.h in files that aren't using it and replace them with slab.h in files that were relying on the implicit include of slab.h in clkdev.h. Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: ux500: Remove clk.h and clkdev.h includesStephen Boyd6-8/+2
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Also remove clkdev.h in files that aren't using it. Acked-by: Linus Walleij <[email protected]> Acked-by: Ulf Hansson <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: tegra: Properly include clk.hStephen Boyd17-17/+4
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Only include clk.h in files that are using it. Also add in a clkdev.h include that was missing in a file using clkdev APIs. Cc: Peter De Schrijver <[email protected]> Cc: Thierry Reding <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: spear: Remove clk.h includeStephen Boyd3-3/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Acked-by: Viresh Kumar <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: socfpga: Remove clk.h and clkdev.h includesStephen Boyd7-7/+6
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. The clkdev.h include isn't used either, remove it and add in slab.h to make sure things keep compiling. Acked-by: Dinh Nguyen <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: sirf: Properly include clk.hStephen Boyd3-2/+2
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Move the include of clk.h into clk-common.c because that's the only file that's really using clk.h, even if it's included into the atlas6 and prima2 files. Cc: Barry Song <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: samsung: Properly include clk.h and clkdev.hStephen Boyd23-33/+22
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Only include clk.h in files that are using it. The clkdev.h header isn't always used either, so remove it and add in slab.h where files were relying on it to include slab for them. Cc: Chanwoo Choi <[email protected]> Cc: Sylwester Nawrocki <[email protected]> Cc: Krzysztof Kozlowski <[email protected]> Cc: Kukjin Kim <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: rockchip: Properly include clk.hStephen Boyd5-3/+5
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Only include clk.h if it's actually used. Cc: Heiko Stuebner <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: nxp: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Acked-by: Joachim Eastwood <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: mxs: Include clk.h in C files that use itStephen Boyd7-8/+4
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. The clk.h include is being included in all mxs files because it's part of mxs/clk.h even though nothing actually requires it in that file. Move the clk.h include to the C files that are actually using it and remove the clk.h include from the header file. The clkdev.h include isn't used either, so drop it too. Acked-by: Shawn Guo <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: mvebu: Remove clk.h includeStephen Boyd2-2/+3
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Only include the header if necessary. The clkdev.h include isn't used here either, so drop it and add in slab.h to keep things compiling. Cc: Boris Brezillon <[email protected]> Cc: Thomas Petazzoni <[email protected]> Cc: Gregory CLEMENT <[email protected]> Cc: Jason Cooper <[email protected]> Cc: Sebastian Hesselbarth <[email protected]> Cc: Andrew Lunn <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: mmp: Remove clk.h includeStephen Boyd3-4/+1
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. The clkdev.h include isn't used either, so drop it and add in slab.h to keep things compiling. Cc: Chao Xie <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: meson8b: Properly include clk.hStephen Boyd2-1/+1
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Only include clk.h if it's actually used. Cc: Carlo Caione <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: mediatek: Properly include clk.hStephen Boyd4-2/+6
We don't need to include clk.h in header files, just forward declare struct clk here. This leads us to a few places where the include of clk.h was missing in C files. Add them. Cc: James Liao <[email protected]> Cc: Henry Chen <[email protected]> Cc: Sascha Hauer <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: keystone: Remove clk.h includeStephen Boyd2-2/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Ivan Khoronzhuk <[email protected]> Cc: Murali Karicheri <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: hisilicon: Remove clk.h includeStephen Boyd4-8/+1
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Also drop the clkdev.h include in files that aren't using it. Cc: Bintian Wang <[email protected]> Cc: Zhangfei Gao <[email protected]> Cc: Haojian Zhuang <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: wm831x: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Mark Brown <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: u300: Remove clk.h includeStephen Boyd1-1/+1
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Also add in slab.h because without clkdev.h compilation of this file would fail. Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: twl6040: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Peter Ujfalusi <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: si5351: Include clk.hStephen Boyd1-1/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Sebastian Hesselbarth <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: rk808: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Chris Zhong <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: palmas: Remove clkdev.h includesStephen Boyd1-1/+0
This driver includes clkdev.h even though it isn't used, so drop it. Cc: Peter Ujfalusi <[email protected]> Cc: Nishanth Menon <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: nomadik: Remove clk.h and clkdev.h includesStephen Boyd1-2/+1
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. This driver also includes clkdev.h even though it isn't used, so drop it too and add slab.h to make sure everything still compiles. Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: mux: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: efm32gg: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Acked-by: Uwe Kleine-König <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: clps711x: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Alexander Shiyan <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: cdce706: Include clk.hStephen Boyd1-0/+1
This clock provider uses the consumer API, so include clk.h explicitly. Cc: Max Filippov <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: axi-clkgen: Remove clk.h includeStephen Boyd1-1/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Lars-Peter Clausen <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20clk: i.MX: Remove clk.h includeStephen Boyd5-5/+0
Clock provider drivers generally shouldn't include clk.h because it's the consumer API. Remove the include here because this is a provider driver. Cc: Alexander Shiyan <[email protected]> Cc: Sascha Hauer <[email protected]> Cc: Shawn Guo <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>
2015-07-20lib/vsprintf.c: Include clk.hStephen Boyd1-0/+1
This file uses the clk API so it should include clk.h directly instead of indirectly including it through clk-provider.h. Acked-by: Geert Uytterhoeven <[email protected]> Signed-off-by: Stephen Boyd <[email protected]>