<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/clk/sifive, branch linux-5.11.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-5.11.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-5.11.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2020-12-16T20:23:13+00:00</updated>
<entry>
<title>clk: sifive: Add clock enable and disable ops</title>
<updated>2020-12-16T20:23:13+00:00</updated>
<author>
<name>Pragnesh Patel</name>
<email>pragnesh.patel@sifive.com</email>
</author>
<published>2020-12-09T09:49:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=732374a0b440d9a79c8412f318a25cd37ba6f4e2'/>
<id>urn:sha1:732374a0b440d9a79c8412f318a25cd37ba6f4e2</id>
<content type='text'>
Add new functions "sifive_prci_clock_enable(), sifive_prci_clock_disable()
and sifive_clk_is_enabled()" to enable or disable the PRCI clock

Signed-off-by: Pragnesh Patel &lt;pragnesh.patel@sifive.com&gt;
Tested-by: Zong Li &lt;zong.li@sifive.com&gt;
Link: https://lore.kernel.org/r/20201209094916.17383-6-zong.li@sifive.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: sifive: Fix the wrong bit field shift</title>
<updated>2020-12-16T20:23:12+00:00</updated>
<author>
<name>Zong Li</name>
<email>zong.li@sifive.com</email>
</author>
<published>2020-12-09T09:49:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=263ac3908516abb0392747bbf595af2b13df5fa2'/>
<id>urn:sha1:263ac3908516abb0392747bbf595af2b13df5fa2</id>
<content type='text'>
The clk enable bit should be 31 instead of 24.

Signed-off-by: Zong Li &lt;zong.li@sifive.com&gt;
Reported-by: Pragnesh Patel &lt;pragnesh.patel@sifive.com&gt;
Link: https://lore.kernel.org/r/20201209094916.17383-5-zong.li@sifive.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: sifive: Add a driver for the SiFive FU740 PRCI IP block</title>
<updated>2020-12-16T20:22:59+00:00</updated>
<author>
<name>Zong Li</name>
<email>zong.li@sifive.com</email>
</author>
<published>2020-12-09T09:49:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=efc91ae43c8d4bbf64e4b9a28113b24a74ffd58d'/>
<id>urn:sha1:efc91ae43c8d4bbf64e4b9a28113b24a74ffd58d</id>
<content type='text'>
Add driver code for the SiFive FU740 PRCI IP block. This IP block
handles reset and clock control for the SiFive FU740 device and
implements SoC-level clock tree controls and dividers.

The link of unmatched as follow, and the U740-C000 manual would
be present in the same page as soon.
https://www.sifive.com/boards/hifive-unmatched

This driver contains bug fixes and contributions from
Henry Styles &lt;hes@sifive.com&gt;
Erik Danie &lt;erik.danie@sifive.com&gt;
Pragnesh Patel &lt;pragnesh.patel@sifive.com&gt;

Signed-off-by: Zong Li &lt;zong.li@sifive.com&gt;
Reviewed-by: Pragnesh Patel &lt;Pragnesh.patel@sifive.com&gt;
Acked-by: Palmer Dabbelt &lt;palmerdabbelt@google.com&gt;
Cc: Henry Styles &lt;hes@sifive.com&gt;
Cc: Erik Danie &lt;erik.danie@sifive.com&gt;
Cc: Pragnesh Patel &lt;pragnesh.patel@sifive.com&gt;
Link: https://lore.kernel.org/r/20201209094916.17383-4-zong.li@sifive.com
[sboyd@kernel.org: Include header to silence sparse]
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: sifive: Use common name for prci configuration</title>
<updated>2020-12-16T20:22:59+00:00</updated>
<author>
<name>Zong Li</name>
<email>zong.li@sifive.com</email>
</author>
<published>2020-12-09T09:49:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=28108fc8a056f0fd26be17727eff212fae67a247'/>
<id>urn:sha1:28108fc8a056f0fd26be17727eff212fae67a247</id>
<content type='text'>
Use generic name CLK_SIFIVE_PRCI instead of CLK_SIFIVE_FU540_PRCI. This
patch is prepared for fu740 support.

Signed-off-by: Zong Li &lt;zong.li@sifive.com&gt;
Reviewed-by: Palmer Dabbelt &lt;palmerdabbelt@google.com&gt;
Acked-by: Palmer Dabbelt &lt;palmerdabbelt@google.com&gt;
Reviewed-by: Pragnesh Patel &lt;Pragnesh.patel@sifive.com&gt;
Link: https://lore.kernel.org/r/20201209094916.17383-3-zong.li@sifive.com
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: sifive: Extract prci core to common base</title>
<updated>2020-12-16T20:22:39+00:00</updated>
<author>
<name>Zong Li</name>
<email>zong.li@sifive.com</email>
</author>
<published>2020-12-09T09:49:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c816e1ddf2b60b31d121118488c5a854d9a2fad9'/>
<id>urn:sha1:c816e1ddf2b60b31d121118488c5a854d9a2fad9</id>
<content type='text'>
Extract common core of prci driver to an independent file, it could
allow other chips to reuse it. Separate SoCs-dependent code 'fu540'
from prci core, then we can easily add 'fu740' later.

Almost these changes are code movement. The different is adding the
private data for each SoC use, so it needs to get match data in probe
callback function, then use the data for initialization.

Signed-off-by: Zong Li &lt;zong.li@sifive.com&gt;
Reviewed-by: Pragnesh Patel &lt;Pragnesh.patel@sifive.com&gt;
Acked-by: Palmer Dabbelt &lt;palmerdabbelt@google.com&gt;
Link: https://lore.kernel.org/r/20201209094916.17383-2-zong.li@sifive.com
[sboyd@kernel.org: Include header to silence sparse]
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>clk: sifive: allocate sufficient memory for struct __prci_data</title>
<updated>2020-06-25T22:04:13+00:00</updated>
<author>
<name>Vincent Chen</name>
<email>vincent.chen@sifive.com</email>
</author>
<published>2020-06-23T01:24:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d0a5fdf4cc83dabcdea668f971b8a2e916437711'/>
<id>urn:sha1:d0a5fdf4cc83dabcdea668f971b8a2e916437711</id>
<content type='text'>
The (struct __prci_data).hw_clks.hws is an array with dynamic elements.
Using struct_size(pd, hw_clks.hws, ARRAY_SIZE(__prci_init_clocks))
instead of sizeof(*pd) to get the correct memory size of
struct __prci_data for sifive/fu540-prci. After applying this
modifications, the kernel runs smoothly with CONFIG_SLAB_FREELIST_RANDOM
enabled on the HiFive unleashed board.

Fixes: 30b8e27e3b58 ("clk: sifive: add a driver for the SiFive FU540 PRCI IP block")
Signed-off-by: Vincent Chen &lt;vincent.chen@sifive.com&gt;
Signed-off-by: Palmer Dabbelt &lt;palmerdabbelt@google.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux</title>
<updated>2019-05-30T23:33:37+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2019-05-30T23:33:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=20f944965601c59e68865d4ee12225fbabb5652b'/>
<id>urn:sha1:20f944965601c59e68865d4ee12225fbabb5652b</id>
<content type='text'>
Pull clk driver fixes from Stephen Boyd:

 - Don't expose the SiFive clk driver on non-RISCV architectures

 - Fix some bits describing clks in the imx8mm driver

 - Always call clk domain code in the TI driver so non-legacy platforms
   work

* tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  clk: ti: clkctrl: Fix clkdm_clk handling
  clk: imx: imx8mm: fix int pll clk gate
  clk: sifive: restrict Kconfig scope for the FU540 PRCI driver
</content>
</entry>
<entry>
<title>clk: sifive: restrict Kconfig scope for the FU540 PRCI driver</title>
<updated>2019-05-21T18:34:45+00:00</updated>
<author>
<name>Paul Walmsley</name>
<email>paul.walmsley@sifive.com</email>
</author>
<published>2019-05-13T21:30:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f7df8c92b4b90a891972fb782b3eaac836efa601'/>
<id>urn:sha1:f7df8c92b4b90a891972fb782b3eaac836efa601</id>
<content type='text'>
Restrict Kconfig scope for SiFive clock and reset IP block drivers
such that they won't appear on most configurations that are unlikely
to support them.  This is based on a suggestion from Pavel Machek
&lt;pavel@ucw.cz&gt;.  Ideally this should be dependent on
CONFIG_ARCH_SIFIVE, but since that Kconfig directive does not yet
exist, add dependencies on RISCV or COMPILE_TEST for now.

Signed-off-by: Paul Walmsley &lt;paul.walmsley@sifive.com&gt;
Signed-off-by: Paul Walmsley &lt;paul@pwsan.com&gt;
Reported-by: Pavel Machek &lt;pavel@ucw.cz&gt;
Cc: Michael Turquette &lt;mturquette@baylibre.com&gt;
Acked-by: Pavel Machek &lt;pavel@ucw.cz&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
<entry>
<title>treewide: Add SPDX license identifier - Makefile/Kconfig</title>
<updated>2019-05-21T08:50:46+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2019-05-19T12:07:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ec8f24b7faaf3d4799a7c3f4c1b87f6b02778ad1'/>
<id>urn:sha1:ec8f24b7faaf3d4799a7c3f4c1b87f6b02778ad1</id>
<content type='text'>
Add SPDX license identifiers to all Make/Kconfig files which:

 - Have no license information of any form

These files fall under the project license, GPL v2 only. The resulting SPDX
license identifier is:

  GPL-2.0-only

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>clk: Remove io.h from clk-provider.h</title>
<updated>2019-05-15T20:21:37+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@kernel.org</email>
</author>
<published>2019-04-18T22:20:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=62e59c4e69b3cdbad67e3c2d49e4df4cfe1679e3'/>
<id>urn:sha1:62e59c4e69b3cdbad67e3c2d49e4df4cfe1679e3</id>
<content type='text'>
Now that we've gotten rid of clk_readl() we can remove io.h from the
clk-provider header and push out the io.h include to any code that isn't
already including the io.h header but using things like readl/writel,
etc.

Found with this grep:

  git grep -l clk-provider.h | grep '.c$' | xargs git grep -L 'linux/io.h' | \
  	xargs git grep -l \
	-e '\&lt;__iowrite32_copy\&gt;' --or \
	-e '\&lt;__ioread32_copy\&gt;' --or \
	-e '\&lt;__iowrite64_copy\&gt;' --or \
	-e '\&lt;ioremap_page_range\&gt;' --or \
	-e '\&lt;ioremap_huge_init\&gt;' --or \
	-e '\&lt;arch_ioremap_pud_supported\&gt;' --or \
	-e '\&lt;arch_ioremap_pmd_supported\&gt;' --or \
	-e '\&lt;devm_ioport_map\&gt;' --or \
	-e '\&lt;devm_ioport_unmap\&gt;' --or \
	-e '\&lt;IOMEM_ERR_PTR\&gt;' --or \
	-e '\&lt;devm_ioremap\&gt;' --or \
	-e '\&lt;devm_ioremap_nocache\&gt;' --or \
	-e '\&lt;devm_ioremap_wc\&gt;' --or \
	-e '\&lt;devm_iounmap\&gt;' --or \
	-e '\&lt;devm_ioremap_release\&gt;' --or \
	-e '\&lt;devm_memremap\&gt;' --or \
	-e '\&lt;devm_memunmap\&gt;' --or \
	-e '\&lt;__devm_memremap_pages\&gt;' --or \
	-e '\&lt;pci_remap_cfgspace\&gt;' --or \
	-e '\&lt;arch_has_dev_port\&gt;' --or \
	-e '\&lt;arch_phys_wc_add\&gt;' --or \
	-e '\&lt;arch_phys_wc_del\&gt;' --or \
	-e '\&lt;memremap\&gt;' --or \
	-e '\&lt;memunmap\&gt;' --or \
	-e '\&lt;arch_io_reserve_memtype_wc\&gt;' --or \
	-e '\&lt;arch_io_free_memtype_wc\&gt;' --or \
	-e '\&lt;__io_aw\&gt;' --or \
	-e '\&lt;__io_pbw\&gt;' --or \
	-e '\&lt;__io_paw\&gt;' --or \
	-e '\&lt;__io_pbr\&gt;' --or \
	-e '\&lt;__io_par\&gt;' --or \
	-e '\&lt;__raw_readb\&gt;' --or \
	-e '\&lt;__raw_readw\&gt;' --or \
	-e '\&lt;__raw_readl\&gt;' --or \
	-e '\&lt;__raw_readq\&gt;' --or \
	-e '\&lt;__raw_writeb\&gt;' --or \
	-e '\&lt;__raw_writew\&gt;' --or \
	-e '\&lt;__raw_writel\&gt;' --or \
	-e '\&lt;__raw_writeq\&gt;' --or \
	-e '\&lt;readb\&gt;' --or \
	-e '\&lt;readw\&gt;' --or \
	-e '\&lt;readl\&gt;' --or \
	-e '\&lt;readq\&gt;' --or \
	-e '\&lt;writeb\&gt;' --or \
	-e '\&lt;writew\&gt;' --or \
	-e '\&lt;writel\&gt;' --or \
	-e '\&lt;writeq\&gt;' --or \
	-e '\&lt;readb_relaxed\&gt;' --or \
	-e '\&lt;readw_relaxed\&gt;' --or \
	-e '\&lt;readl_relaxed\&gt;' --or \
	-e '\&lt;readq_relaxed\&gt;' --or \
	-e '\&lt;writeb_relaxed\&gt;' --or \
	-e '\&lt;writew_relaxed\&gt;' --or \
	-e '\&lt;writel_relaxed\&gt;' --or \
	-e '\&lt;writeq_relaxed\&gt;' --or \
	-e '\&lt;readsb\&gt;' --or \
	-e '\&lt;readsw\&gt;' --or \
	-e '\&lt;readsl\&gt;' --or \
	-e '\&lt;readsq\&gt;' --or \
	-e '\&lt;writesb\&gt;' --or \
	-e '\&lt;writesw\&gt;' --or \
	-e '\&lt;writesl\&gt;' --or \
	-e '\&lt;writesq\&gt;' --or \
	-e '\&lt;inb\&gt;' --or \
	-e '\&lt;inw\&gt;' --or \
	-e '\&lt;inl\&gt;' --or \
	-e '\&lt;outb\&gt;' --or \
	-e '\&lt;outw\&gt;' --or \
	-e '\&lt;outl\&gt;' --or \
	-e '\&lt;inb_p\&gt;' --or \
	-e '\&lt;inw_p\&gt;' --or \
	-e '\&lt;inl_p\&gt;' --or \
	-e '\&lt;outb_p\&gt;' --or \
	-e '\&lt;outw_p\&gt;' --or \
	-e '\&lt;outl_p\&gt;' --or \
	-e '\&lt;insb\&gt;' --or \
	-e '\&lt;insw\&gt;' --or \
	-e '\&lt;insl\&gt;' --or \
	-e '\&lt;outsb\&gt;' --or \
	-e '\&lt;outsw\&gt;' --or \
	-e '\&lt;outsl\&gt;' --or \
	-e '\&lt;insb_p\&gt;' --or \
	-e '\&lt;insw_p\&gt;' --or \
	-e '\&lt;insl_p\&gt;' --or \
	-e '\&lt;outsb_p\&gt;' --or \
	-e '\&lt;outsw_p\&gt;' --or \
	-e '\&lt;outsl_p\&gt;' --or \
	-e '\&lt;ioread8\&gt;' --or \
	-e '\&lt;ioread16\&gt;' --or \
	-e '\&lt;ioread32\&gt;' --or \
	-e '\&lt;ioread64\&gt;' --or \
	-e '\&lt;iowrite8\&gt;' --or \
	-e '\&lt;iowrite16\&gt;' --or \
	-e '\&lt;iowrite32\&gt;' --or \
	-e '\&lt;iowrite64\&gt;' --or \
	-e '\&lt;ioread16be\&gt;' --or \
	-e '\&lt;ioread32be\&gt;' --or \
	-e '\&lt;ioread64be\&gt;' --or \
	-e '\&lt;iowrite16be\&gt;' --or \
	-e '\&lt;iowrite32be\&gt;' --or \
	-e '\&lt;iowrite64be\&gt;' --or \
	-e '\&lt;ioread8_rep\&gt;' --or \
	-e '\&lt;ioread16_rep\&gt;' --or \
	-e '\&lt;ioread32_rep\&gt;' --or \
	-e '\&lt;ioread64_rep\&gt;' --or \
	-e '\&lt;iowrite8_rep\&gt;' --or \
	-e '\&lt;iowrite16_rep\&gt;' --or \
	-e '\&lt;iowrite32_rep\&gt;' --or \
	-e '\&lt;iowrite64_rep\&gt;' --or \
	-e '\&lt;__io_virt\&gt;' --or \
	-e '\&lt;pci_iounmap\&gt;' --or \
	-e '\&lt;virt_to_phys\&gt;' --or \
	-e '\&lt;phys_to_virt\&gt;' --or \
	-e '\&lt;ioremap_uc\&gt;' --or \
	-e '\&lt;ioremap\&gt;' --or \
	-e '\&lt;__ioremap\&gt;' --or \
	-e '\&lt;iounmap\&gt;' --or \
	-e '\&lt;ioremap\&gt;' --or \
	-e '\&lt;ioremap_nocache\&gt;' --or \
	-e '\&lt;ioremap_uc\&gt;' --or \
	-e '\&lt;ioremap_wc\&gt;' --or \
	-e '\&lt;ioremap_wc\&gt;' --or \
	-e '\&lt;ioremap_wt\&gt;' --or \
	-e '\&lt;ioport_map\&gt;' --or \
	-e '\&lt;ioport_unmap\&gt;' --or \
	-e '\&lt;ioport_map\&gt;' --or \
	-e '\&lt;ioport_unmap\&gt;' --or \
	-e '\&lt;xlate_dev_kmem_ptr\&gt;' --or \
	-e '\&lt;xlate_dev_mem_ptr\&gt;' --or \
	-e '\&lt;unxlate_dev_mem_ptr\&gt;' --or \
	-e '\&lt;virt_to_bus\&gt;' --or \
	-e '\&lt;bus_to_virt\&gt;' --or \
	-e '\&lt;memset_io\&gt;' --or \
	-e '\&lt;memcpy_fromio\&gt;' --or \
	-e '\&lt;memcpy_toio\&gt;'

I also reordered a couple includes when they weren't alphabetical and
removed clk.h from kona, replacing it with clk-provider.h because
that driver doesn't use clk consumer APIs.

Acked-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Cc: Chen-Yu Tsai &lt;wens@csie.org&gt;
Acked-by: Maxime Ripard &lt;maxime.ripard@bootlin.com&gt;
Acked-by: Tero Kristo &lt;t-kristo@ti.com&gt;
Acked-by: Sekhar Nori &lt;nsekhar@ti.com&gt;
Cc: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
Acked-by: Mark Brown &lt;broonie@kernel.org&gt;
Cc: Chris Zankel &lt;chris@zankel.net&gt;
Acked-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
Acked-by: John Crispin &lt;john@phrozen.org&gt;
Acked-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
</feed>
