public inbox for linux-sound@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/6] ASoC: renesas: fsi: Fix system hang by adding SPU clock
@ 2026-04-13 10:06 phucduc.bui
  2026-04-13 10:06 ` [PATCH v2 1/6] ASoC: renesas: fsi: Add shared SPU clock support phucduc.bui
                   ` (5 more replies)
  0 siblings, 6 replies; 19+ messages in thread
From: phucduc.bui @ 2026-04-13 10:06 UTC (permalink / raw)
  To: kuninori.morimoto.gx, broonie
  Cc: lgirdwood, robh, krzk+dt, conor+dt, geert+renesas, magnus.damm,
	perex, tiwai, linux-sound, linux-renesas-soc, devicetree,
	linux-kernel, bui duc phuc

From: bui duc phuc <phucduc.bui@gmail.com>

Hi all,

The FSI on r8a7740 requires the SPU clock to be enabled before accessing
its internal registers. Without this clock, register access can lead to a
system hang, even when the FSI functional clock is properly enabled.
This series adds the missing clocks and aligns their names with those
used in the driver.
Following feedback from Morimoto-san, the driver is refactored to improve
stability. Clock initialization is moved from the runtime path to the probe
function to simplify the flow and avoid redundant setups. Additionally, the
shutdown sequence is reordered to ensure the stream is properly stopped 
before the hardware is shut down.

Changes in v2:
 - DT Bindings:
   Define "own" clock and add "spu", "icka/b", "diva/b", "xcka/b" to the 
   clock tree.
   Use YAML anchors and "if" rules to enforce clock-names and r8a7740 
   requirements.
   Relocate allOf block and update example with full 8-clock configuration.

 - DTS:
   Rename "fsi" clock to "own" to match driver implementation.
   Add missing clock names: "icka", "ickb", "xcka", "xckb".
 
 - In the driver:
   Refactor clock initialization.
   Reorder shutdown: stop stream before hardware shutdown.
   Move SPU clock enable/disable handling to fsi_hw_startup/shutdown.
v1 links : 
   https://lore.kernel.org/all/20260403112655.167593-1-phucduc.bui@gmail.com/
Testing:
  - Verified on r8a7740 (Armadillo-800EVA): FSI slave / Codec master mode.
  - FSI master mode is currently compile-tested only. Full verification
    requires a dedicated HDMI driver (FSIB) or hardware modifications 
    (resoldering board resistors) (FSIA).Full support for fsidiv requires 
    additional DT bindings and a corresponding driver.


bui duc phuc (6):
  ASoC: renesas: fsi: Add shared SPU clock support
  ASoC: renesas: fsi: Fix hang by enabling SPU clock
  ASoC: renesas: fsi: Fix trigger stop ordering
  ASoC: renesas: fsi: refactor clock initialization
  arm: dts: renesas: r8a7740: Add clocks for FSI
  ASoC: dt-bindings: renesas,fsi: add support for multiple clocks

 .../bindings/sound/renesas,fsi.yaml           |  61 +++++-
 arch/arm/boot/dts/renesas/r8a7740.dtsi        |  12 +-
 sound/soc/renesas/fsi.c                       | 181 ++++++++++--------
 3 files changed, 171 insertions(+), 83 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2026-04-15  9:24 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-13 10:06 [PATCH v2 0/6] ASoC: renesas: fsi: Fix system hang by adding SPU clock phucduc.bui
2026-04-13 10:06 ` [PATCH v2 1/6] ASoC: renesas: fsi: Add shared SPU clock support phucduc.bui
2026-04-14  0:02   ` Kuninori Morimoto
2026-04-14 10:53     ` Bui Duc Phuc
2026-04-13 10:06 ` [PATCH v2 2/6] ASoC: renesas: fsi: Fix hang by enabling SPU clock phucduc.bui
2026-04-14  0:27   ` Kuninori Morimoto
2026-04-15  9:02     ` Bui Duc Phuc
2026-04-13 10:06 ` [PATCH v2 3/6] ASoC: renesas: fsi: Fix trigger stop ordering phucduc.bui
2026-04-14  0:28   ` Kuninori Morimoto
2026-04-15  9:20     ` Bui Duc Phuc
2026-04-13 10:06 ` [PATCH v2 4/6] ASoC: renesas: fsi: refactor clock initialization phucduc.bui
2026-04-14  0:51   ` Kuninori Morimoto
2026-04-14 14:25     ` Bui Duc Phuc
2026-04-15  4:55       ` Kuninori Morimoto
2026-04-15  9:24         ` Bui Duc Phuc
2026-04-13 10:06 ` [PATCH v2 5/6] arm: dts: renesas: r8a7740: Add clocks for FSI phucduc.bui
2026-04-13 10:07 ` [PATCH v2 6/6] ASoC: dt-bindings: renesas,fsi: add support for multiple clocks phucduc.bui
2026-04-14  6:55   ` Krzysztof Kozlowski
2026-04-14 10:40     ` Bui Duc Phuc

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox