linux/drivers/clk
Giuseppe Cavallaro 0f4f2afd44 drivers: clk: st: Fix flexgen lock init
While proving lock, the following warning happens
and it is fixed after initializing lock in the setup
function

INFO: trying to register non-static key.
the code is fine but needs lockdep annotation.
turning off the locking correctness validator.
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.10.27-02861-g39df285-dirty #33
[<c00154ac>] (unwind_backtrace+0x0/0xf4) from [<c0011b50>] (show_stack+0x10/0x14)
[<c0011b50>] (show_stack+0x10/0x14) from [<c00689ac>] (__lock_acquire+0x900/0xb14)
[<c00689ac>] (__lock_acquire+0x900/0xb14) from [<c0069394>] (lock_acquire+0x68/0x7c)
[<c0069394>] (lock_acquire+0x68/0x7c) from [<c04958f8>] (_raw_spin_lock_irqsave+0x48/0x5c)
[<c04958f8>] (_raw_spin_lock_irqsave+0x48/0x5c) from [<c0381e6c>] (clk_gate_endisable+0x28/0x88)
[<c0381e6c>] (clk_gate_endisable+0x28/0x88) from [<c0381ee0>] (clk_gate_enable+0xc/0x14)
[<c0381ee0>] (clk_gate_enable+0xc/0x14) from [<c0386c68>] (flexgen_enable+0x28/0x40)
[<c0386c68>] (flexgen_enable+0x28/0x40) from [<c037f260>] (__clk_enable+0x5c/0x9c)
[<c037f260>] (__clk_enable+0x5c/0x9c) from [<c037f558>] (clk_enable+0x18/0x2c)
[<c037f558>] (clk_enable+0x18/0x2c) from [<c064a1dc>] (st_lpc_of_register+0xc0/0x248)
[<c064a1dc>] (st_lpc_of_register+0xc0/0x248) from [<c0649e44>] (clocksource_of_init+0x34/0x58)
[<c0649e44>] (clocksource_of_init+0x34/0x58) from [<c0637ddc>] (sti_timer_init+0x10/0x18)
[<c0637ddc>] (sti_timer_init+0x10/0x18) from [<c06343f8>] (time_init+0x20/0x30)
[<c06343f8>] (time_init+0x20/0x30) from [<c0632984>] (start_kernel+0x20c/0x2e8)
[<c0632984>] (start_kernel+0x20c/0x2e8) from [<40008074>] (0x40008074)

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@linaro.org>
Fixes: b116517055 ("clk: st: STiH407: Support for Flexgen Clocks")
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2015-07-06 12:25:39 -07:00
..
at91 clk: at91: do not leak resources 2015-07-02 09:51:50 -07:00
bcm clk: iproc: fix bit manipulation arithmetic 2015-07-02 09:51:09 -07:00
berlin clk: berlin: Silence sparse warning 2015-05-14 17:11:21 -07:00
hisilicon clk: make several parent names const 2015-06-04 14:27:06 -07:00
keystone clk: keystone: add support for post divider register for main pll 2015-06-18 15:36:33 -07:00
mediatek clk: mediatek: Fix apmixedsys clock registration 2015-06-04 14:07:07 -07:00
meson clk: meson: add some error handling in meson_clk_register_cpu() 2015-06-12 14:30:19 -07:00
mmp clk: mmp: add timer clock for pxa168/mmp2/pxa910 2015-06-04 12:07:53 -07:00
mvebu clk: mvebu: flag the crypto clk as CLK_IGNORE_UNUSED 2015-06-18 13:51:45 -07:00
mxs clk: make several parent names const 2015-06-04 14:27:06 -07:00
nxp clk: add lpc18xx ccu clk driver 2015-06-18 15:44:48 -07:00
pistachio clk: pistachio: Add sanity checks on PLL configuration 2015-06-04 12:43:39 -07:00
pxa clk: pxa: Fix const discarding warning 2015-06-12 14:30:12 -07:00
qcom clk: qcom: Use parent rate when set rate to pixel RCG clock 2015-07-06 12:24:51 -07:00
rockchip clk: make several parent names const 2015-06-04 14:27:06 -07:00
samsung Merge branch 'clk-exynos-cpu-clk' into clk-next 2015-06-20 13:26:40 -07:00
shmobile clk: emev2: Silence sparse warnings 2015-05-14 17:11:23 -07:00
sirf clk: sirf: add CSR atlas7 clk and reset support 2015-05-20 15:43:28 -07:00
socfpga clk: socfpga: remove a stray tab 2015-06-09 18:14:27 -07:00
spear Merge branch 'clk-fixes' into clk-next 2014-07-13 07:56:45 -07:00
st drivers: clk: st: Fix flexgen lock init 2015-07-06 12:25:39 -07:00
sunxi clk: sunxi: Add support for the usb-clk on sun8i a23 and a33 SoCs 2015-06-02 10:24:39 +02:00
tegra clk: tegra: Fix hda2codec_2x clock name for Tegra30 2015-05-13 15:17:14 +02:00
ti clk: ti: Use of_clk_get_parent_count() instead of open coding 2015-06-04 13:51:37 -07:00
ux500 clk: ux500: ape[ate|trace]clk are scaleable 2015-05-07 11:32:39 -07:00
versatile clk: versatile: Silence sparse warnings 2015-05-14 17:11:27 -07:00
x86 clk: x86: drop owner assignment from platform_drivers 2014-10-20 16:20:23 +02:00
zynq clk: make several parent names const 2015-06-04 14:27:06 -07:00
clk-asm9260.c clk: asm9260: Fix of_io_request_and_map error check 2015-05-13 12:32:52 -07:00
clk-axi-clkgen.c clk: Remove .owner field for driver 2014-09-25 17:43:31 -07:00
clk-axm5516.c clk: axm55xx: Use %zu in pr_info for size_t 2015-05-13 12:32:53 -07:00
clk-bcm2835.c ARM: bcm2835: remove custom .init_time hook 2013-09-29 21:09:24 +02:00
clk-cdce706.c clk: cdce706: Add missing of_clk_del_provider call in cdce706_remove 2015-05-21 11:53:23 -07:00
clk-cdce925.c clk: cdce925: Fix printk size_t warning 2015-06-10 14:16:36 -07:00
clk-clps711x.c clk: Add CLPS711X clk driver 2014-07-28 23:30:46 -07:00
clk-composite.c clk: basic-types: Remove useless allocation failure printks 2015-05-14 16:51:50 -07:00
clk-conf.c clk: clk-conf: Fix typo in comment 2015-05-21 11:55:05 -07:00
clk-devres.c ARM: 7537/1: clk: Fix release in devm_clk_put() 2012-09-19 21:51:27 +01:00
clk-divider.c clk: basic-types: Remove useless allocation failure printks 2015-05-14 16:51:50 -07:00
clk-efm32gg.c clk/efm32gg: fix dt init prototype 2014-09-09 13:52:18 -07:00
clk-fixed-factor.c clk: fixed: Add comment to clk_fixed_set_rate 2015-06-10 14:19:43 -07:00
clk-fixed-rate.c clk: basic-types: Remove useless allocation failure printks 2015-05-14 16:51:50 -07:00
clk-fractional-divider.c clk: basic-types: Remove useless allocation failure printks 2015-05-14 16:51:50 -07:00
clk-gate.c clk: basic-types: Remove useless allocation failure printks 2015-05-14 16:51:50 -07:00
clk-gpio-gate.c clk: gpio-gate: Don't export __init functions 2015-05-14 17:11:16 -07:00
clk-highbank.c ARM: highbank: remove custom .init_time hook 2013-09-29 21:09:29 +02:00
clk-ls1x.c clk: ls1x: Fix duplicate const for parent names 2015-05-05 22:50:50 -07:00
clk-max77686.c clk: Remove .owner field for driver 2014-09-25 17:43:31 -07:00
clk-max77802.c clk: Remove .owner field for driver 2014-09-25 17:43:31 -07:00
clk-max-gen.c clk: max-gen: Silence sparse warnings 2015-05-14 17:11:18 -07:00
clk-max-gen.h clk: Add generic driver for Maxim PMIC clocks 2014-09-09 13:55:44 -07:00
clk-mb86s7x.c clk: Add clock driver for mb86s7x 2015-04-10 13:51:55 -07:00
clk-moxart.c clk: moxart: Silence sparse warnings 2015-05-14 17:11:31 -07:00
clk-mux.c clk: make strings in parent name arrays const 2015-05-05 22:50:03 -07:00
clk-nomadik.c clk: nomadik: fix multiplatform problem 2014-02-26 11:14:44 -08:00
clk-nspire.c clk: Add TI-Nspire clock drivers 2013-05-31 12:07:45 -07:00
clk-palmas.c clk: constify of_device_id array 2015-04-01 10:59:27 -07:00
clk-pwm.c clk: Add PWM clock driver 2015-04-10 14:44:43 -07:00
clk-qoriq.c clk: qoriq: Add support for the platform PLL 2015-02-18 09:56:43 -08:00
clk-rk808.c clk: RK808: add clkout driver for RK808 2014-10-14 02:18:18 +02:00
clk-s2mps11.c Please consider pulling the clk framework changes toward 3.19. It is 2014-12-20 16:42:36 -08:00
clk-si570.c clk: si570: Constify struct regmap_config 2015-03-27 00:22:49 -07:00
clk-si5351.c clk: si5351: fix .recalc_rate for multisynth 6-7 2015-05-13 11:52:06 -07:00
clk-si5351.h clk: si5351: remove variant from platform_data 2014-01-27 11:20:22 -08:00
clk-stm32f4.c clk: stm32: Fix out-by-one error path in the index lookup 2015-07-02 09:51:26 -07:00
clk-twl6040.c clk: Remove .owner field for driver 2014-09-25 17:43:31 -07:00
clk-u300.c clk: u300: Silence sparse warnings 2015-05-14 17:11:31 -07:00
clk-vt8500.c clk: vt8500: Staticize vtwm_pll_ops 2013-12-19 17:47:32 -08:00
clk-wm831x.c clk: Remove .owner field for driver 2014-09-25 17:43:31 -07:00
clk-xgene.c clk: xgene: Silence sparse warnings 2015-05-14 17:11:30 -07:00
clk.c clk: tegra: Changes for v4.2-rc1 2015-06-20 13:29:48 -07:00
clk.h clk: Replace of_clk_get_by_clkspec() with of_clk_get_from_provider() 2015-03-12 12:20:34 -07:00
clkdev.c clk: Replace of_clk_get_by_clkspec() with of_clk_get_from_provider() 2015-03-12 12:20:34 -07:00
Kconfig clk: tegra: Changes for v4.2-rc1 2015-06-20 13:29:48 -07:00
Makefile clk: stm32: Add clock driver for STM32F4[23]xxx devices 2015-06-22 16:17:01 -07:00