Linux Power Management development
 help / color / mirror / Atom feed
From: Ingo Haenlein <ingo.haenlein@gmx.de>
To: chengordon326@gmail.com
Cc: Shyam-sundar.S-k@amd.com, linux-kernel@vger.kernel.org,
	linux-pm@vger.kernel.org, linux-usb@vger.kernel.org,
	mario.limonciello@amd.com, mathias.nyman@intel.com,
	platform-driver-x86@vger.kernel.org
Subject: Re: USB-audio isochronous Missed Service Errors on AMD Zen5 client (Fire Range) -- Data Fabric idle C-state? No OS-level knob found
Date: Thu, 25 Jun 2026 22:47:56 +0200	[thread overview]
Message-ID: <56a48231-5f1b-4697-a732-bdbddd38a96b@gmx.de> (raw)
In-Reply-To: <18b4e4f7089aa4f1.da8dbe994ae3bb77.445e21b98b0b205b@GordonMsi>

Hi Gordon,

I am reporting a related data point from an AMD Strix Halo system
(HP ZBook Ultra G1a, Ryzen AI MAX+ PRO 395, xHCI [1022:158b] on Bus 007).

Michal Pecio pointed me to your thread from my linux-usb report:
https://lore.kernel.org/linux-usb/48aadb68-b4d1-4dd6-82ca-76d0846b4ae1@gmx.de/

Same error class: COMP_MISSED_SERVICE_ERROR / -EXDEV on isochronous USB
audio endpoints, sporadic bursts during continuous full-duplex streaming,
no DMA error. Same LTC/LTR constellation: HCCPARAMS1 = 0x0118ffc5
(LTC=1), but DevCap2: LTR- on both the xHCI function (c5:00.4) and the
upstream internal GPP bridge (00:08.3).

One divergence from your Fire Range result:

stress-ng --stream does not suppress the issue on Strix Halo, neither
with 1 nor with 32 workers. Under full --stream load, amdgpu_top shows
GFX_MCLK staying at 1000 MHz -- which is the hardware ceiling on this
platform (LPDDR5 400-1000 MHz, per amdgpu_top header). Fire Range
reaches 2800 MHz under --stream, which appears to be what keeps the DF
out of the problematic idle state. On Strix Halo that lever does not
exist: --stream cannot push MCLK beyond 1000 MHz, so the DF can
apparently still reach the idle state that causes ISO ring loss.

SOCCLK on Strix Halo shows only an average (~650-666 MHz) via
amdgpu_top; Cur. reads N/A MHz -- no current-state visibility from the
OS, unlike what you can read on Fire Range.

So on Strix Halo: same error class, same LTC/LTR contradiction, but
the --stream workaround is structurally ineffective due to the lower
MCLK ceiling. Your questions to AMD (DF idle / ISO DMA interaction,
OS-accessible knob) apply here as well.

Do you have any update from AMD on the questions you raised -- in
particular whether Set LTV reaches the DF via sideband, and whether
there is an OS-accessible knob to hold the fabric active during ISO
streaming?

Regards,
Ingo


      parent reply	other threads:[~2026-06-25 20:48 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-01  7:38 USB-audio isochronous Missed Service Errors on AMD Zen5 client (Fire Range) -- Data Fabric idle C-state? No OS-level knob found Gordon Chen
2026-06-01 12:58 ` Mathias Nyman
2026-06-01 13:21   ` Gordon Chen
2026-06-01 13:44     ` Gordon Chen
2026-06-25 20:47 ` Ingo Haenlein [this message]

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=56a48231-5f1b-4697-a732-bdbddd38a96b@gmx.de \
    --to=ingo.haenlein@gmx.de \
    --cc=Shyam-sundar.S-k@amd.com \
    --cc=chengordon326@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=mathias.nyman@intel.com \
    --cc=platform-driver-x86@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