<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/next/linux-next.git/drivers/clk/eswin, 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-08-17T16:28:08+00:00</updated>
<entry>
<title>Merge tag 'clk-misc-round-two-for-v7.3' of ssh://github.com/masneyb/linux into clk-pile</title>
<updated>2026-08-17T16:28:08+00:00</updated>
<author>
<name>Stephen Boyd</name>
<email>sboyd@kernel.org</email>
</author>
<published>2026-08-14T00:42: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=df822f2e36cf2c2864d166d90cf002df4d8689e5'/>
<id>urn:sha1:df822f2e36cf2c2864d166d90cf002df4d8689e5</id>
<content type='text'>
Pull clk patches from Brian Masney:

 - New clock controller drivers for the Cix Sky1 audio subsystem (AUDSS),
   UltraRISC DP1000, and MediaTek MT8173 MFG_TOP, along with their devicetree
   bindings. Si549 support was added to the existing si544 driver.
 - New clock and reset support for the Aspeed AST2700 PECI controller and Airoha
   EN7523 PCIe PERSTOUT reset lines.
 - The clk core gains devm_clk_bulk_get_enable() as the mandatory counterpart to
   the existing optional variant, and exports
   devm_clk_hw_register_composite_pdata() for modular drivers.
 - Tegra gets a proper EMC clock implementation for Tegra114, 48MHz pll_p_out1
   support needed for UEFI on Surface2, and the Xilinx clocking-wizard gains PLL
   charge pump/lock parameter programming during dynamic reconfiguration.
 - Bug fixes for a NULL pointer dereference from uninitialized clk_init_data in
   the eswin driver, an IO remap leak in the MediaTek pllfh error path, inverted
   gate control for MT8135 devapc_ck, a missing OF node put in tegra124-emc on
   registration failure, a prepare reference leak in the palmas driver,
   unregistered PLLs on MT6735 probe failure, a missing kasprintf NULL check in
   pmc_atom, PCIe warm boot instability in the Airoha EN7523 driver, and a
   clocking-wizard clock difference detection bug.
 - Various cleanups across tegra, st, and mvebu providers to stop misusing the
   consumer clock API, along with other minor fixes and improvements.

Signed-off-by: Brian Masney &lt;bmasney@redhat.com&gt;

* tag 'clk-misc-round-two-for-v7.3' of ssh://github.com/masneyb/linux: (45 commits)
  clk: tegra: set up proper EMC clock implementation for Tegra114
  clk: clocking-wizard: remove 20kHz restriction
  clk: clocking-wizard: optimize clock search
  clk: clocking-wizard: fix clock difference detection
  clk: mediatek: mt8135: Fix inverted gate control for devapc_ck
  clk: clocking-wizard: Program PLL CP/RES and lock parameters on reconfig
  clk: tegra: support 48MHz clock for pll_p_out1
  clk: aspeed: add AST2700 PECI clock
  dt-bindings: clock: ast2700: add PECI clock
  clk: mediatek: Add mt8173-mfgtop driver
  dt-bindings: clock: mediatek: Add mt8173 mfgtop
  clk: tegra: clean-up simple provider misuse of the consumer API
  clk: st: clean-up simple provider misuse of the consumer API
  clk: mvebu: clean-up simple provider misuse of the consumer API
  clk: remove conditional return with no effect
  clk: Add devm_clk_bulk_get_enable()
  clk: en7523: add support for dedicated PCIe PERSTOUT reset
  dt-bindings: clock: airoha: Add additional reset for PCIe PERSTOUT
  arm64: dts: cix: sky1: add audss cru
  reset: cix: add sky1 audss auxiliary reset driver
  ...
</content>
</entry>
<entry>
<title>clk: eswin: Zero-initialize stack-allocated clk_init_data</title>
<updated>2026-07-28T15:25:29+00:00</updated>
<author>
<name>Kostas Damaskinakis</name>
<email>kostas.damaskinakis@gmail.com</email>
</author>
<published>2026-07-10T14:15: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=011d8de504bc84402aabc1dda1cf0552fe9a5af2'/>
<id>urn:sha1:011d8de504bc84402aabc1dda1cf0552fe9a5af2</id>
<content type='text'>
eswin_clk_register_pll() and eswin_register_clkdiv() declare a struct
clk_init_data on the stack and only initialize some of its fields
(parent_data respectively parent_hws). clk_core_populate_parent_map()
checks parent_names first and parent_data second before falling back
to parent_hws, so leftover stack garbage in the uninitialized fields
hijacks parent resolution and the clk core dereferences a bogus
pointer:

  Unable to handle kernel NULL pointer dereference at virtual address 000000000000000c
  Oops [#1]
  epc : __clk_register+0x31a/0x7f0
  [&lt;ffffffff805dc774&gt;] __clk_register+0x31a/0x7f0
  [&lt;ffffffff805dcd76&gt;] devm_clk_hw_register+0x2a/0x94
  [&lt;ffffffff805e319a&gt;] eswin_register_clkdiv+0x80/0xd0
  [&lt;ffffffff805e34a0&gt;] eswin_clk_register_clks+0x162/0x1a0
  [&lt;ffffffff805e3736&gt;] eic7700_clk_probe+0x146/0x180
  [&lt;ffffffff8065d23c&gt;] platform_probe+0x3c/0x7a

Observed on EIC7700 hardware (with the driver backported to a 6.17
tree); whether the bug triggers depends entirely on what the stack
happens to contain when the registration helpers run.

Zero-initialize both structures.

Fixes: cd44f127c1d4 ("clk: eswin: Add eic7700 clock driver")
Signed-off-by: Kostas Damaskinakis &lt;kostas.damaskinakis@gmail.com&gt;
Reviewed-by: Brian Masney &lt;bmasney@redhat.com&gt;
Acked-by: Xuyang Dong &lt;dongxuyang@eswincomputing.com&gt;
Signed-off-by: Brian Masney &lt;bmasney@redhat.com&gt;
</content>
</entry>
<entry>
<title>clk: eswin: Add eic7700 HSP clock driver</title>
<updated>2026-06-29T17:18:20+00:00</updated>
<author>
<name>Xuyang Dong</name>
<email>dongxuyang@eswincomputing.com</email>
</author>
<published>2026-06-05T06:13:34+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=8d92085fd79a7c13b72e8a05c5f89c800f575339'/>
<id>urn:sha1:8d92085fd79a7c13b72e8a05c5f89c800f575339</id>
<content type='text'>
Add driver for the ESWIN EIC7700 high-speed peripherals system
clock controller and register an auxiliary device for system
reset controller which is named as "hsp-reset".

Reviewed-by: Brian Masney &lt;bmasney@redhat.com&gt;
Signed-off-by: Xuyang Dong &lt;dongxuyang@eswincomputing.com&gt;
Signed-off-by: Brian Masney &lt;bmasney@redhat.com&gt;
</content>
</entry>
<entry>
<title>clk: eswin: Add CLK_IGNORE_UNUSED to NoC clock</title>
<updated>2026-06-29T17:17:36+00:00</updated>
<author>
<name>Xuyang Dong</name>
<email>dongxuyang@eswincomputing.com</email>
</author>
<published>2026-06-05T09:21:18+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=22109b7329f9b3bf2fee73087c73ce46e9bf3751'/>
<id>urn:sha1:22109b7329f9b3bf2fee73087c73ce46e9bf3751</id>
<content type='text'>
The gate_noc_nsp_clk provides the essential clock source for NPU,
DSP, and PCIe subsystems. During kernel init, the clock framework
attempts to disable unused clocks when clk_ignore_unused kernel
parameter is not set.
However, gate_noc_nsp_clk is required to remain enabled for these
critical subsystems to function properly, causing PCIe boot failures
when auto-disabled.

Add CLK_IGNORE_UNUSED flag to gate_noc_nsp_clk to ensure it stays
enabled even when clk_ignore_unused is not specified in kernel
command line.

Fixes: cd44f127c1d4 ("clk: eswin: Add eic7700 clock driver")
Signed-off-by: Xuyang Dong &lt;dongxuyang@eswincomputing.com&gt;
Reviewed-by: Brian Masney &lt;bmasney@redhat.com&gt;
Signed-off-by: Brian Masney &lt;bmasney@redhat.com&gt;
</content>
</entry>
<entry>
<title>clk: eswin: Add eic7700 clock driver</title>
<updated>2026-03-25T02:11:28+00:00</updated>
<author>
<name>Xuyang Dong</name>
<email>dongxuyang@eswincomputing.com</email>
</author>
<published>2026-03-03T08:07:12+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=cd44f127c1d42833a32ba0a0965255ee6184f8c1'/>
<id>urn:sha1:cd44f127c1d42833a32ba0a0965255ee6184f8c1</id>
<content type='text'>
Add clock drivers for the EIC7700 SoC. The clock controller on the ESWIN
EIC7700 provides various clocks to different IP blocks within the SoC.

Signed-off-by: Yifeng Huang &lt;huangyifeng@eswincomputing.com&gt;
Tested-by: Marcel Ziswiler &lt;marcel@ziswiler.com&gt; # ebc77
Reviewed-by: Brian Masney &lt;bmasney@redhat.com&gt;
Signed-off-by: Xuyang Dong &lt;dongxuyang@eswincomputing.com&gt;
Tested-by: Bo Gan &lt;ganboing@gmail.com&gt; # hfp550
Signed-off-by: Stephen Boyd &lt;sboyd@kernel.org&gt;
</content>
</entry>
</feed>
