Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Geert Uytterhoeven <geert@linux-m68k.org>
To: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: linux-sound@vger.kernel.org,
	 Linux-Renesas <linux-renesas-soc@vger.kernel.org>
Subject: rsnd_adg_clk_control() sometimes disables already-disabled clock
Date: Mon, 16 Dec 2024 14:51:23 +0100	[thread overview]
Message-ID: <CAMuHMdVUKpO2rsia+36BLFFwdMapE8LrYS0duyd0FmrxDvwEfg@mail.gmail.com> (raw)

Hi Morimoto-san,

Once in a while, I see the following warning on Salvator-X(S) when entering
s2idle[1]:

    ------------[ cut here ]------------
    clk_multiplier already disabled
    WARNING: CPU: 0 PID: 1084 at drivers/clk/clk.c:1194
clk_core_disable+0xd0/0xd8
    CPU: 0 UID: 0 PID: 1084 Comm: s2idle Not tainted
6.13.0-rc3-arm64-renesas-01336-g13a53d27900d #2738
    Hardware name: Renesas Salvator-X 2nd version board based on r8a77951 (DT)
    pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    pc : clk_core_disable+0xd0/0xd8
    lr : clk_core_disable+0xd0/0xd8
    sp : ffff800083a8ba00
    x29: ffff800083a8ba00 x28: ffff0004ca7e1a40 x27: ffff800081a0a968
    x26: ffff8000825ee000 x25: ffff800081ae0090 x24: 0000000000000000
    x23: ffff0004c0d64500 x22: 0000000000000000 x21: ffff0004c0d64480
    x20: ffff0004c32c5800 x19: ffff0004c32c5800 x18: ffffffffffffffff
    x17: 000000040044ffff x16: 00000034b5503510 x15: ffff800103a8b617
    x14: 0000000000000000 x13: ffff8000818c66e0 x12: 00000000000007fe
    x11: 00000000000002aa x10: ffff80008191e6e0 x9 : ffff8000818c66e0
    x8 : 00000000ffffefff x7 : ffff80008191e6e0 x6 : 0000000000000000
    x5 : ffff0006ff69a408 x4 : 0000000000000000 x3 : 0000000000000027
    x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff0004ca7e1a40
    Call trace:
     clk_core_disable+0xd0/0xd8 (P)
     clk_disable+0x2c/0x44
     rsnd_adg_clk_control+0x80/0xf4
     rsnd_suspend+0x14/0x20
     dpm_run_callback+0x4c/0x14c
     device_suspend+0x11c/0x4dc
     dpm_suspend+0xdc/0x214
     dpm_suspend_start+0x48/0x60
     suspend_devices_and_enter+0x124/0x574
     pm_suspend+0x1ac/0x274
     state_store+0x88/0x124
     kobj_attr_store+0x14/0x24
     sysfs_kf_write+0x48/0x6c
     kernfs_fop_write_iter+0x118/0x1a8
     vfs_write+0x280/0x37c
    [...]
    irq event stamp: 0
    hardirqs last  enabled at (0): [<0000000000000000>] 0x0
    hardirqs last disabled at (0): [<ffff800080097c44>]
copy_process+0x638/0x18f4
    softirqs last  enabled at (0): [<ffff800080097c44>]
copy_process+0x638/0x18f4
    softirqs last disabled at (0): [<0000000000000000>] 0x0
    ---[ end trace 0000000000000000 ]---
    ------------[ cut here ]------------
    clk_multiplier already unprepared
    WARNING: CPU: 0 PID: 1084 at drivers/clk/clk.c:1053
clk_core_unprepare+0x110/0x130
    sd 0:0:0:0: [sda] Synchronizing SCSI cache
    CPU: 0 UID: 0 PID: 1084 Comm: s2idle Tainted: G        W
6.13.0-rc3-arm64-renesas-01336-g13a53d27900d #2738
    Tainted: [W]=WARN
    Hardware name: Renesas Salvator-X 2nd version board based on r8a77951 (DT)
    pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    pc : clk_core_unprepare+0x110/0x130
    lr : clk_core_unprepare+0x110/0x130
    sp : ffff800083a8ba00
    x29: ffff800083a8ba00 x28: ffff0004ca7e1a40 x27: ffff800081a0a968
    x26: ffff8000825ee000 x25: ffff800081ae0090 x24: 0000000000000000
    x23: ffff0004c0d64500 x22: 0000000000000000 x21: ffff0004c0d64480
    x20: 0000000000000001 x19: ffff0004c32c5800 x18: ffffffffffffffff
    x17: 000000040044ffff x16: 00000034b5503510 x15: 000000000000027a
    x14: 0000000000000000 x13: 000000000000b817 x12: 0000000000000000
    x11: 0000000000000001 x10: 0000000000001410 x9 : ffff800083a8b870
    x8 : ffff800083a8b798 x7 : ffff800083a8b850 x6 : ffff800083a8b7f0
    x5 : ffff800083a8b7d8 x4 : ffff800083a8c000 x3 : 0000000000000000
    x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff0004ca7e1a40
    Call trace:
     clk_core_unprepare+0x110/0x130 (P)
     clk_unprepare+0x28/0x3c
     rsnd_adg_clk_control+0x88/0xf4
     rsnd_suspend+0x14/0x20
     dpm_run_callback+0x4c/0x14c
     device_suspend+0x11c/0x4dc
     dpm_suspend+0xdc/0x214
     dpm_suspend_start+0x48/0x60
     suspend_devices_and_enter+0x124/0x574
     pm_suspend+0x1ac/0x274
     state_store+0x88/0x124
     kobj_attr_store+0x14/0x24
     sysfs_kf_write+0x48/0x6c
     kernfs_fop_write_iter+0x118/0x1a8
     vfs_write+0x280/0x37c
    [...]
    irq event stamp: 0
    hardirqs last  enabled at (0): [<0000000000000000>] 0x0
    hardirqs last disabled at (0): [<ffff800080097c44>]
copy_process+0x638/0x18f4
    softirqs last  enabled at (0): [<ffff800080097c44>]
copy_process+0x638/0x18f4
    softirqs last disabled at (0): [<0000000000000000>] 0x0
    ---[ end trace 0000000000000000 ]---

Unfortunately I cannot reproduce it at will.
The above is from today's renesas-devel release, but my logs indicate
it happens every few months since at least v6.1.
So far I have seen it on all Salvator-X(S) variants, but not on any other
SoCs or boards.

Do you have a clue?
Thanks!

[1] echo freeze > /sys/power/state

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

             reply	other threads:[~2024-12-16 13:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-16 13:51 Geert Uytterhoeven [this message]
2024-12-17  2:38 ` rsnd_adg_clk_control() sometimes disables already-disabled clock Kuninori Morimoto
2024-12-17  8:09   ` Geert Uytterhoeven

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAMuHMdVUKpO2rsia+36BLFFwdMapE8LrYS0duyd0FmrxDvwEfg@mail.gmail.com \
    --to=geert@linux-m68k.org \
    --cc=kuninori.morimoto.gx@renesas.com \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox