<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/next/linux-next.git/drivers/clk/rockchip, branch master</title>
<subtitle>The linux-next integration testing tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/'/>
<updated>2026-07-07T17:55:33+00:00</updated>
<entry>
<title>Merge branch 'v7.3-clk/next' into for-next</title>
<updated>2026-07-07T17:55:33+00:00</updated>
<author>
<name>Heiko Stuebner</name>
<email>heiko@sntech.de</email>
</author>
<published>2026-07-07T17:55:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=cdaa80f69bef58fd336d4aedac8e72f343f60a27'/>
<id>urn:sha1:cdaa80f69bef58fd336d4aedac8e72f343f60a27</id>
<content type='text'>
</content>
</entry>
<entry>
<title>clk: rockchip: rk3588: Allow VP2 the same sourcing options as other VPs</title>
<updated>2026-07-07T09:39:41+00:00</updated>
<author>
<name>Heiko Stuebner</name>
<email>heiko.stuebner@cherry.de</email>
</author>
<published>2026-03-04T12:14:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=778dd30867ad783b6903b0aa24a0ab5e97c2dff6'/>
<id>urn:sha1:778dd30867ad783b6903b0aa24a0ab5e97c2dff6</id>
<content type='text'>
Right now dclk_vop2_src is not allowed to change its parent, while
the other two dclks are allowed to do this.

All three VPs can drive non-static outputs (HDMI, DP, eDP) and even the
eDP can also support full DP connections (though no DP+).

Therefore remove the CLK_SET_RATE_NO_REPARENT flag, to allow VP2 the same
flexibility in acquiring its clock rate.

Tested-by: Quentin Schulz &lt;quentin.schulz@cherry.de&gt; # RK3588 Tiger w/ DP
Signed-off-by: Heiko Stuebner &lt;heiko.stuebner@cherry.de&gt;
Reviewed-by: Quentin Schulz &lt;quentin.schuz@cherry.de&gt;
Tested-by: Chris Morgan &lt;macromorgan@hotmail.com&gt;
Link: https://patch.msgid.link/20260304121426.1184680-3-heiko@sntech.de
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: rk3588: Don't change PLL rates when setting dclk_vop2_src</title>
<updated>2026-07-07T09:39:41+00:00</updated>
<author>
<name>Heiko Stuebner</name>
<email>heiko.stuebner@cherry.de</email>
</author>
<published>2026-03-04T12:14:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=13b10571cc353448275365ede1a5396d20dfe839'/>
<id>urn:sha1:13b10571cc353448275365ede1a5396d20dfe839</id>
<content type='text'>
dclk_vop2_src currently has the CLK_SET_RATE_PARENT flag set, which is
very different from dclk_vop0_src or dclk_vop1_src, which don't have it.

With this flag in dclk_vop2_src, actually setting the clock then results
in a lot of other peripherals breaking, because setting the rate results
in the PLL source getting changed:

[   14.898718] clk_core_set_rate_nolock: setting rate for dclk_vop2 to 152840000
[   15.155017] clk_change_rate: setting rate for pll_gpll to 1680000000
[ clk adjusting every gpll user ]

This includes possibly the other vops, i2s, spdif and even the uarts.
Among other possible things, this breaks the uart console on a board
I use. Sometimes it recovers later on, but there will be a big block
of garbled output for a while at least.

Shared PLLs should not be changed by individual users, so drop this flag
from dclk_vop2_src.

Fixes: f1c506d152ff ("clk: rockchip: add clock controller for the RK3588")
Cc: stable@vger.kernel.org
Tested-by: Quentin Schulz &lt;quentin.schulz@cherry.de&gt; # RK3588 Tiger w/ DP
Signed-off-by: Heiko Stuebner &lt;heiko.stuebner@cherry.de&gt;
Reviewed-by: Quentin Schulz &lt;quentin.schulz@cherry.de&gt;
Tested-by: Chris Morgan &lt;macromorgan@hotmail.com&gt;
Link: https://patch.msgid.link/20260304121426.1184680-2-heiko@sntech.de
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: rk3588: don't disable unused I2S MCLK output gates</title>
<updated>2026-06-28T19:09:50+00:00</updated>
<author>
<name>Daniele Briguglio</name>
<email>hello@superkali.me</email>
</author>
<published>2026-06-24T12:39:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=946352b2f88fd2378f0341312e47dff1e8dc2fac'/>
<id>urn:sha1:946352b2f88fd2378f0341312e47dff1e8dc2fac</id>
<content type='text'>
No in-tree board references these gates yet. Boards drive the codec
MCLK through the parent I2S*_8CH_MCLKOUT, and now that the gates are
managed clocks, clk_disable_unused() turns them off at boot. On a board
that relied on firmware leaving the output enabled, that cuts the MCLK
and analog audio stops working.

Mark the four gates CLK_IGNORE_UNUSED so an unreferenced gate keeps the
state firmware left. A board that wants the kernel to own the gate can
reference I2S*_8CH_MCLKOUT_TO_IO from DT instead.

Fixes: 02b9b0bb6269 ("clk: rockchip: rk3588: add GATE_GRF clocks for I2S MCLK output to IO")
Reported-by: Diederik de Haas &lt;diederik@cknow-tech.com&gt;
Closes: https://lore.kernel.org/linux-rockchip/DJGDSS875DDO.22TYPVYK5X8KZ@cknow-tech.com/
Tested-by: Diederik de Haas &lt;diederik@cknow-tech.com&gt;
Signed-off-by: Daniele Briguglio &lt;hello@superkali.me&gt;
Tested-by: Ricardo Pardini &lt;ricardo@pardini.net&gt; # on R58X-Pro+NanoPC-T6
Reviewed-by: Sebastian Reichel &lt;sebastian.reichel@collabora.com&gt;
Link: https://patch.msgid.link/20260624123914.1767374-1-hello@superkali.me
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: allow COMPILE_TEST builds</title>
<updated>2026-05-13T10:35:57+00:00</updated>
<author>
<name>Rosen Penev</name>
<email>rosenp@gmail.com</email>
</author>
<published>2026-05-09T00:36:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=7edfb7fb58ee058298e18fde76a6077ef17d19d8'/>
<id>urn:sha1:7edfb7fb58ee058298e18fde76a6077ef17d19d8</id>
<content type='text'>
COMMON_CLK_ROCKCHIP already gates the Rockchip clock objects inside the
Rockchip clock Makefile.  Allow selecting it for COMPILE_TEST and use it
for the parent Makefile descent instead of ARCH_ROCKCHIP.

The per-SoC Rockchip clock symbols already have COMPILE_TEST dependencies,
so this exposes the existing build coverage to other architectures without
selecting the Rockchip platform.

Tested with:
make LLVM=1 ARCH=loongarch drivers/clk/rockchip/

Assisted-by: Codex:GPT-5.5
Signed-off-by: Rosen Penev &lt;rosenp@gmail.com&gt;
Reviewed-by: Brian Masney &lt;bmasney@redhat.com&gt;
Link: https://patch.msgid.link/20260509003602.956186-1-rosenp@gmail.com
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: rk3588: add GATE_GRF clocks for I2S MCLK output to IO</title>
<updated>2026-04-27T11:53:27+00:00</updated>
<author>
<name>Daniele Briguglio</name>
<email>hello@superkali.me</email>
</author>
<published>2026-04-19T11:43:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=02b9b0bb626989b947d82bbe4e050f0254e2046d'/>
<id>urn:sha1:02b9b0bb626989b947d82bbe4e050f0254e2046d</id>
<content type='text'>
The I2S MCLK outputs on RK3588 are gated by bits in the SYS_GRF
register SOC_CON6 (offset 0x318). These gates control whether the
internal CRU MCLK signals reach the external IO pins connected to
audio codecs.

The kernel should explicitly manage these gates so that audio
functionality does not depend on bootloader register state. This is
analogous to what was done for RK3576 SAI MCLK outputs [1].

Register the SYS_GRF as an auxiliary GRF with grf_type_sys using
rockchip_clk_add_grf(), and add GATE_GRF entries for all four I2S
MCLK output gates:

  - I2S0_8CH_MCLKOUT_TO_IO (bit 0)
  - I2S1_8CH_MCLKOUT_TO_IO (bit 1)
  - I2S2_2CH_MCLKOUT_TO_IO (bit 2)
  - I2S3_2CH_MCLKOUT_TO_IO (bit 7)

Board DTS files that need MCLK on an IO pin can reference these
clocks, e.g.:

    clocks = &lt;&amp;cru I2S0_8CH_MCLKOUT_TO_IO&gt;;

Tested on the Youyeetoo YY3588 (RK3588) with an ES8388 codec on I2S0.

[1] https://lore.kernel.org/r/20250305-rk3576-sai-v1-2-64e6cf863e9a@collabora.com/

Tested-by: Ricardo Pardini &lt;ricardo@pardini.net&gt;
Signed-off-by: Daniele Briguglio &lt;hello@superkali.me&gt;
Link: https://patch.msgid.link/20260419-rk3588-mclk-gate-grf-v4-5-513a42dd1dcc@superkali.me
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: add helper to register auxiliary GRFs</title>
<updated>2026-04-27T11:32:10+00:00</updated>
<author>
<name>Daniele Briguglio</name>
<email>hello@superkali.me</email>
</author>
<published>2026-04-19T11:43:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=32d1d88c4165d0da31d3bfda912e80e8110d6fc1'/>
<id>urn:sha1:32d1d88c4165d0da31d3bfda912e80e8110d6fc1</id>
<content type='text'>
Add rockchip_clk_add_grf() as a helper to register an auxiliary GRF
into the clock provider's aux_grf_table. This encapsulates the
struct rockchip_aux_grf allocation and hashtable insertion, so SoC
clock drivers do not need to open-code it.

Suggested-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Daniele Briguglio &lt;hello@superkali.me&gt;
Link: https://patch.msgid.link/20260419-rk3588-mclk-gate-grf-v4-3-513a42dd1dcc@superkali.me
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: allow grf_type_sys lookup in aux_grf_table</title>
<updated>2026-04-27T11:32:10+00:00</updated>
<author>
<name>Daniele Briguglio</name>
<email>hello@superkali.me</email>
</author>
<published>2026-04-19T11:43:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=28820fc7983b9c8e160c0095067a570bdfcae1f0'/>
<id>urn:sha1:28820fc7983b9c8e160c0095067a570bdfcae1f0</id>
<content type='text'>
Remove the grf_type_sys exclusion from the auxiliary GRF table lookup
in rockchip_clk_register_branches(). Previously, branches with
grf_type_sys always used ctx-&gt;grf directly, bypassing the aux_grf_table.

This is a problem on SoCs like RK3588 where ctx-&gt;grf points to the
PHP_GRF (set via the CRU's rockchip,grf phandle), but GATE_GRF clock
entries need to access the SYS_GRF instead.

With this change, grf_type_sys branches first check the aux_grf_table,
and fall back to ctx-&gt;grf if no entry is found. This is backwards
compatible: on SoCs that do not register grf_type_sys in the
aux_grf_table, the behavior is unchanged.

Reviewed-by: Nicolas Frattaroli &lt;nicolas.frattaroli@collabora.com&gt;
Signed-off-by: Daniele Briguglio &lt;hello@superkali.me&gt;
Tested-by: Ricardo Pardini &lt;ricardo@pardini.net&gt;
Link: https://patch.msgid.link/20260419-rk3588-mclk-gate-grf-v4-2-513a42dd1dcc@superkali.me
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: rk3568: Add PCIe pipe clock gates</title>
<updated>2026-03-10T08:34:27+00:00</updated>
<author>
<name>Shawn Lin</name>
<email>shawn.lin@rock-chips.com</email>
</author>
<published>2026-03-06T12:20:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=41b1a6760959017c4fa1dbc7c3cc318406ab1455'/>
<id>urn:sha1:41b1a6760959017c4fa1dbc7c3cc318406ab1455</id>
<content type='text'>
The PCIe pipe clocks are currently left as orphan clocks and remain
enabled indefinitely, which is suboptimal. Add the missing clock gates
so the PCIe driver can explicitly manage them when not in use. In order
not to break compatibility with old DTB, mark them as CLK_IGNORE_UNUSED.

Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Link: https://patch.msgid.link/1772799641-32164-1-git-send-email-shawn.lin@rock-chips.com
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
<entry>
<title>clk: rockchip: Add clock controller for the RV1103B</title>
<updated>2026-03-02T11:51:26+00:00</updated>
<author>
<name>Fabio Estevam</name>
<email>festevam@nabladev.com</email>
</author>
<published>2026-02-10T02:26:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=3e65e426d4575a66a82928eb41b6d83f36e5ce9c'/>
<id>urn:sha1:3e65e426d4575a66a82928eb41b6d83f36e5ce9c</id>
<content type='text'>
Add the clock and reset tree definitions for the RV1103B SoC.

Based on the 5.10 Rockchip vendor kernel driver.

Signed-off-by: Fabio Estevam &lt;festevam@nabladev.com&gt;
Link: https://patch.msgid.link/20260210022620.172570-2-festevam@gmail.com
Signed-off-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
</content>
</entry>
</feed>
