- 11 6月, 2014 5 次提交
-
-
由 Maxime Ripard 提交于
Since we start to have a lot of clocks to protect, some of them in a few SoCs only, it becomes difficult to handle the clock protection without having to add per machine exceptions. Add per-SoC data to tell which clock to leave enabled. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
Since we have a folder of our own, we can actually make use of it by splitting the huge clock file into several sub drivers. The gmac clock is pretty easy to deal with, since it's pretty much isolated and doesn't have any dependency on the other clocks. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
Since we have a folder of our own, we can actually make use of it by splitting the huge clock file into several sub drivers. The main oscillator is pretty easy to deal with, since it's pretty much isolated. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
Callers of clk_put must disable the clock first. This also means that as long as the clock is enabled the driver should hold a reference to that clock. Hence, the call to clk_put here are bogus and should be removed. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
The A31 USB clock slightly differ from its older counterparts, mostly because it has a different gate for each PHY, while the older one had a single gate for all the phy. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: NHans de Goede <hdegoede@redhat.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
- 21 5月, 2014 2 次提交
-
-
由 Rob Herring 提交于
Adding function type checking to CLK_OF_DECLARE found a type mismatch with sunxi_init_clocks. The function takes a single struct device_node parameter. Signed-off-by: NRob Herring <robh@kernel.org> Acked-by: NMike Turquette <mturquette@linaro.org> Cc: "Emilio López" <emilio@elopez.com.ar> Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
-
由 Rob Herring 提交于
Use for_each_matching_node_and_match instead of for_each_matching_node plus of_match_node to avoid searching the DT twice for each node. The sunxi DT scanning code should really be re-worked rather than have its own private matching infrastructure. It is working around needing a function pointer and a data pointer for each compatible match. Signed-off-by: NRob Herring <robh@kernel.org> Cc: "Emilio López" <emilio@elopez.com.ar> Acked-by: NMike Turquette <mturquette@linaro.org> Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
-
- 15 5月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
__clk_get_hw is supposed to be used by clk providers, not clk consumers. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NUlf Hansson <ulf.hansson@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 06 5月, 2014 1 次提交
-
-
由 Emilio López 提交于
HdG: add header exporting clk_sunxi_mmc_phase_control Signed-off-by: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 20 3月, 2014 3 次提交
-
-
由 Emilio López 提交于
This should read MOD0 and not MMC; MMC is just one example of a MOD0 clock. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
Some divisor calculations were misrounded, causing higher than requested rates on some clocks. Fix them up using DIV_ROUND_UP, and replace one homebrew instance of it as well with the right macro. Reported-by: NBoris BREZILLON <b.brezillon.dev@gmail.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
Allwinner actually reworked the PLL4 on A20; now it's compatible with the sun4i PLL5/6 design previous to any divisions, as well as to the new PLL8 in sun7i. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 18 2月, 2014 5 次提交
-
-
由 Maxime Ripard 提交于
The Allwinner A10 compatibles were following a slightly different compatible patterns than the rest of the SoCs for historical reasons. Add compatibles matching the other pattern to the clock driver for consistency, and keep the older one for backward compatibility. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Chen-Yu Tsai 提交于
The Allwinner A20/A31 clock module controls the transmit clock source and interface type of the GMAC ethernet controller. Model this as a single clock for GMAC drivers to use. Signed-off-by: NChen-Yu Tsai <wens@csie.org> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
The A31 has a slightly different PLL6 clock. Add support for this new clock in our driver. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Roman Byshko 提交于
Add register definitions for the usb-clk register found on sun4i, sun5i and sun7i SoCs. Signed-off-by: NRoman Byshko <rbyshko@gmail.com> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Hans de Goede 提交于
The usb-clk register is special in that it not only contains clk gate bits, but also has a few reset bits. This commit adds support for this by allowing gates type sunxi clks to also register a reset controller. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
- 03 2月, 2014 3 次提交
-
-
由 Chen-Yu Tsai 提交于
Divs clocks consist of a parent factor clock with multiple outputs, and seperate clocks for each output. Get the name of the parent clock from the parent factor clock, instead of the DT node name. Signed-off-by: NChen-Yu Tsai <wens@csie.org> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Chen-Yu Tsai 提交于
Some factor clocks, such as the parent clock of pll5 and pll6, have multiple output names. Add the corresponding names to factors_data tied to compatible string. Signed-off-by: NChen-Yu Tsai <wens@csie.org> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
由 Chen-Yu Tsai 提交于
sunxi clock drivers use dt node name as clock name, but clock nodes should be named clk@X, so the names would be the same. Let the drivers read clock names from dt clock-output-names property. Signed-off-by: NChen-Yu Tsai <wens@csie.org> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NEmilio López <emilio@elopez.com.ar>
-
- 28 1月, 2014 1 次提交
-
-
由 Emilio López 提交于
Currently, we are allocating space for two pointers, when we actually may need to store three of them (two divisors plus the original clock). Fix this, and change sizeof(type) to sizeof(*var) to keep checkpatch.pl happy. Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 29 12月, 2013 8 次提交
-
-
由 Chen-Yu Tsai 提交于
This patch adds support for the external clock outputs on the Allwinner A20 SoC. The clock outputs are similar to "module 0" type clocks, with different offsets and widths for clock factors. Signed-off-by: NChen-Yu Tsai <wens@csie.org> Acked-by: NEmilio López <emilio@elopez.com.ar>
-
由 Emilio López 提交于
The DT nodes should look like abc_clk: clk@deadbeef { ... clock-output-names = "abc"; } But our old DT nodes look like abc: abc@deadbeef { ... } So, let's support both formats, until we can transition everything to the new, correct one. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
This commit implements support for the "module 0" type of clocks, as used by MMC, IR, NAND, SATA and other components. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
This commit implements PLL5 and PLL6 support on the sunxi clock driver. These PLLs use a similar factor clock, but differ on their outputs. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
We will be needing this to register a factor clock as parent with leaf divisors on a single call. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
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: NEmilio López <emilio@elopez.com.ar> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
This was pointed out during the review of the factor patches. Let's indicate what does that magic 5 mean. Signed-off-by: NEmilio López <emilio@elopez.com.ar> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Emilio López 提交于
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: NEmilio López <emilio@elopez.com.ar> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org>
-
- 10 11月, 2013 2 次提交
-
-
由 Victor N. Ramos Mello 提交于
Fix a possible memory leak in sun4i_osc_clk_setup(). Moved clock-frequency check to save superfluous allocation. Signed-off-by: NVictor N. Ramos Mello <victornrm@gmail.com> Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
-
由 Emilio López 提交于
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: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
-
- 30 9月, 2013 1 次提交
-
-
由 Sebastian Hesselbarth 提交于
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: NSebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Acked-by: NMike Turquette <mturquette@linaro.org>
-
- 28 8月, 2013 2 次提交
-
-
由 Sachin Kamat 提交于
__initconst should be placed between the variable name and equal sign for the variable to be placed in the intended section. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Cc: Emilio López <emilio@elopez.com.ar> Signed-off-by: NMike Turquette <mturquette@linaro.org> [mturquette@linaro.org: refreshed patch based on sunxi changes]
-
由 Emilio López 提交于
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: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 26 8月, 2013 6 次提交
-
-
由 Maxime Ripard 提交于
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: NMaxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
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: NMaxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
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: NMaxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: NEmilio López <emilio@elopez.com.ar>
-
由 Maxime Ripard 提交于
Rename all the generic-named structure to sun4i to avoid confusion when we will introduce the sun6i (A31) clocks. Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: NEmilio López <emilio@elopez.com.ar>
-
由 Emilio López 提交于
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: NEmilio López <emilio@elopez.com.ar> Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com> Cc: Mike Turquette <mturquette@linaro.org>
-
由 Maxime Ripard 提交于
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: NMaxime Ripard <maxime.ripard@free-electrons.com> Tested-by: NEmilio López <emilio@elopez.com.ar> Reviewed-by: NEmilio López <emilio@elopez.com.ar>
-