public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ALSA: hda/intel: increase default bdl_pos_adj for Nvidia controllers
@ 2026-02-25 14:53 Panagiotis Foliadis
  2026-02-25 14:58 ` Takashi Iwai
  0 siblings, 1 reply; 3+ messages in thread
From: Panagiotis Foliadis @ 2026-02-25 14:53 UTC (permalink / raw)
  To: Jaroslav Kysela, Takashi Iwai
  Cc: linux-sound, linux-kernel, stable, Charalampos Mitrodimas,
	Panagiotis Foliadis

The default bdl_pos_adj of 32 for Nvidia HDA controllers is
insufficient on GA102 (and likely other recent Nvidia GPUs) after S3
suspend/resume. The controller's DMA timing degrades after resume,
causing premature IRQ detection in azx_position_ok() which results in
silent HDMI/DP audio output despite userspace reporting a valid
playback state and correct ELD data.

Increase bdl_pos_adj to 64 for AZX_DRIVER_NVIDIA, matching the value
already used by Intel Apollo Lake for the same class of timing issue.

Cc: stable@vger.kernel.org
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221069
Suggested-by: Charalampos Mitrodimas <charmitro@posteo.net>
Signed-off-by: Panagiotis Foliadis <pfoliadis@posteo.net>
---
 sound/hda/controllers/intel.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sound/hda/controllers/intel.c b/sound/hda/controllers/intel.c
index 6fddf400c4a3d67042e421b81ac3a13607a24bcd..3f434994c18db64019d3b4cfff8a7cc8764b5f26 100644
--- a/sound/hda/controllers/intel.c
+++ b/sound/hda/controllers/intel.c
@@ -1751,6 +1751,8 @@ static int default_bdl_pos_adj(struct azx *chip)
 		return 1;
 	case AZX_DRIVER_ZHAOXINHDMI:
 		return 128;
+	case AZX_DRIVER_NVIDIA:
+		return 64;
 	default:
 		return 32;
 	}

---
base-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f
change-id: 20260223-nvidia-audio-fix-76f75db4e7c2

Best regards,
-- 
Panagiotis Foliadis <pfoliadis@posteo.net>


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

* [PATCH] ALSA: hda/intel: increase default bdl_pos_adj for Nvidia controllers
@ 2026-02-25 14:54 Panagiotis Foliadis
  0 siblings, 0 replies; 3+ messages in thread
From: Panagiotis Foliadis @ 2026-02-25 14:54 UTC (permalink / raw)
  To: Jaroslav Kysela, Takashi Iwai
  Cc: linux-sound, linux-kernel, stable, Charalampos Mitrodimas,
	Panagiotis Foliadis

The default bdl_pos_adj of 32 for Nvidia HDA controllers is
insufficient on GA102 (and likely other recent Nvidia GPUs) after S3
suspend/resume. The controller's DMA timing degrades after resume,
causing premature IRQ detection in azx_position_ok() which results in
silent HDMI/DP audio output despite userspace reporting a valid
playback state and correct ELD data.

Increase bdl_pos_adj to 64 for AZX_DRIVER_NVIDIA, matching the value
already used by Intel Apollo Lake for the same class of timing issue.

Cc: stable@vger.kernel.org
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221069
Suggested-by: Charalampos Mitrodimas <charmitro@posteo.net>
Signed-off-by: Panagiotis Foliadis <pfoliadis@posteo.net>
---
 sound/hda/controllers/intel.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sound/hda/controllers/intel.c b/sound/hda/controllers/intel.c
index 6fddf400c4a3d67042e421b81ac3a13607a24bcd..3f434994c18db64019d3b4cfff8a7cc8764b5f26 100644
--- a/sound/hda/controllers/intel.c
+++ b/sound/hda/controllers/intel.c
@@ -1751,6 +1751,8 @@ static int default_bdl_pos_adj(struct azx *chip)
 		return 1;
 	case AZX_DRIVER_ZHAOXINHDMI:
 		return 128;
+	case AZX_DRIVER_NVIDIA:
+		return 64;
 	default:
 		return 32;
 	}

---
base-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f
change-id: 20260223-nvidia-audio-fix-76f75db4e7c2

Best regards,
-- 
Panagiotis Foliadis <pfoliadis@posteo.net>


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

* Re: [PATCH] ALSA: hda/intel: increase default bdl_pos_adj for Nvidia controllers
  2026-02-25 14:53 [PATCH] ALSA: hda/intel: increase default bdl_pos_adj for Nvidia controllers Panagiotis Foliadis
@ 2026-02-25 14:58 ` Takashi Iwai
  0 siblings, 0 replies; 3+ messages in thread
From: Takashi Iwai @ 2026-02-25 14:58 UTC (permalink / raw)
  To: Panagiotis Foliadis
  Cc: Jaroslav Kysela, Takashi Iwai, linux-sound, linux-kernel, stable,
	Charalampos Mitrodimas

On Wed, 25 Feb 2026 15:53:43 +0100,
Panagiotis Foliadis wrote:
> 
> The default bdl_pos_adj of 32 for Nvidia HDA controllers is
> insufficient on GA102 (and likely other recent Nvidia GPUs) after S3
> suspend/resume. The controller's DMA timing degrades after resume,
> causing premature IRQ detection in azx_position_ok() which results in
> silent HDMI/DP audio output despite userspace reporting a valid
> playback state and correct ELD data.
> 
> Increase bdl_pos_adj to 64 for AZX_DRIVER_NVIDIA, matching the value
> already used by Intel Apollo Lake for the same class of timing issue.
> 
> Cc: stable@vger.kernel.org
> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221069
> Suggested-by: Charalampos Mitrodimas <charmitro@posteo.net>
> Signed-off-by: Panagiotis Foliadis <pfoliadis@posteo.net>

Thanks, applied now.


Takashi

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

end of thread, other threads:[~2026-02-25 14:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-25 14:53 [PATCH] ALSA: hda/intel: increase default bdl_pos_adj for Nvidia controllers Panagiotis Foliadis
2026-02-25 14:58 ` Takashi Iwai
  -- strict thread matches above, loose matches on Subject: below --
2026-02-25 14:54 Panagiotis Foliadis

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