<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/clk, branch v4.3-rc2</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux</title>
<updated>2015-09-20T03:17:40+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2015-09-20T03:17:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=d590b2d4bf61ab8d9ccaae033063eabe15699f9e'/>
<id>d590b2d4bf61ab8d9ccaae033063eabe15699f9e</id>
<content type='text'>
Pull clk fixes from Stephen Boyd:
 "A few driver fixes for tegra, rockchip, and st SoCs and a two-liner in
  the framework to avoid oops when get_parent ops return out of range
  values on tegra platforms"

* tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  drivers: clk: st: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x
  clk: check for invalid parent index of orphans in __clk_init()
  clk: tegra: dfll: Properly protect OPP list
  clk: rockchip: add critical clock for rk3368
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull clk fixes from Stephen Boyd:
 "A few driver fixes for tegra, rockchip, and st SoCs and a two-liner in
  the framework to avoid oops when get_parent ops return out of range
  values on tegra platforms"

* tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  drivers: clk: st: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x
  clk: check for invalid parent index of orphans in __clk_init()
  clk: tegra: dfll: Properly protect OPP list
  clk: rockchip: add critical clock for rk3368
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers: clk: st: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x</title>
<updated>2015-09-17T18:51:43+00:00</updated>
<author>
<name>Gabriel Fernandez</name>
<email>gabriel.fernandez@linaro.org</email>
</author>
<published>2015-09-16T07:42:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=d34e210ed3a28050441f15228fd5ed929028d9cd'/>
<id>d34e210ed3a28050441f15228fd5ed929028d9cd</id>
<content type='text'>
Use a generic name for this kind of PLL

Correction in dts files are already done here:
commit 5eb26c605909 ("ARM: STi: DT: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x")

Signed-off-by: Gabriel Fernandez &lt;gabriel.fernandez@linaro.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use a generic name for this kind of PLL

Correction in dts files are already done here:
commit 5eb26c605909 ("ARM: STi: DT: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x")

Signed-off-by: Gabriel Fernandez &lt;gabriel.fernandez@linaro.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: check for invalid parent index of orphans in __clk_init()</title>
<updated>2015-09-16T22:35:18+00:00</updated>
<author>
<name>Mans Rullgard</name>
<email>mans@mansr.com</email>
</author>
<published>2015-02-15T12:33:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=9054a31d603ea82c6ed4914170a8708812a16324'/>
<id>9054a31d603ea82c6ed4914170a8708812a16324</id>
<content type='text'>
If a mux clock is initialised (by hardware or firmware) with an
invalid parent, its -&gt;get_parent() can return an out of range
index.  For example, the generic mux clock attempts to return
-EINVAL, which due to the u8 return type ends up a rather large
number.  Using this index with the parent_names[] array results
in an invalid pointer and (usually) a crash in the following
strcmp().

This patch adds a check for the parent index being in range,
ignoring clocks reporting invalid values.

Signed-off-by: Mans Rullgard &lt;mans@mansr.com&gt;
Tested-by: Rhyland Klein &lt;rklein@nvidia.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a mux clock is initialised (by hardware or firmware) with an
invalid parent, its -&gt;get_parent() can return an out of range
index.  For example, the generic mux clock attempts to return
-EINVAL, which due to the u8 return type ends up a rather large
number.  Using this index with the parent_names[] array results
in an invalid pointer and (usually) a crash in the following
strcmp().

This patch adds a check for the parent index being in range,
ignoring clocks reporting invalid values.

Signed-off-by: Mans Rullgard &lt;mans@mansr.com&gt;
Tested-by: Rhyland Klein &lt;rklein@nvidia.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: tegra: dfll: Properly protect OPP list</title>
<updated>2015-09-16T22:16:03+00:00</updated>
<author>
<name>Thierry Reding</name>
<email>treding@nvidia.com</email>
</author>
<published>2015-09-10T13:55:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=e1595d89ae8180e0d3815cc75336ac3484de0aa0'/>
<id>e1595d89ae8180e0d3815cc75336ac3484de0aa0</id>
<content type='text'>
The OPP list needs to be protected against concurrent accesses. Using
simple RCU read locks does the trick and gets rid of the following
lockdep warning:

	===============================
	[ INFO: suspicious RCU usage. ]
	4.2.0-next-20150908 #1 Not tainted
	-------------------------------
	drivers/base/power/opp.c:460 Missing rcu_read_lock() or dev_opp_list_lock protection!

	other info that might help us debug this:

	rcu_scheduler_active = 1, debug_locks = 0
	4 locks held by kworker/u8:0/6:
	 #0:  ("%s""deferwq"){++++.+}, at: [&lt;c0040d8c&gt;] process_one_work+0x118/0x4bc
	 #1:  (deferred_probe_work){+.+.+.}, at: [&lt;c0040d8c&gt;] process_one_work+0x118/0x4bc
	 #2:  (&amp;dev-&gt;mutex){......}, at: [&lt;c03b8194&gt;] __device_attach+0x20/0x118
	 #3:  (prepare_lock){+.+...}, at: [&lt;c054bc08&gt;] clk_prepare_lock+0x10/0xf8

	stack backtrace:
	CPU: 2 PID: 6 Comm: kworker/u8:0 Not tainted 4.2.0-next-20150908 #1
	Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
	Workqueue: deferwq deferred_probe_work_func
	[&lt;c001802c&gt;] (unwind_backtrace) from [&lt;c00135a4&gt;] (show_stack+0x10/0x14)
	[&lt;c00135a4&gt;] (show_stack) from [&lt;c02a8418&gt;] (dump_stack+0x94/0xd4)
	[&lt;c02a8418&gt;] (dump_stack) from [&lt;c03c6f6c&gt;] (dev_pm_opp_find_freq_ceil+0x108/0x114)
	[&lt;c03c6f6c&gt;] (dev_pm_opp_find_freq_ceil) from [&lt;c0551a3c&gt;] (dfll_calculate_rate_request+0xb8/0x170)
	[&lt;c0551a3c&gt;] (dfll_calculate_rate_request) from [&lt;c0551b10&gt;] (dfll_clk_round_rate+0x1c/0x2c)
	[&lt;c0551b10&gt;] (dfll_clk_round_rate) from [&lt;c054de2c&gt;] (clk_calc_new_rates+0x1b8/0x228)
	[&lt;c054de2c&gt;] (clk_calc_new_rates) from [&lt;c054e44c&gt;] (clk_core_set_rate_nolock+0x44/0xac)
	[&lt;c054e44c&gt;] (clk_core_set_rate_nolock) from [&lt;c054e4d8&gt;] (clk_set_rate+0x24/0x34)
	[&lt;c054e4d8&gt;] (clk_set_rate) from [&lt;c0512460&gt;] (tegra124_cpufreq_probe+0x120/0x230)
	[&lt;c0512460&gt;] (tegra124_cpufreq_probe) from [&lt;c03b9cbc&gt;] (platform_drv_probe+0x44/0xac)
	[&lt;c03b9cbc&gt;] (platform_drv_probe) from [&lt;c03b84c8&gt;] (driver_probe_device+0x218/0x304)
	[&lt;c03b84c8&gt;] (driver_probe_device) from [&lt;c03b69b0&gt;] (bus_for_each_drv+0x60/0x94)
	[&lt;c03b69b0&gt;] (bus_for_each_drv) from [&lt;c03b8228&gt;] (__device_attach+0xb4/0x118)
	ata1: SATA link down (SStatus 0 SControl 300)
	[&lt;c03b8228&gt;] (__device_attach) from [&lt;c03b77c8&gt;] (bus_probe_device+0x88/0x90)
	[&lt;c03b77c8&gt;] (bus_probe_device) from [&lt;c03b7be8&gt;] (deferred_probe_work_func+0x58/0x8c)
	[&lt;c03b7be8&gt;] (deferred_probe_work_func) from [&lt;c0040dfc&gt;] (process_one_work+0x188/0x4bc)
	[&lt;c0040dfc&gt;] (process_one_work) from [&lt;c004117c&gt;] (worker_thread+0x4c/0x4f4)
	[&lt;c004117c&gt;] (worker_thread) from [&lt;c0047230&gt;] (kthread+0xe4/0xf8)
	[&lt;c0047230&gt;] (kthread) from [&lt;c000f7d0&gt;] (ret_from_fork+0x14/0x24)

Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
Fixes: c4fe70ada40f ("clk: tegra: Add closed loop support for the DFLL")
[vince.h@nvidia.com: Unlock rcu on error path]
Signed-off-by: Vince Hsu &lt;vince.h@nvidia.com&gt;
[sboyd@codeaurora.org: Dropped second hunk that nested the rcu
read lock unnecessarily]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The OPP list needs to be protected against concurrent accesses. Using
simple RCU read locks does the trick and gets rid of the following
lockdep warning:

	===============================
	[ INFO: suspicious RCU usage. ]
	4.2.0-next-20150908 #1 Not tainted
	-------------------------------
	drivers/base/power/opp.c:460 Missing rcu_read_lock() or dev_opp_list_lock protection!

	other info that might help us debug this:

	rcu_scheduler_active = 1, debug_locks = 0
	4 locks held by kworker/u8:0/6:
	 #0:  ("%s""deferwq"){++++.+}, at: [&lt;c0040d8c&gt;] process_one_work+0x118/0x4bc
	 #1:  (deferred_probe_work){+.+.+.}, at: [&lt;c0040d8c&gt;] process_one_work+0x118/0x4bc
	 #2:  (&amp;dev-&gt;mutex){......}, at: [&lt;c03b8194&gt;] __device_attach+0x20/0x118
	 #3:  (prepare_lock){+.+...}, at: [&lt;c054bc08&gt;] clk_prepare_lock+0x10/0xf8

	stack backtrace:
	CPU: 2 PID: 6 Comm: kworker/u8:0 Not tainted 4.2.0-next-20150908 #1
	Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
	Workqueue: deferwq deferred_probe_work_func
	[&lt;c001802c&gt;] (unwind_backtrace) from [&lt;c00135a4&gt;] (show_stack+0x10/0x14)
	[&lt;c00135a4&gt;] (show_stack) from [&lt;c02a8418&gt;] (dump_stack+0x94/0xd4)
	[&lt;c02a8418&gt;] (dump_stack) from [&lt;c03c6f6c&gt;] (dev_pm_opp_find_freq_ceil+0x108/0x114)
	[&lt;c03c6f6c&gt;] (dev_pm_opp_find_freq_ceil) from [&lt;c0551a3c&gt;] (dfll_calculate_rate_request+0xb8/0x170)
	[&lt;c0551a3c&gt;] (dfll_calculate_rate_request) from [&lt;c0551b10&gt;] (dfll_clk_round_rate+0x1c/0x2c)
	[&lt;c0551b10&gt;] (dfll_clk_round_rate) from [&lt;c054de2c&gt;] (clk_calc_new_rates+0x1b8/0x228)
	[&lt;c054de2c&gt;] (clk_calc_new_rates) from [&lt;c054e44c&gt;] (clk_core_set_rate_nolock+0x44/0xac)
	[&lt;c054e44c&gt;] (clk_core_set_rate_nolock) from [&lt;c054e4d8&gt;] (clk_set_rate+0x24/0x34)
	[&lt;c054e4d8&gt;] (clk_set_rate) from [&lt;c0512460&gt;] (tegra124_cpufreq_probe+0x120/0x230)
	[&lt;c0512460&gt;] (tegra124_cpufreq_probe) from [&lt;c03b9cbc&gt;] (platform_drv_probe+0x44/0xac)
	[&lt;c03b9cbc&gt;] (platform_drv_probe) from [&lt;c03b84c8&gt;] (driver_probe_device+0x218/0x304)
	[&lt;c03b84c8&gt;] (driver_probe_device) from [&lt;c03b69b0&gt;] (bus_for_each_drv+0x60/0x94)
	[&lt;c03b69b0&gt;] (bus_for_each_drv) from [&lt;c03b8228&gt;] (__device_attach+0xb4/0x118)
	ata1: SATA link down (SStatus 0 SControl 300)
	[&lt;c03b8228&gt;] (__device_attach) from [&lt;c03b77c8&gt;] (bus_probe_device+0x88/0x90)
	[&lt;c03b77c8&gt;] (bus_probe_device) from [&lt;c03b7be8&gt;] (deferred_probe_work_func+0x58/0x8c)
	[&lt;c03b7be8&gt;] (deferred_probe_work_func) from [&lt;c0040dfc&gt;] (process_one_work+0x188/0x4bc)
	[&lt;c0040dfc&gt;] (process_one_work) from [&lt;c004117c&gt;] (worker_thread+0x4c/0x4f4)
	[&lt;c004117c&gt;] (worker_thread) from [&lt;c0047230&gt;] (kthread+0xe4/0xf8)
	[&lt;c0047230&gt;] (kthread) from [&lt;c000f7d0&gt;] (ret_from_fork+0x14/0x24)

Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
Fixes: c4fe70ada40f ("clk: tegra: Add closed loop support for the DFLL")
[vince.h@nvidia.com: Unlock rcu on error path]
Signed-off-by: Vince Hsu &lt;vince.h@nvidia.com&gt;
[sboyd@codeaurora.org: Dropped second hunk that nested the rcu
read lock unnecessarily]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux</title>
<updated>2015-09-14T23:58:35+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2015-09-14T23:58:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=d25ed277fbd4c20247286fda2014ae6a2b88316b'/>
<id>d25ed277fbd4c20247286fda2014ae6a2b88316b</id>
<content type='text'>
Pull clk fixes from Stephen Boyd:
 "A couple build fixes for drivers introduced in the merge window and a
  handful of patches to add more critical clocks on rockchip SoCs that
  are affected by newly introduced gpio clock handling"

* tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  clk: rockchip: Add pclk_peri to critical clocks on RK3066/RK3188
  clk: rockchip: add pclk_cpu to the list of rk3188 critical clocks
  clk: rockchip: handle critical clocks after registering all clocks
  clk: Hi6220: separately build stub clock driver
  clk: h8s2678: Fix compile error
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull clk fixes from Stephen Boyd:
 "A couple build fixes for drivers introduced in the merge window and a
  handful of patches to add more critical clocks on rockchip SoCs that
  are affected by newly introduced gpio clock handling"

* tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  clk: rockchip: Add pclk_peri to critical clocks on RK3066/RK3188
  clk: rockchip: add pclk_cpu to the list of rk3188 critical clocks
  clk: rockchip: handle critical clocks after registering all clocks
  clk: Hi6220: separately build stub clock driver
  clk: h8s2678: Fix compile error
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: rockchip: add critical clock for rk3368</title>
<updated>2015-09-14T19:49:39+00:00</updated>
<author>
<name>Heiko Stübner</name>
<email>heiko@sntech.de</email>
</author>
<published>2015-09-13T11:20:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=380528f742796e1244e931c51e77c9ed664f566c'/>
<id>380528f742796e1244e931c51e77c9ed664f566c</id>
<content type='text'>
Again a result of the gpio-clock-liberation the rk3368 needs the
pclk_pd_pmu marked as critical, to boot successfully.

Reported-by: Mark Rutland &lt;mark.rutland@arm.com&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Tested-by: Mark Rutland &lt;mark.rutland@arm.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Again a result of the gpio-clock-liberation the rk3368 needs the
pclk_pd_pmu marked as critical, to boot successfully.

Reported-by: Mark Rutland &lt;mark.rutland@arm.com&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Tested-by: Mark Rutland &lt;mark.rutland@arm.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc</title>
<updated>2015-09-11T00:59:04+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2015-09-11T00:59:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=d71fc239b6915a8b750e9a447311029ff45b6580'/>
<id>d71fc239b6915a8b750e9a447311029ff45b6580</id>
<content type='text'>
Pull late ARM SoC updates from Kevin Hilman:
 "This is a collection of a few late fixes and other misc stuff that had
  dependencies on things being merged from other trees.

  The bulk of the changes are for samsung/exynos SoCs for some changes
  that needed a few minor reworks so ended up a bit late.  The others
  are mainly for qcom SoCs: a couple fixes and some DTS updates"

* tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (37 commits)
  ARM: multi_v7_defconfig: Enable PBIAS regulator
  soc: qcom: smd: Correct fBLOCKREADINTR handling
  soc: qcom: smd: Use correct remote processor ID
  soc: qcom: smem: Fix errant private access
  ARM: dts: qcom: msm8974-sony-xperia-honami: Use stdout-path
  ARM: dts: qcom: msm8960-cdp: Use stdout-path
  ARM: dts: qcom: msm8660-surf: Use stdout-path
  ARM: dts: qcom: ipq8064-ap148: Use stdout-path
  ARM: dts: qcom: apq8084-mtp: Use stdout-path
  ARM: dts: qcom: apq8084-ifc6540: Use stdout-path
  ARM: dts: qcom: apq8074-dragonboard: Use stdout-path
  ARM: dts: qcom: apq8064-ifc6410: Use stdout-path
  ARM: dts: qcom: apq8064-cm-qs600: Use stdout-path
  ARM: dts: qcom: Label serial nodes for aliasing and stdout-path
  reset: ath79: Fix missing spin_lock_init
  reset: Add (devm_)reset_control_get stub functions
  ARM: EXYNOS: switch to using generic cpufreq driver for exynos4x12
  cpufreq: exynos: Remove unselectable rule for arm-exynos-cpufreq.o
  ARM: dts: add iommu property to JPEG device for exynos4
  ARM: dts: enable SPI1 for exynos4412-odroidu3
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull late ARM SoC updates from Kevin Hilman:
 "This is a collection of a few late fixes and other misc stuff that had
  dependencies on things being merged from other trees.

  The bulk of the changes are for samsung/exynos SoCs for some changes
  that needed a few minor reworks so ended up a bit late.  The others
  are mainly for qcom SoCs: a couple fixes and some DTS updates"

* tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (37 commits)
  ARM: multi_v7_defconfig: Enable PBIAS regulator
  soc: qcom: smd: Correct fBLOCKREADINTR handling
  soc: qcom: smd: Use correct remote processor ID
  soc: qcom: smem: Fix errant private access
  ARM: dts: qcom: msm8974-sony-xperia-honami: Use stdout-path
  ARM: dts: qcom: msm8960-cdp: Use stdout-path
  ARM: dts: qcom: msm8660-surf: Use stdout-path
  ARM: dts: qcom: ipq8064-ap148: Use stdout-path
  ARM: dts: qcom: apq8084-mtp: Use stdout-path
  ARM: dts: qcom: apq8084-ifc6540: Use stdout-path
  ARM: dts: qcom: apq8074-dragonboard: Use stdout-path
  ARM: dts: qcom: apq8064-ifc6410: Use stdout-path
  ARM: dts: qcom: apq8064-cm-qs600: Use stdout-path
  ARM: dts: qcom: Label serial nodes for aliasing and stdout-path
  reset: ath79: Fix missing spin_lock_init
  reset: Add (devm_)reset_control_get stub functions
  ARM: EXYNOS: switch to using generic cpufreq driver for exynos4x12
  cpufreq: exynos: Remove unselectable rule for arm-exynos-cpufreq.o
  ARM: dts: add iommu property to JPEG device for exynos4
  ARM: dts: enable SPI1 for exynos4412-odroidu3
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: rockchip: Add pclk_peri to critical clocks on RK3066/RK3188</title>
<updated>2015-09-10T20:55:30+00:00</updated>
<author>
<name>Romain Perier</name>
<email>romain.perier@gmail.com</email>
</author>
<published>2015-08-23T09:32:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=3bba75a2ec32bd5fa7024a4de3b8cf9ee113a76a'/>
<id>3bba75a2ec32bd5fa7024a4de3b8cf9ee113a76a</id>
<content type='text'>
Now that the rockchip clock subsystem does clock gating with GPIO banks,
these are no longer enabled once during probe and no longer stay enabled
for eternity. When all these clocks are disabled, the parent clock pclk_peri
might be disabled too, as no other child claims it. So, we need to add pclk_peri
to the critical clocks.

Signed-off-by: Romain Perier &lt;romain.perier@gmail.com&gt;
Tested-by: Michael Niewoehner &lt;linux@mniewoehner.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that the rockchip clock subsystem does clock gating with GPIO banks,
these are no longer enabled once during probe and no longer stay enabled
for eternity. When all these clocks are disabled, the parent clock pclk_peri
might be disabled too, as no other child claims it. So, we need to add pclk_peri
to the critical clocks.

Signed-off-by: Romain Perier &lt;romain.perier@gmail.com&gt;
Tested-by: Michael Niewoehner &lt;linux@mniewoehner.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: rockchip: add pclk_cpu to the list of rk3188 critical clocks</title>
<updated>2015-09-10T20:55:28+00:00</updated>
<author>
<name>Michael Niewoehner</name>
<email>linux@mniewoehner.de</email>
</author>
<published>2015-08-25T20:22:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=1166160ab531198f7abc773992c0e04d0f9b7600'/>
<id>1166160ab531198f7abc773992c0e04d0f9b7600</id>
<content type='text'>
pclk_cpu needs to keep running because it is needed for devices like
the act8865 regulator but with the recent gpio clock handling this is
not always the case anymore. So add it to the list of critical clocks.

Signed-off-by: Michael Niewoehner &lt;linux@mniewoehner.de&gt;
Reviewed-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pclk_cpu needs to keep running because it is needed for devices like
the act8865 regulator but with the recent gpio clock handling this is
not always the case anymore. So add it to the list of critical clocks.

Signed-off-by: Michael Niewoehner &lt;linux@mniewoehner.de&gt;
Reviewed-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: rockchip: handle critical clocks after registering all clocks</title>
<updated>2015-09-10T20:55:21+00:00</updated>
<author>
<name>Heiko Stuebner</name>
<email>heiko@sntech.de</email>
</author>
<published>2015-08-21T17:51:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=bb0f73616396e7929b68d3bdea70064003599d33'/>
<id>bb0f73616396e7929b68d3bdea70064003599d33</id>
<content type='text'>
Currently the registration of critical clocks is done in the function
shared between rk3066 and rk3188 clock trees. That results in them
getting handled maybe before all of them are registered.

Therefore move the critical clock handling down to the end of the soc-
specific clock registration function, so that all clocks are registered
before they're maybe handled as critical clock.

Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Tested-by: Michael Niewoehner &lt;linux@mniewoehner.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently the registration of critical clocks is done in the function
shared between rk3066 and rk3188 clock trees. That results in them
getting handled maybe before all of them are registered.

Therefore move the critical clock handling down to the end of the soc-
specific clock registration function, so that all clocks are registered
before they're maybe handled as critical clock.

Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Tested-by: Michael Niewoehner &lt;linux@mniewoehner.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
