<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/clk/ingenic, branch linux-5.11.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.11.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.11.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2020-12-20T00:04:58Z</updated>
<entry>
<title>clk: ingenic: Fix divider calculation with div tables</title>
<updated>2020-12-20T00:04:58Z</updated>
<author>
<name>Paul Cercueil</name>
</author>
<published>2020-12-12T13:57:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=11a163f2c7d6a9f27ce144cd7e367a81c851621a'/>
<id>urn:sha1:11a163f2c7d6a9f27ce144cd7e367a81c851621a</id>
<content type='text'>
The previous code assumed that a higher hardware value always resulted
in a bigger divider, which is correct for the regular clocks, but is
an invalid assumption when a divider table is provided for the clock.

Perfect example of this is the PLL0_HALF clock, which applies a /2
divider with the hardware value 0, and a /1 divider otherwise.

Fixes: a9fa2893fcc6 ("clk: ingenic: Add support for divider tables")
Cc: &lt;stable@vger.kernel.org&gt; # 5.2
Signed-off-by: Paul Cercueil &lt;paul@crapouillou.net&gt;
Link: https://lore.kernel.org/r/20201212135733.38050-1-paul@crapouillou.net
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: ingenic: Respect CLK_SET_RATE_PARENT in .round_rate</title>
<updated>2020-10-14T03:04:50Z</updated>
<author>
<name>Paul Cercueil</name>
</author>
<published>2020-09-03T01:50:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1a3c4dd4e1633a4482df6dd030a365de6f26de2c'/>
<id>urn:sha1:1a3c4dd4e1633a4482df6dd030a365de6f26de2c</id>
<content type='text'>
Clocks that don't have a divider are in our case all marked with the
CLK_SET_RATE_PARENT flag. In this case, the .round_rate implementation
should modify the value pointed to by parent_rate, in order to propagate
the rate change to the parent, as explained in the documentation of
clk_set_rate().

Signed-off-by: Paul Cercueil &lt;paul@crapouillou.net&gt;
Link: https://lore.kernel.org/r/20200903015048.3091523-5-paul@crapouillou.net
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: ingenic: Don't tag custom clocks with CLK_SET_RATE_PARENT</title>
<updated>2020-10-14T03:04:50Z</updated>
<author>
<name>Paul Cercueil</name>
</author>
<published>2020-09-03T01:50:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2e4ee634f80510b54dee144773c0be3190eb4208'/>
<id>urn:sha1:2e4ee634f80510b54dee144773c0be3190eb4208</id>
<content type='text'>
The custom clocks have custom functions to round, get or set their rate.
Therefore, we can't assume that they need the CLK_SET_RATE_PARENT flag.

Signed-off-by: Paul Cercueil &lt;paul@crapouillou.net&gt;
Link: https://lore.kernel.org/r/20200903015048.3091523-4-paul@crapouillou.net
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: ingenic: Don't use CLK_SET_RATE_GATE for PLL</title>
<updated>2020-10-14T03:04:50Z</updated>
<author>
<name>Paul Cercueil</name>
</author>
<published>2020-09-03T01:50:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3860dc599b7d3de869d9d7e2274d2ca8f1e2be86'/>
<id>urn:sha1:3860dc599b7d3de869d9d7e2274d2ca8f1e2be86</id>
<content type='text'>
CLK_SET_RATE_GATE means that the clock must be gated when being
reclocked. This is not the case for the PLLs in Ingenic SoCs.

Signed-off-by: Paul Cercueil &lt;paul@crapouillou.net&gt;
Link: https://lore.kernel.org/r/20200903015048.3091523-3-paul@crapouillou.net
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: ingenic: Use readl_poll_timeout instead of custom loop</title>
<updated>2020-10-14T03:04:50Z</updated>
<author>
<name>Paul Cercueil</name>
</author>
<published>2020-09-03T01:50:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=21534fe39c494913849f3c46e41282b96bce7df6'/>
<id>urn:sha1:21534fe39c494913849f3c46e41282b96bce7df6</id>
<content type='text'>
Use the readl_poll_timeout() function instead of rolling our own
busy-wait loops. This makes the code simpler.

Signed-off-by: Paul Cercueil &lt;paul@crapouillou.net&gt;
Link: https://lore.kernel.org/r/20200903015048.3091523-2-paul@crapouillou.net
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: ingenic: Use to_clk_info() macro for all clocks</title>
<updated>2020-10-14T03:04:50Z</updated>
<author>
<name>Paul Cercueil</name>
</author>
<published>2020-09-03T01:50:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=29c37341b54f7a500727799b94565fcc5dd8e6f8'/>
<id>urn:sha1:29c37341b54f7a500727799b94565fcc5dd8e6f8</id>
<content type='text'>
The to_clk_info() previously had a BUG_ON() to check that it was only
called for PLL clocks. Yet, all the other clocks were doing the exact
same thing the macro does, in-line.

Move the to_clk_info() macro to the top of the file, remove the
hardcoded BUG_ON(), and use it everywhere it makes sense.

Signed-off-by: Paul Cercueil &lt;paul@crapouillou.net&gt;
Link: https://lore.kernel.org/r/20200903015048.3091523-1-paul@crapouillou.net
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: X1000: Add support for calculat REFCLK of USB PHY.</title>
<updated>2020-07-28T01:18:14Z</updated>
<author>
<name>周琰杰 (Zhou Yanjie)</name>
</author>
<published>2020-06-30T16:38:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=810797c14508dae3c80eacaa483a900b03fdb780'/>
<id>urn:sha1:810797c14508dae3c80eacaa483a900b03fdb780</id>
<content type='text'>
Add functions for calculat the rate of REFCLK, which is needed by
USB PHY in Ingenic X1000 SoC.

Tested-by: 周正 (Zhou Zheng) &lt;sernia.zhou@foxmail.com&gt;
Signed-off-by: 周琰杰 (Zhou Yanjie) &lt;zhouyanjie@wanyeetech.com&gt;
Link: https://lore.kernel.org/r/20200630163852.47267-4-zhouyanjie@wanyeetech.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: JZ4780: Reformat the code to align it.</title>
<updated>2020-07-28T01:18:14Z</updated>
<author>
<name>周琰杰 (Zhou Yanjie)</name>
</author>
<published>2020-06-30T16:38:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=beb61eb06880c06005b9855873d77547d43bab4b'/>
<id>urn:sha1:beb61eb06880c06005b9855873d77547d43bab4b</id>
<content type='text'>
Reformat the code (add one level of indentation before the values),
to align the code in the macro definition section.

Tested-by: 周正 (Zhou Zheng) &lt;sernia.zhou@foxmail.com&gt;
Signed-off-by: 周琰杰 (Zhou Yanjie) &lt;zhouyanjie@wanyeetech.com&gt;
Link: https://lore.kernel.org/r/20200630163852.47267-3-zhouyanjie@wanyeetech.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: JZ4780: Add functions for enable and disable USB PHY.</title>
<updated>2020-07-28T01:18:14Z</updated>
<author>
<name>周琰杰 (Zhou Yanjie)</name>
</author>
<published>2020-06-30T16:38:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dcd062a88e46d4d2aeaf701e82e128117fc0f3a1'/>
<id>urn:sha1:dcd062a88e46d4d2aeaf701e82e128117fc0f3a1</id>
<content type='text'>
Add new functions to "jz4780_otg_phy_ops" to enable or disable the
USB PHY in the JZ4780 SoC.

Tested-by: 周正 (Zhou Zheng) &lt;sernia.zhou@foxmail.com&gt;
Signed-off-by: 周琰杰 (Zhou Yanjie) &lt;zhouyanjie@wanyeetech.com&gt;
Link: https://lore.kernel.org/r/20200630163852.47267-2-zhouyanjie@wanyeetech.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: Ingenic: Add RTC related clocks for Ingenic SoCs.</title>
<updated>2020-07-28T01:17:52Z</updated>
<author>
<name>周琰杰 (Zhou Yanjie)</name>
</author>
<published>2020-07-25T05:11:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=82df5b7329aaeb21b3e8fc86fa2d62a3d68602aa'/>
<id>urn:sha1:82df5b7329aaeb21b3e8fc86fa2d62a3d68602aa</id>
<content type='text'>
The RTC unit in the Ingenic SoCs has two clock sources, one
is from an external 32.768kHz clock, and the other is from an
external 24MHz/48MHz main clock that is divided by 512. The
choice of these two clocks is controlled by the ERCS bit in
the OPCR register. The RNG unit will also use this clock.

Tested-by: 周正 (Zhou Zheng) &lt;sernia.zhou@foxmail.com&gt;
Signed-off-by: 周琰杰 (Zhou Yanjie) &lt;zhouyanjie@wanyeetech.com&gt;
Link: https://lore.kernel.org/r/20200725051136.58220-4-zhouyanjie@wanyeetech.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
</feed>
