An error occurred fetching the project authors.
- 28 Dec, 2013 3 commits
-
-
Emilio López authored
This commit adds gating support to PLL1 on the clock driver. This makes the PLL1 implementation fully compatible with PLL4 as well. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Acked-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by:
Mike Turquette <mturquette@linaro.org>
-
Emilio López authored
This was pointed out during the review of the factor patches. Let's indicate what does that magic 5 mean. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Acked-by:
Mike Turquette <mturquette@linaro.org>
-
Emilio López authored
This commit reworks factors clock registration to be done behind a composite clock. This allows us to additionally add a gate, mux or divisors, as it will be needed by some future PLLs. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Acked-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by:
Mike Turquette <mturquette@linaro.org>
-
- 10 Nov, 2013 2 commits
-
-
Victor N. Ramos Mello authored
Fix a possible memory leak in sun4i_osc_clk_setup(). Moved clock-frequency check to save superfluous allocation. Signed-off-by:
Victor N. Ramos Mello <victornrm@gmail.com> Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com>
-
Emilio López authored
Some important clocks may get disabled as a side effect of another clock being disabled, because they have no consumers. This patch implements a mechanism so those clocks can be claimed by the driver and therefore remain enabled at all times. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com>
-
- 29 Sep, 2013 1 commit
-
-
Sebastian Hesselbarth authored
Common clock framework allows to register clock providers to get called on of_clk_init() by using CLK_OF_DECLARE. This converts sunxi clock providers to make use of it and get rid of the mach specific clk init call. As sunxi has a bunch of independent clk provider nodes, we hook current clock init to board compatible to make it called once. Signed-off-by:
Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Acked-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by:
Mike Turquette <mturquette@linaro.org>
-
- 28 Aug, 2013 1 commit
-
-
Sachin Kamat authored
__initconst should be placed between the variable name and equal sign for the variable to be placed in the intended section. Signed-off-by:
Sachin Kamat <sachin.kamat@linaro.org> Cc: Emilio López <emilio@elopez.com.ar> Signed-off-by:
Mike Turquette <mturquette@linaro.org> [mturquette@linaro.org: refreshed patch based on sunxi changes]
-
- 27 Aug, 2013 1 commit
-
-
Emilio López authored
With the recent move towards CLK_OF_DECLARE(...), the driver stopped initializing osc32k, which is compatible "fixed-clock". This is because we never called of_clk_init(NULL). Fix this by moving the only other simple clock (osc24M) to use CLK_OF_DECLARE(...) and call of_clk_init(NULL) to initialize both of them. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
- 26 Aug, 2013 6 commits
-
-
Maxime Ripard authored
The Allwinner A20 is almost identical to the earlier A10 SoC from Allwinner on many aspects, including the clocks tree. However, since the A20 has some additionnal IPs compared to the A10, the clock tree isn't exactly the same, especially when it comes to the gated clocks available. We thus need to register different clock gates for the A20. Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by:
Emilio López <emilio@elopez.com.ar>
-
Maxime Ripard authored
The A31 has a mostly different clock set compared to the other older SoCs currently supported in the Allwinner clock driver. Add support for the basic useful clocks. The other ones will come in eventually. Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by:
Emilio López <emilio@elopez.com.ar>
-
Maxime Ripard authored
The divider width used to be hardcoded. Some A31 dividers are no longer with the hardcoded width, so we need to make it specific to each divider and set it in the dividers data. Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by:
Emilio López <emilio@elopez.com.ar>
-
Maxime Ripard authored
Rename all the generic-named structure to sun4i to avoid confusion when we will introduce the sun6i (A31) clocks. Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by:
Emilio López <emilio@elopez.com.ar>
-
Emilio López authored
With the recent move towards CLK_OF_DECLARE(...), the driver stopped initializing osc32k, which is compatible "fixed-clock". This is because we never called of_clk_init(NULL). Fix this by moving the only other simple clock (osc24M) to use CLK_OF_DECLARE(...) and call of_clk_init(NULL) to initialize both of them. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Cc: Mike Turquette <mturquette@linaro.org>
-
Maxime Ripard authored
The Allwinner A10s has a slightly different gates set than the A10 and A13, so add these gates to the clk driver. Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Tested-by:
Emilio López <emilio@elopez.com.ar> Reviewed-by:
Emilio López <emilio@elopez.com.ar>
-
- 19 Aug, 2013 1 commit
-
-
James Hogan authored
Add a CLK_SET_RATE_NO_REPARENT clock flag, which will prevent muxes being reparented during clk_set_rate. To avoid breaking existing platforms, all callers of clk_register_mux() are adjusted to pass the new flag. Platform maintainers are encouraged to remove the flag if they wish to allow mux reparenting on set_rate. Signed-off-by:
James Hogan <james.hogan@imgtec.com> Reviewed-by:
Stephen Boyd <sboyd@codeaurora.org> Cc: Mike Turquette <mturquette@linaro.org> Cc: Russell King <linux@arm.linux.org.uk> Cc: Sascha Hauer <kernel@pengutronix.de> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Viresh Kumar <viresh.linux@gmail.com> Cc: Kukjin Kim <kgene.kim@samsung.com> Cc: Haojian Zhuang <haojian.zhuang@linaro.org> Cc: Chao Xie <xiechao.mail@gmail.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: "Emilio López" <emilio@elopez.com.ar> Cc: Gregory CLEMENT <gregory.clement@free-electrons.com> Cc: Maxime Ripard <maxime.ripard@free-electrons.com> Cc: Prashant Gaikwad <pgaikwad@nvidia.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Peter De Schrijver <pdeschrijver@nvidia.com> Cc: Pawel Moll <pawel.moll@arm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Andrew Chew <achew@nvidia.com> Cc: Doug Anderson <dianders@chromium.org> Cc: Heiko Stuebner <heiko@sntech.de> Cc: Paul Walmsley <pwalmsley@nvidia.com> Cc: Sylwester Nawrocki <s.nawrocki@samsung.com> Cc: Thomas Abraham <thomas.abraham@linaro.org> Cc: Tomasz Figa <t.figa@samsung.com> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-samsung-soc@vger.kernel.org Cc: spear-devel@list.st.com Cc: linux-tegra@vger.kernel.org Tested-by:
Haojian Zhuang <haojian.zhuang@gmail.com> Acked-by: Stephen Warren <swarren@nvidia.com> [tegra] Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> [sunxi] Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com> [Zynq] Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
- 08 Aug, 2013 1 commit
-
-
Axel Lin authored
clk_register_composite() and clk_register_factors() return ERR_PTR on error. Signed-off-by:
Axel Lin <axel.lin@ingics.com> Acked-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
- 29 May, 2013 2 commits
-
-
Giacomo A. Catenazzi authored
In some architectures, the #define cpu_data is not a "macro-function", so the compiler will substitute the identifier with probably something wrong. Signed-off-by:
Giacomo A. Catenazzi <cate@cateee.net> Signed-off-by:
Emilio López <emilio@elopez.com.ar> [emilio@elopez.com.ar: use cpu_mux_data instead of this_cpu_data] Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
Maxime Ripard authored
The A13 has a lot less clocks than the one found in the Allwinner A10. Add these stripped down clocks to the clock driver and in the documentation. Signed-off-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by:
Emilio López <emilio@elopez.com.ar> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
- 12 Apr, 2013 1 commit
-
-
Emilio López authored
This commit uses the new fixed-rate support on the composite clock to unify osc24M_fixed and osc24M clocks, so it matches the actual hardware. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Signed-off-by:
Mike Turquette <mturquette@linaro.org> [mturquette@linaro.org: replace clk_register_gatable_osc with a call to clk_register_composite]
-
- 04 Apr, 2013 3 commits
-
-
Emilio López authored
clk_register will copy this information, so we can just use a normal array and do one less dynamic allocation. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Reviewed-by:
Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
Emilio López authored
This flag was in place to prevent important clocks from getting gated while they had no users. Now that the UART driver supports clocks properly, we can drop this. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Reviewed-by:
Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
Emilio López authored
This patchset adds DT support for all the AXI, AHB, APB0 and APB1 gates present on sunxi SoCs. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Reviewed-by:
Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
- 27 Mar, 2013 2 commits
-
-
Emilio López authored
During the introduction of the Allwinner SoC platforms, sunxi was initially meant as a generic name for all the variants of the Allwinner SoC. It was ok at the time of the support of only the A10 and A13 that look pretty much the same; but it's beginning to be troublesome with the future addition of the Allwinner A31 (sun6i) that is quite different, and would introduce some weird logic, where sunxi would actually mean in some case sun4i and sun5i but without sun6i... Moreover, it makes the compatible strings naming scheme not consistent with other architectures, where usually for this kind of compability, we just use the oldest SoC name that has this IP, so let's do just this. Signed-off-by:
Emilio López <emilio@elopez.com.ar> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-
Emilio López authored
This commit implements the base CPU clocks for sunxi devices. It has been tested using a slightly modified cpufreq driver from the linux-sunxi 3.0 tree. Additionally, document the new bindings introduced by this patch. Idling: / # cat /sys/kernel/debug/clk/clk_summary clock enable_cnt prepare_cnt rate --------------------------------------------------------------------- osc32k 0 0 32768 osc24M_fixed 0 0 24000000 osc24M 0 0 24000000 apb1_mux 0 0 24000000 apb1 0 0 24000000 pll1 0 0 60000000 cpu 0 0 60000000 axi 0 0 60000000 ahb 0 0 60000000 apb0 0 0 30000000 dummy 0 0 0 After "yes >/dev/null &": / # cat /sys/kernel/debug/clk/clk_summary clock enable_cnt prepare_cnt rate --------------------------------------------------------------------- osc32k 0 0 32768 osc24M_fixed 0 0 24000000 osc24M 0 0 24000000 apb1_mux 0 0 24000000 apb1 0 0 24000000 pll1 0 0 1008000000 cpu 0 0 1008000000 axi 0 0 336000000 ahb 0 0 168000000 apb0 0 0 84000000 dummy 0 0 0 Signed-off-by:
Emilio López <emilio@elopez.com.ar> Acked-by:
Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by:
Mike Turquette <mturquette@linaro.org>
-