<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/clk/microchip, branch v6.3</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v6.3</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v6.3'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2023-03-06T19:29:18Z</updated>
<entry>
<title>kbuild, clk: remove MODULE_LICENSE in non-modules</title>
<updated>2023-03-06T19:29:18Z</updated>
<author>
<name>Nick Alcock</name>
<email>nick.alcock@oracle.com</email>
</author>
<published>2023-02-22T12:14:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=94511ebc6810142eb36c8b935e1713a15db94d28'/>
<id>urn:sha1:94511ebc6810142eb36c8b935e1713a15db94d28</id>
<content type='text'>
Since commit 8b41fc4454e ("kbuild: create modules.builtin without
Makefile.modbuiltin or tristate.conf"), MODULE_LICENSE declarations
are used to identify modules. As a consequence, uses of the macro
in non-modules will cause modprobe to misidentify their containing
object file as a module when it is not (false positives), and modprobe
might succeed rather than failing with a suitable error message.

So remove it in the files in this commit, none of which can be built as
modules.

Signed-off-by: Nick Alcock &lt;nick.alcock@oracle.com&gt;
Suggested-by: Luis Chamberlain &lt;mcgrof@kernel.org&gt;
Cc: Luis Chamberlain &lt;mcgrof@kernel.org&gt;
Cc: linux-modules@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: Hitomi Hasegawa &lt;hasegawa-hitomi@fujitsu.com&gt;
Cc: Michael Turquette &lt;mturquette@baylibre.com&gt;
Cc: Stephen Boyd &lt;sboyd@kernel.org&gt;
Cc: linux-clk@vger.kernel.org
Link: https://lore.kernel.org/r/20230222121453.91915-13-nick.alcock@oracle.com
Acked-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Reviewed-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: microchip: mpfs-ccc: Use devm_kasprintf() for allocating formatted strings</title>
<updated>2023-01-19T09:45:35Z</updated>
<author>
<name>Geert Uytterhoeven</name>
<email>geert+renesas@glider.be</email>
</author>
<published>2023-01-03T16:45:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=86d884f5287f4369c198811aaa4931a3a11f36d2'/>
<id>urn:sha1:86d884f5287f4369c198811aaa4931a3a11f36d2</id>
<content type='text'>
In various places, string buffers of a fixed size are allocated, and
filled using snprintf() with the same fixed size, which is error-prone.

Replace this by calling devm_kasprintf() instead, which always uses the
appropriate size.

While at it, remove an unneeded intermediate variable, which allows us
to drop a cast as a bonus.

With the initial behavior it would have been possible to have a device tree
with a node address that would make "ccc&lt;node_address&gt;_pll&lt;N&gt;" exceed
18 characters. If that happened, the &lt;N&gt; would be cut off &amp; both
pll 0 &amp; 1 would be named identically. If that happens, pll1 would fail
to register. Thus, the fixes tag has been added to this commit.

Fixes: d39fb172760e ("clk: microchip: add PolarFire SoC fabric clock support")
Signed-off-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Reviewed-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Tested-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
[claudiu.beznea: added the rationale behind fixes tag]
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/f904fd28b2087d1463ea65f059924e3b1acc193c.1672764239.git.geert+renesas@glider.be
</content>
</entry>
<entry>
<title>clk: microchip: enable the MPFS clk driver by default if SOC_MICROCHIP_POLARFIRE</title>
<updated>2022-12-09T01:12:08Z</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2022-11-23T16:19:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3c79ace9c0d0ba4755e5673759acb36fd17e714a'/>
<id>urn:sha1:3c79ace9c0d0ba4755e5673759acb36fd17e714a</id>
<content type='text'>
With the intent of removing driver selects from Kconfig.socs in
arch/riscv, essential drivers that were being selected there could
instead by enabled by defaulting them to the value of the SoC's Kconfig
symbol.

Do so here &amp; drop the depend on RISC-V - the SOC_ symbols are only
defined there anyway.

Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Link: https://lore.kernel.org/r/20221123161921.81195-1-conor@kernel.org
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: microchip: check for null return of devm_kzalloc()</title>
<updated>2022-11-24T10:44:13Z</updated>
<author>
<name>Hui Tang</name>
<email>tanghui20@huawei.com</email>
</author>
<published>2022-11-19T05:48:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e2e6a217a84d09785848a82599729c9a41566e3a'/>
<id>urn:sha1:e2e6a217a84d09785848a82599729c9a41566e3a</id>
<content type='text'>
Because of the possible failure of devm_kzalloc(), name might be NULL and
will cause null pointer dereference later.

Therefore, it might be better to check it and directly return -ENOMEM.

Fixes: d39fb172760e ("clk: microchip: add PolarFire SoC fabric clock support")
Signed-off-by: Hui Tang &lt;tanghui20@huawei.com&gt;
Reviewed-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
[claudiu.beznea: s/refrence/reference/, s/possilble/possible]
Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Link: https://lore.kernel.org/r/20221119054858.178629-1-tanghui20@huawei.com
</content>
</entry>
<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.shady.money/linux/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.shady.money/linux/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.shady.money/linux/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.shady.money/linux/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.shady.money/linux/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.shady.money/linux/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>
</feed>
