<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/drivers/clk/microchip, branch master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/drivers/clk/microchip?h=master</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/drivers/clk/microchip?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2022-09-14T07:57:07Z</updated>
<entry>
<title>clk: microchip: add PolarFire SoC fabric clock support</title>
<updated>2022-09-14T07:57:07Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-08T14:36:51Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d39fb172760e426e0628f16b785c85e16d17bd5e'/>
<id>urn:sha1:d39fb172760e426e0628f16b785c85e16d17bd5e</id>
<content type='text'>
Add a driver to support the PLLs in PolarFire SoC's Clock Conditioning
Circuitry, an instance of which is located in each ordinal corner of
the FPGA. Only get_rate() is supported as these clocks are intended to
be statically configured by the FPGA design. Currently, the DLLs are
not supported by this driver. For more information on the hardware, see
"PolarFire SoC FPGA Clocking Resources" in the link below.

Link: https://onlinedocs.microchip.com/pr/GUID-8F0CC4C0-0317-4262-89CA-CE7773ED1931-en-US-1/index.html
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220908143651.1252601-5-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: update module authorship &amp; licencing</title>
<updated>2022-09-14T07:57:07Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:23Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d325268b4f8c791cabf08b03d96a2cfc0e3c5d69'/>
<id>urn:sha1:d325268b4f8c791cabf08b03d96a2cfc0e3c5d69</id>
<content type='text'>
Padmarao wrote the driver in its original, pre upstream form.
Daire &amp; myself have been responsible for getting it upstreamable and
subsequent development.
Move Daire out of the blurb &amp; into a MODULE_AUTHOR entry &amp; add entries
for myself and Padmarao.

While we are at it, convert the MODULE_LICENSE field to its preferred
form of "GPL".

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-15-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: convert periph_clk to clk_gate</title>
<updated>2022-09-14T07:57:07Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d815569783e6546f55159a1c9dd9685a11888fad'/>
<id>urn:sha1:d815569783e6546f55159a1c9dd9685a11888fad</id>
<content type='text'>
With the reset code moved to the recently added reset controller, there
is no need for custom ops any longer. Remove the custom ops and the
custom struct by converting to a clk_gate.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-14-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: convert cfg_clk to clk_divider</title>
<updated>2022-09-14T07:57:06Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:21Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=4da2404bb003f248b161b00b308929f0509fb420'/>
<id>urn:sha1:4da2404bb003f248b161b00b308929f0509fb420</id>
<content type='text'>
The cfg_clk struct is now just a redefinition of the clk_divider struct
with custom implentations of the ops, that implement an extra level of
redirection. Remove the custom struct and replace it with clk_divider.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-13-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: delete 2 line mpfs_clk_register_foo()</title>
<updated>2022-09-14T07:57:06Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:20Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=e7df7ba08c647d1d3aba1d33d12db64a25e0a5b4'/>
<id>urn:sha1:e7df7ba08c647d1d3aba1d33d12db64a25e0a5b4</id>
<content type='text'>
The register functions are now comprised of only a single operation
each and no longer add anything to the driver. Delete them.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-12-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: simplify control reg access</title>
<updated>2022-09-14T07:57:06Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:19Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=5fa27b77a14041d709edcd4497d419b78aa00849'/>
<id>urn:sha1:5fa27b77a14041d709edcd4497d419b78aa00849</id>
<content type='text'>
The control reg addresses are known when the clocks are registered, so
we can, instead of assigning a base pointer to the structs, assign the
control reg addresses directly. Accordingly, remove the interim
variables used during reads/writes to those registers.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-11-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: move id &amp; offset out of clock structs</title>
<updated>2022-09-14T07:57:06Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:18Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=52fe6b5293073be8a9c9c0b45424b596d11e4c6e'/>
<id>urn:sha1:52fe6b5293073be8a9c9c0b45424b596d11e4c6e</id>
<content type='text'>
The id and offset are the only thing differentiating the clock structs
from "regular" clock structures. On the pretext of converting to more
normal structures, move the id and offset out of the clock structs and
into the hw structs instead.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-10-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: add MSS pll's set &amp; round rate</title>
<updated>2022-09-14T07:57:06Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:17Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=14016e4aafc5f157c10fb1a386fa3b3bd9c30e9a'/>
<id>urn:sha1:14016e4aafc5f157c10fb1a386fa3b3bd9c30e9a</id>
<content type='text'>
The MSS pll is not a fixed frequency clock, so add set() &amp; round_rate()
support.
Control is limited to a 7 bit output divider as other devices on the
FPGA occupy the other three outputs of the PLL &amp; prevent changing
the multiplier.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-9-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: add reset controller</title>
<updated>2022-09-14T07:55:17Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=b56bae2dd6fda6baf3bb74af3812676eebdd52f2'/>
<id>urn:sha1:b56bae2dd6fda6baf3bb74af3812676eebdd52f2</id>
<content type='text'>
Add a reset controller to PolarFire SoC's clock driver. This reset
controller is registered as an aux device and read/write functions
exported to the drivers namespace so that the reset controller can
access the peripheral device reset register.

Reviewed-by: Daire McNamara &lt;daire.mcnamara@microchip.com&gt;
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-5-conor.dooley@microchip.com
</content>
</entry>
<entry>
<title>clk: microchip: mpfs: make the rtc's ahb clock critical</title>
<updated>2022-09-14T07:45:52Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-09-09T12:31:11Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=05d27090b6dc88bce71a608d1271536e582b73d1'/>
<id>urn:sha1:05d27090b6dc88bce71a608d1271536e582b73d1</id>
<content type='text'>
The onboard RTC's AHB bus clock must be kept running as the RTC will
stop &amp; lose track of time if the AHB interface clock is disabled.

Fixes: 635e5e73370e ("clk: microchip: Add driver for Microchip PolarFire SoC")
Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20220909123123.2699583-3-conor.dooley@microchip.com
</content>
</entry>
</feed>
