<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/clk/mmp, branch v4.5</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>clk: mmp: stop using platform headers</title>
<updated>2015-12-01T20:44:22+00:00</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2014-04-15T13:20:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=990f2f223cb479a15afda9eb8552582aa82e2404'/>
<id>990f2f223cb479a15afda9eb8552582aa82e2404</id>
<content type='text'>
The mmp clock drivers currently hardcode the physical addresses for
the clock registers. This is generally a bad idea, and it also gets in
the way of multiplatform builds, which make the platform header files
inaccessible to device drivers.

To work around the header file problem, this patch changes the calling
convention so the three mmp clock drivers get initialized with the base
addresses as arguments from the platform code.

It would still be useful to have a larger rework of the clock drivers,
with DT integration to let the clocks actually be probed automatically,
and the base addresses passed as DT properties. I am unsure if anyone
is still interested in the mmp platform, so it is possible that this
won't happen.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: Mike Turquette &lt;mturquette@linaro.org&gt;
Cc: Chao Xie &lt;chao.xie@marvell.com&gt;
Cc: Eric Miao &lt;eric.y.miao@gmail.com&gt;
Cc: Haojian Zhuang &lt;haojian.zhuang@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The mmp clock drivers currently hardcode the physical addresses for
the clock registers. This is generally a bad idea, and it also gets in
the way of multiplatform builds, which make the platform header files
inaccessible to device drivers.

To work around the header file problem, this patch changes the calling
convention so the three mmp clock drivers get initialized with the base
addresses as arguments from the platform code.

It would still be useful to have a larger rework of the clock drivers,
with DT integration to let the clocks actually be probed automatically,
and the base addresses passed as DT properties. I am unsure if anyone
is still interested in the mmp platform, so it is possible that this
won't happen.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: Mike Turquette &lt;mturquette@linaro.org&gt;
Cc: Chao Xie &lt;chao.xie@marvell.com&gt;
Cc: Eric Miao &lt;eric.y.miao@gmail.com&gt;
Cc: Haojian Zhuang &lt;haojian.zhuang@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: mmp: Convert to clk_hw based provider APIs</title>
<updated>2015-08-24T23:48:49+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-07-31T00:20:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=aef28cb6b3b22fb5a6718650340d2efcfe10dd20'/>
<id>aef28cb6b3b22fb5a6718650340d2efcfe10dd20</id>
<content type='text'>
We're removing struct clk from the clk provider API, so switch
this code to using the clk_hw based provider APIs.

Cc: Chao Xie &lt;chao.xie@marvell.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>
We're removing struct clk from the clk provider API, so switch
this code to using the clk_hw based provider APIs.

Cc: Chao Xie &lt;chao.xie@marvell.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: Replace __clk_get_num_parents with clk_hw_get_num_parents()</title>
<updated>2015-08-24T23:48:43+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-06-25T23:53:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=497295afb5ab070211a9963c80a89bc6fbfd6197'/>
<id>497295afb5ab070211a9963c80a89bc6fbfd6197</id>
<content type='text'>
Mostly converted with the following semantic patch:

@@
struct clk_hw *E;
@@

-__clk_get_num_parents(E-&gt;clk)
+clk_hw_get_num_parents(E)

Acked-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
Cc: Chao Xie &lt;chao.xie@marvell.com&gt;
Cc: Krzysztof Kozlowski &lt;k.kozlowski@samsung.com&gt;
Cc: Javier Martinez Canillas &lt;javier.martinez@collabora.co.uk&gt;
Cc: Tomasz Figa &lt;tomasz.figa@gmail.com&gt;
Cc: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Cc: "Emilio López" &lt;emilio@elopez.com.ar&gt;
Acked-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Cc: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Acked-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.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>
Mostly converted with the following semantic patch:

@@
struct clk_hw *E;
@@

-__clk_get_num_parents(E-&gt;clk)
+clk_hw_get_num_parents(E)

Acked-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
Cc: Chao Xie &lt;chao.xie@marvell.com&gt;
Cc: Krzysztof Kozlowski &lt;k.kozlowski@samsung.com&gt;
Cc: Javier Martinez Canillas &lt;javier.martinez@collabora.co.uk&gt;
Cc: Tomasz Figa &lt;tomasz.figa@gmail.com&gt;
Cc: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Cc: "Emilio López" &lt;emilio@elopez.com.ar&gt;
Acked-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Cc: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Acked-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk/mmp: use kmemdup rather than duplicating its implementation</title>
<updated>2015-08-07T22:16:28+00:00</updated>
<author>
<name>Andrzej Hajda</name>
<email>a.hajda@samsung.com</email>
</author>
<published>2015-08-07T07:59:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=e8f35aabae837e6d1a1d82a8cc54f8ce7366ed49'/>
<id>e8f35aabae837e6d1a1d82a8cc54f8ce7366ed49</id>
<content type='text'>
The patch was generated using fixed coccinelle semantic patch
scripts/coccinelle/api/memdup.cocci [1].

[1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

Signed-off-by: Andrzej Hajda &lt;a.hajda@samsung.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>
The patch was generated using fixed coccinelle semantic patch
scripts/coccinelle/api/memdup.cocci [1].

[1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

Signed-off-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'cleanup-clk-h-includes' into clk-next</title>
<updated>2015-07-28T18:59:09+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-07-21T18:22:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=9cfad9bc472a4bdd5ee7d9e713113a9f5a676704'/>
<id>9cfad9bc472a4bdd5ee7d9e713113a9f5a676704</id>
<content type='text'>
* cleanup-clk-h-includes: (62 commits)
  clk: Remove clk.h from clk-provider.h
  clk: h8300: Remove clk.h and clkdev.h includes
  clk: at91: Include clk.h and slab.h
  clk: ti: Switch clk-provider.h include to clk.h
  clk: pistachio: Include clk.h
  clk: ingenic: Include clk.h
  clk: si570: Include clk.h
  clk: moxart: Include clk.h
  clk: cdce925: Include clk.h
  clk: Include clk.h in clk.c
  clk: zynq: Include clk.h
  clk: ti: Include clk.h
  clk: sunxi: Include clk.h and remove unused clkdev.h includes
  clk: st: Include clk.h
  clk: qcom: Include clk.h
  clk: highbank: Include clk.h
  clk: bcm: Include clk.h
  clk: versatile: Remove clk.h and clkdev.h includes
  clk: ux500: Remove clk.h and clkdev.h includes
  clk: tegra: Properly include clk.h
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* cleanup-clk-h-includes: (62 commits)
  clk: Remove clk.h from clk-provider.h
  clk: h8300: Remove clk.h and clkdev.h includes
  clk: at91: Include clk.h and slab.h
  clk: ti: Switch clk-provider.h include to clk.h
  clk: pistachio: Include clk.h
  clk: ingenic: Include clk.h
  clk: si570: Include clk.h
  clk: moxart: Include clk.h
  clk: cdce925: Include clk.h
  clk: Include clk.h in clk.c
  clk: zynq: Include clk.h
  clk: ti: Include clk.h
  clk: sunxi: Include clk.h and remove unused clkdev.h includes
  clk: st: Include clk.h
  clk: qcom: Include clk.h
  clk: highbank: Include clk.h
  clk: bcm: Include clk.h
  clk: versatile: Remove clk.h and clkdev.h includes
  clk: ux500: Remove clk.h and clkdev.h includes
  clk: tegra: Properly include clk.h
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: fix some determine_rate implementations</title>
<updated>2015-07-28T01:13:32+00:00</updated>
<author>
<name>Boris Brezillon</name>
<email>boris.brezillon@free-electrons.com</email>
</author>
<published>2015-07-09T20:39:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=57d866e606ddf2a0cd51f7140cfd8df1fdaa48f6'/>
<id>57d866e606ddf2a0cd51f7140cfd8df1fdaa48f6</id>
<content type='text'>
Some determine_rate implementations are not returning an error
when they failed to adapt the rate according to the rate request.
Fix them so that they return an error instead of silently
returning 0.

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
CC: Jonathan Corbet &lt;corbet@lwn.net&gt;
CC: Tony Lindgren &lt;tony@atomide.com&gt;
CC: Ralf Baechle &lt;ralf@linux-mips.org&gt;
CC: "Emilio López" &lt;emilio@elopez.com.ar&gt;
CC: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Cc: Tero Kristo &lt;t-kristo@ti.com&gt;
CC: Peter De Schrijver &lt;pdeschrijver@nvidia.com&gt;
CC: Prashant Gaikwad &lt;pgaikwad@nvidia.com&gt;
CC: Stephen Warren &lt;swarren@wwwdotorg.org&gt;
CC: Thierry Reding &lt;thierry.reding@gmail.com&gt;
CC: Alexandre Courbot &lt;gnurou@gmail.com&gt;
CC: linux-doc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-omap@vger.kernel.org
CC: linux-mips@linux-mips.org
CC: linux-tegra@vger.kernel.org
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some determine_rate implementations are not returning an error
when they failed to adapt the rate according to the rate request.
Fix them so that they return an error instead of silently
returning 0.

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
CC: Jonathan Corbet &lt;corbet@lwn.net&gt;
CC: Tony Lindgren &lt;tony@atomide.com&gt;
CC: Ralf Baechle &lt;ralf@linux-mips.org&gt;
CC: "Emilio López" &lt;emilio@elopez.com.ar&gt;
CC: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Cc: Tero Kristo &lt;t-kristo@ti.com&gt;
CC: Peter De Schrijver &lt;pdeschrijver@nvidia.com&gt;
CC: Prashant Gaikwad &lt;pgaikwad@nvidia.com&gt;
CC: Stephen Warren &lt;swarren@wwwdotorg.org&gt;
CC: Thierry Reding &lt;thierry.reding@gmail.com&gt;
CC: Alexandre Courbot &lt;gnurou@gmail.com&gt;
CC: linux-doc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-omap@vger.kernel.org
CC: linux-mips@linux-mips.org
CC: linux-tegra@vger.kernel.org
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: change clk_ops' -&gt;determine_rate() prototype</title>
<updated>2015-07-28T01:12:01+00:00</updated>
<author>
<name>Boris Brezillon</name>
<email>boris.brezillon@free-electrons.com</email>
</author>
<published>2015-07-07T18:48:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=0817b62cc037a56c5e4238c7eb7522299ea27aef'/>
<id>0817b62cc037a56c5e4238c7eb7522299ea27aef</id>
<content type='text'>
Clock rates are stored in an unsigned long field, but -&gt;determine_rate()
(which returns a rounded rate from a requested one) returns a long
value (errors are reported using negative error codes), which can lead
to long overflow if the clock rate exceed 2Ghz.

Change -&gt;determine_rate() prototype to return 0 or an error code, and pass
a pointer to a clk_rate_request structure containing the expected target
rate and the rate constraints imposed by clk users.

The clk_rate_request structure might be extended in the future to contain
other kind of constraints like the rounding policy, the maximum clock
inaccuracy or other things that are not yet supported by the CCF
(power consumption constraints ?).

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
CC: Jonathan Corbet &lt;corbet@lwn.net&gt;
CC: Tony Lindgren &lt;tony@atomide.com&gt;
CC: Ralf Baechle &lt;ralf@linux-mips.org&gt;
CC: "Emilio López" &lt;emilio@elopez.com.ar&gt;
CC: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Acked-by: Tero Kristo &lt;t-kristo@ti.com&gt;
CC: Peter De Schrijver &lt;pdeschrijver@nvidia.com&gt;
CC: Prashant Gaikwad &lt;pgaikwad@nvidia.com&gt;
CC: Stephen Warren &lt;swarren@wwwdotorg.org&gt;
CC: Thierry Reding &lt;thierry.reding@gmail.com&gt;
CC: Alexandre Courbot &lt;gnurou@gmail.com&gt;
CC: linux-doc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-omap@vger.kernel.org
CC: linux-mips@linux-mips.org
CC: linux-tegra@vger.kernel.org
[sboyd@codeaurora.org: Fix parent dereference problem in
__clk_determine_rate()]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Tested-by: Romain Perier &lt;romain.perier@gmail.com&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
[sboyd@codeaurora.org: Folded in fix from Heiko for fixed-rate
clocks without parents or a rate determining op]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Clock rates are stored in an unsigned long field, but -&gt;determine_rate()
(which returns a rounded rate from a requested one) returns a long
value (errors are reported using negative error codes), which can lead
to long overflow if the clock rate exceed 2Ghz.

Change -&gt;determine_rate() prototype to return 0 or an error code, and pass
a pointer to a clk_rate_request structure containing the expected target
rate and the rate constraints imposed by clk users.

The clk_rate_request structure might be extended in the future to contain
other kind of constraints like the rounding policy, the maximum clock
inaccuracy or other things that are not yet supported by the CCF
(power consumption constraints ?).

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
CC: Jonathan Corbet &lt;corbet@lwn.net&gt;
CC: Tony Lindgren &lt;tony@atomide.com&gt;
CC: Ralf Baechle &lt;ralf@linux-mips.org&gt;
CC: "Emilio López" &lt;emilio@elopez.com.ar&gt;
CC: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Acked-by: Tero Kristo &lt;t-kristo@ti.com&gt;
CC: Peter De Schrijver &lt;pdeschrijver@nvidia.com&gt;
CC: Prashant Gaikwad &lt;pgaikwad@nvidia.com&gt;
CC: Stephen Warren &lt;swarren@wwwdotorg.org&gt;
CC: Thierry Reding &lt;thierry.reding@gmail.com&gt;
CC: Alexandre Courbot &lt;gnurou@gmail.com&gt;
CC: linux-doc@vger.kernel.org
CC: linux-kernel@vger.kernel.org
CC: linux-arm-kernel@lists.infradead.org
CC: linux-omap@vger.kernel.org
CC: linux-mips@linux-mips.org
CC: linux-tegra@vger.kernel.org
[sboyd@codeaurora.org: Fix parent dereference problem in
__clk_determine_rate()]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Tested-by: Romain Perier &lt;romain.perier@gmail.com&gt;
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
[sboyd@codeaurora.org: Folded in fix from Heiko for fixed-rate
clocks without parents or a rate determining op]
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: mmp: Remove clk.h include</title>
<updated>2015-07-20T17:53:12+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@codeaurora.org</email>
</author>
<published>2015-06-19T22:00:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=528b76976fd22d65a07e244ec8996de492941408'/>
<id>528b76976fd22d65a07e244ec8996de492941408</id>
<content type='text'>
Clock provider drivers generally shouldn't include clk.h because
it's the consumer API. Remove the include here because this is a
provider driver. The clkdev.h include isn't used either, so drop
it and add in slab.h to keep things compiling.

Cc: Chao Xie &lt;chao.xie@marvell.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>
Clock provider drivers generally shouldn't include clk.h because
it's the consumer API. Remove the include here because this is a
provider driver. The clkdev.h include isn't used either, so drop
it and add in slab.h to keep things compiling.

Cc: Chao Xie &lt;chao.xie@marvell.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: mmp: add timer clock for pxa168/mmp2/pxa910</title>
<updated>2015-06-04T19:07:53+00:00</updated>
<author>
<name>Chao Xie</name>
<email>chao.xie@marvell.com</email>
</author>
<published>2015-04-30T01:53:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=24c65a02b23509284cce5185d81a150d699837b5'/>
<id>24c65a02b23509284cce5185d81a150d699837b5</id>
<content type='text'>
Timer has external fast clock, and it is a mux clock.
Add the timer clock type for timer driver.

Signed-off-by: Chao Xie &lt;chao.xie@marvell.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>
Timer has external fast clock, and it is a mux clock.
Add the timer clock type for timer driver.

Signed-off-by: Chao Xie &lt;chao.xie@marvell.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>clk: mmp: Fix the wrong factor table for uart PLL</title>
<updated>2015-06-04T19:07:49+00:00</updated>
<author>
<name>Chao Xie</name>
<email>chao.xie@marvell.com</email>
</author>
<published>2015-04-30T01:53:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=6644fddf062e1fa9bd56e74dfeaf864a14bf08cb'/>
<id>6644fddf062e1fa9bd56e74dfeaf864a14bf08cb</id>
<content type='text'>
The suggested value in the mmp2 manual is wrong.
There are only 13 bits for numerator, but some suggested
value has 14 bits.
Fix the factor tabled and remove the unused items.

Signed-off-by: Chao Xie &lt;chao.xie@marvell.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>
The suggested value in the mmp2 manual is wrong.
There are only 13 bits for numerator, but some suggested
value has 14 bits.
Fix the factor tabled and remove the unused items.

Signed-off-by: Chao Xie &lt;chao.xie@marvell.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
