- 15 5月, 2015 1 次提交
-
-
由 Stephen Boyd 提交于
drivers/clk/versatile/clk-sp810.c:159:29: error: incompatible types for operation (<=) drivers/clk/versatile/clk-sp810.c:159:29: left side has type char const *<noident> drivers/clk/versatile/clk-sp810.c:159:29: right side has type int drivers/clk/versatile/clk-sp810.c:159:53: error: incompatible types for operation (<=) drivers/clk/versatile/clk-sp810.c:159:53: left side has type char const *<noident> drivers/clk/versatile/clk-sp810.c:159:53: right side has type int drivers/clk/versatile/clk-sp810.c:138:13: warning: symbol 'clk_sp810_of_setup' was not declared. Should it be static? Acked: Pawel Moll <pawel.moll@arm.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
-
- 09 4月, 2015 1 次提交
-
-
由 Julia Lawall 提交于
Put NULL test on the result of the previous call instead on one of its arguments. A simplified version of the semantic match that finds this problem is as follows (http://coccinelle.lip6.fr/): // <smpl> r@ expression *e1; expression *e2; identifier f; statement S1,S2; @@ e1 = f(...,e2,...); ( if (e1 == NULL || ...) S1 else S2 | *if (e2 == NULL || ...) S1 else S2 ) // </smpl> Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
-
- 02 4月, 2015 1 次提交
-
-
由 Fabian Frederick 提交于
of_device_id is always used as const. (See driver.of_match_table and open firmware functions) __initdata updated to __initconst for static const struct of_device_id ti_clkdm_match_table[] Signed-off-by: NFabian Frederick <fabf@skynet.be> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
-
- 28 11月, 2014 1 次提交
-
-
由 Pawel Moll 提交于
Now, with the CLCD DT support available, there is no more reason to keep the non-DT support for V2P-CA9. Removed, together with "some" supporting code. It was necessary to make PLAT_VERSATILE_SCHED_CLOCK optional and selected by the machines still interested in it. Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NPawel Moll <pawel.moll@arm.com> Signed-off-by: NArnd Bergmann <arnd@arndb.de>
-
- 25 6月, 2014 1 次提交
-
-
由 Rob Herring 提交于
Versatile platforms share the same OSC programming model as Integrator platforms. Add the necessary parameters and init functions for Versatile. Renaming the file to clk-versatile.c as versatile is used as the family name for ARM, Ltd. boards. Signed-off-by: NRob Herring <robh@kernel.org> Acked-by: NMike Turquette <mturquette@linaro.org> Acked-by: NArnd Bergmann <arnd@arndb.de> Reviewed-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 31 5月, 2014 1 次提交
-
-
由 Colin Ian King 提交于
commit a183da63 introduced a new error return path that does not kfree icst if the kmemdup of desc->params fails. Signed-off-by: NColin Ian King <colin.king@canonical.com> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 22 5月, 2014 1 次提交
-
-
由 Linus Walleij 提交于
The IM-PD1 PrimeCells all have pclk assignments though this clock cannot be controlled, and we need to provide this as a dummy clock for the PL061 GPIO driver to probe, so let's assign it to all the cells on the board. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 16 5月, 2014 2 次提交
-
-
由 Pawel Moll 提交于
Move the Kconfig entry for Versatile (& Express) clock drivers into a separate file and add individual options for sp810 and vexpress_osc drivers, as they are optional in some configurations and may have separate dependencies. Signed-off-by: NPawel Moll <pawel.moll@arm.com> Acked-by: NMike Turquette <mturquette@linaro.org>
-
由 Pawel Moll 提交于
Components of the Versatile Express platform (configuration microcontrollers on motherboard and daughterboards in particular) talk to each other over a custom configuration bus. They provide miscellaneous functions (from clock generator control to energy sensors) which are represented as platform devices (and Device Tree nodes). The transactions on the bus can be generated by different "bridges" in the system, some of which are universal for the whole platform (for the price of high transfer latencies), others restricted to a subsystem (but much faster). Until now drivers for such functions were using custom "func" API, which is being replaced in this patch by regmap calls. This required: * a rework (and move to drivers/bus directory, as suggested by Samuel and Arnd) of the config bus core, which is much simpler now and uses device model infrastructure (class) to keep track of the bridges; non-DT case (soon to be retired anyway) is simply covered by a special device registration function * the new config-bus driver also takes over device population, so there is no need for special matching table for of_platform_populate nor "simple-bus" hack in the arm64 model dtsi file (relevant bindings documentation has been updated); this allows all the vexpress devices fit into normal device model, making it possible to remove plenty of early inits and other hacks in the near future * adaptation of the syscfg bridge implementation in the sysreg driver, again making it much simpler; there is a special case of the "energy" function spanning two registers, where they should be both defined in the tree now, but backward compatibility is maintained in the code * modification of the relevant drivers: * hwmon - just a straight-forward API change * power/reset driver - API change * regulator - API change plus error handling simplification * osc clock driver - this one required larger rework in order to turn in into a standard platform driver Signed-off-by: NPawel Moll <pawel.moll@arm.com> Acked-by: NMark Brown <broonie@linaro.org> Acked-by: NLee Jones <lee.jones@linaro.org> Acked-by: NGuenter Roeck <linux@roeck-us.net> Acked-by: NMike Turquette <mturquette@linaro.org>
-
- 15 5月, 2014 1 次提交
-
-
由 Arnd Bergmann 提交于
The impd1 code on mach-integrator can be a loadable module, so we have to export icst_clk_register, integrator_impd1_clk_init and integrator_impd1_clk_exit. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 04 5月, 2014 1 次提交
-
-
由 Catalin Marinas 提交于
Following arm64 commit bc3ee18a (arm64: init: Move of_clk_init to time_init()), vexpress_osc_of_setup() is called via of_clk_init() long before initcalls are issued. Initialising the vexpress oscillators requires the vespress sysregs to be already initialised, so this patch adds an explicit call to vexpress_sysreg_of_early_init() in vexpress oscillator setup function. Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com> Tested-by: NWill Deacon <will.deacon@arm.com> Acked-by: NWill Deacon <will.deacon@arm.com> Tested-by: NPawel Moll <pawel.moll@arm.com> Acked-by: NPawel Moll <pawel.moll@arm.com> Cc: Mike Turquette <mturquette@linaro.org>
-
- 24 4月, 2014 1 次提交
-
-
由 Dan Carpenter 提交于
If the allocation fails then we dereference the NULL in the error path. Just return directly. Fixes: ed27ff1d ('clk: Versatile Express clock generators ("osc") driver') Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NPawel Moll <pawel.moll@arm.com>
-
- 26 2月, 2014 1 次提交
-
-
由 Linus Walleij 提交于
As we move toward multiplatform support for the Integrator family we need to localize all <mach/*> headers. This moves the impd1.h header down to the machine folder, copying the the three defines only used by the clock driver down into the clock driver. Cc: Will Deacon <will.deacon@arm.com> Cc: Jonathan Austin <jonathan.austin@arm.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Mike Turquette <mturquette@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 13 2月, 2014 3 次提交
-
-
由 Linus Walleij 提交于
If the ICST clock has a parent, respect the rate of the parent when calculating the clock frequency. As this involves modifying the ICST parameter struct, make a cloned copy (the divisor arrays should be safe) so we can update the .ref field. Do not define the reference clock on the Integrator as we have the reference clock from the device tree. Keep it everywhere else. Cc: Mike Turquette <mturquette@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Linus Walleij 提交于
As we want to actually define the parent frequency in the device tree for the ICST clocks, modify the clock registration function to take a parent argument. Cc: Mike Turquette <mturquette@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Linus Walleij 提交于
This atomic commit changes the Integrator clock implementation and the machines to register clocks from the device tree and use these instead of the previous hard-coded clocks. In the clock implementation all hard-coded clocks and the special initialization function call goes away, and is replaced by two compatible strings for the two clocks available on the core module. Cc: Mike Turquette <mturquette@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 04 1月, 2014 2 次提交
-
-
由 Linus Walleij 提交于
Register both VCO clocks, give per-logical module unique names to the clocks so we can have several IM-PD1's connected (in theory). Implement all the fixed-factor clocks as children of VCO2. Tested by using the UARTs and the PL181 MMC block on the IM-PD1, works flawlessly. Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Linus Walleij 提交于
When we have more than one of these clocks in a system (such as on the IM-PD1) we need a mechanism to pass a name for the clock. Refactor to add this as an argument. Acked-by: NMike Turquette <mturquette@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 20 12月, 2013 1 次提交
-
-
由 Sachin Kamat 提交于
clk_sp810_timerclken_of_get is used only in this file. Make it static. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 08 10月, 2013 1 次提交
-
-
由 Jonathan Austin 提交于
The order of arguments in the call to vco_set() for the ICST clocks appears to have been switched in error, which results in the VCO not being initialised correctly. This in turn stops the integrated LCD on things like Integrator/CP from working correctly. This patch fixes the order and restores the expected functionality. Reviewed-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NJonathan Austin <jonathan.austin@arm.com> Signed-off-by: NMike Turquette <mturquette@linaro.org> Cc: stable@vger.kernel.org
-
- 20 8月, 2013 1 次提交
-
-
由 James Hogan 提交于
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: NJames Hogan <james.hogan@imgtec.com> Reviewed-by: NStephen 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: NHaojian 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: NMike Turquette <mturquette@linaro.org>
-
- 20 6月, 2013 1 次提交
-
-
由 Pawel Moll 提交于
Previously all the clocks were reported as "osc". Now it will be something like "/dcc/osc@0". Signed-off-by: NPawel Moll <pawel.moll@arm.com> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 19 4月, 2013 1 次提交
-
-
由 Pawel Moll 提交于
Factor out the SP810 clocking code into a separate driver, selecting better (faster) parent at clk_prepare() time. This is to avoid problems with clocking infrastructure initialisation order, in particular to avoid dependency of fixed clock being initialized before SP810. It also makes vexpress platform OF-based clock initialisation code unnecessary. Signed-off-by: NPawel Moll <pawel.moll@arm.com> Tested-by: NCatalin Marinas <catalin.marinas@arm.com> Signed-off-by: NMike Turquette <mturquette@linaro.org> [mturquette@linaro.org: add .unprepare, FIXME comment, cleaned up code]
-
- 30 1月, 2013 1 次提交
-
-
由 Catalin Marinas 提交于
Since it is now used by code under drivers/clk/ it makes sense for this file to be in a more generic location. This is required for building vexpress support on arm64. Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com> Acked-by: NViresh Kumar <viresh.kumar@linaro.org> Acked-by: NPawel Moll <pawel.moll@arm.com> Cc: Shiraz Hashim <shiraz.hashim@st.com> Cc: Russell King <linux@arm.linux.org.uk> Signed-off-by: NPawel Moll <pawel.moll@arm.com>
-
- 25 1月, 2013 1 次提交
-
-
由 Prashant Gaikwad 提交于
Use common of_clk_init() function for clock initialization. Signed-off-by: NPrashant Gaikwad <pgaikwad@nvidia.com> Tested-by: NPawel Moll <pawel.moll@arm.com> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 22 11月, 2012 3 次提交
-
-
由 Linus Walleij 提交于
The ARM IM-PD1 add-on module has a few clock of its own, let's move also these down to the drivers/clk/versatile driver dir and get rid of any remaining oldschool Integrator clocks. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
由 Linus Walleij 提交于
It turns out that all platforms using the ICST VCO are really just touching two registers, and in the same way as well: one register with the VCO configuration as such, and one lock register that makes it possible to write to the VCO. Factor this register read/write into the ICST driver so we can reuse it in the IM-PD1 driver. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
由 Linus Walleij 提交于
The GPLv2 headers were missing and the subsystem maintainer likes them so put them in. I am the copyright holder, so explicitly licensing these under the GPLv2. Reported-by: NMike Turquette <mturquette@ti.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 30 10月, 2012 2 次提交
-
-
由 Pawel Moll 提交于
This patch adds a DT and non-DT based implementation of the common clock infrastructure for Versatile Express platform. It registers (statically or using DT) all required fixed clocks, initialises motherboard's SP810 cell (that provides clocks for SP804 timers) and explicitly registers VE "osc" driver, to make the clock generators available early. Signed-off-by: NPawel Moll <pawel.moll@arm.com> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
由 Pawel Moll 提交于
This driver provides a common clock framework hardware driver for Versatile Express clock generators (a.k.a "osc") controlled via the config bus. Signed-off-by: NPawel Moll <pawel.moll@arm.com> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 25 8月, 2012 1 次提交
-
-
由 Linus Walleij 提交于
This converts the ARM RealView machine over to using the common clock. The approach is similar to the one used for the Integrator, and we're reusing the ICST wrapper code. We have to put the clock intialization in the timer init function for the clocks to be available when initializing the timer, keeping them in early_init() is too early for the common clk. Since we now have to go down and compile drivers/clk/versatile a CONFIG_COMMON_CLK_VERSATILE symbol has been added so the proper code gets compiled into the kernel for either machine. A leftover CLK_VERSATILE in the Integrator Kconfig was fixed up to use the new symbol as well. Tested on ARM RealView PB1176. Cc: Pawel Moll <pawel.moll@arm.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
- 12 7月, 2012 2 次提交
-
-
由 Linus Walleij 提交于
This converts the Integrator platform to use common clock and the ICST driver. Since from this point not all ARM reference platforms use the clock, we define CONFIG_PLAT_VERSATILE_CLOCK and select it for all platforms except the Integrator. Open issue: I could not use the .init_early() field of the machine descriptor to initialize the clocks, but had to move them to .init_irq(), so presumably .init_early() is so early that common clock is not up, and .init_machine() is too late since it's needed for the clockevent/clocksource initialization. Any suggestions on how to solve this is very welcome. Cc: Russell King <linux@arm.linux.org.uk> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> [mturquette@linaro.org: use 'select' instead of versatile Kconfig] Signed-off-by: NMike Turquette <mturquette@linaro.org>
-
由 Linus Walleij 提交于
The ICST307 VCO clock has a shared driver in the ARM architecture. This patch provides a wrapper into the common clock framework so we can use the implementation in the ARM architecture without duplicating the code until all ARM platforms using this VCO are moved over. At that point we can merge the driver from the ARM platform into the generic file altogether. Cc: Russell King <linux@arm.linux.org.uk> Cc: Mike Turquette <mturquette@ti.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> [mturquette@linaro.org: removed versatile Kconfig] Signed-off-by: NMike Turquette <mturquette@linaro.org>
-