Skip to contentSkip to conversation

ALSA: HDA: Correct address for SSYNC register

PATCH In review David Henningsson 2 participants 2 messages Mar 16, 2011 Sound

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ALSA: HDA: Correct address for SSYNC register

Here's something I stumbled upon, while debugging something probably unrelated. I don't exactly know the implications of failing multiple stream synchronisation (is that something we commonly use?), or the implications of writing to a register that is "Reserved" in the HDA Spec (can there be crazy vendor magic in there we're unwillingly messing with?).

Perhaps someone else knows more and can tell if this is something that is actually important.

Signature · 2 lines
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
Quoted 1 line

From d7ade361618ee99b89a82b84b035d345ef7a1bd9 Mon Sep 17 00:00:00 2001

From: David Henningsson <[email protected]>
Date: Wed, 16 Mar 2011 11:35:11 +0100
Subject: [PATCH] ALSA: HDA: Correct address for SYNC register

The SSYNC register is located at address 0x38 according to the HDA specification.

---
 sound/pci/hda/hda_intel.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
sound/pci/hda/hda_intel.c +1 -1
index 70a9d32..ab3f654 100644
@@ -176,7 +176,7 @@ MODULE_DESCRIPTION("Intel HDA driver");
 #define ICH6_REG_INTCTL			0x20
 #define ICH6_REG_INTSTS			0x24
 #define ICH6_REG_WALLCLK		0x30	/* 24Mhz source */
-#define ICH6_REG_SYNC			0x34	
+#define ICH6_REG_SYNC			0x38
 #define ICH6_REG_CORBLBASE		0x40
 #define ICH6_REG_CORBUBASE		0x44
 #define ICH6_REG_CORBWP			0x48
Signature · 1 line
1.7.1

_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

#1 lore raw

At Wed, 16 Mar 2011 11:51:00 +0100,

Quoted 9 lines · David Henningsson

Here's something I stumbled upon, while debugging something probably unrelated. I don't exactly know the implications of failing multiple stream synchronisation (is that something we commonly use?), or the implications of writing to a register that is "Reserved" in the HDA Spec (can there be crazy vendor magic in there we're unwillingly messing with?).

Perhaps someone else knows more and can tell if this is something that is actually important.

Hrm, it seems that this register was changed at some time. In the old ICH6 datasheet, based on which I wrote the driver, shows SSYNC is 0x34. I checked ICH7 and ICH9, ICH10 datasheet, and all show 0x34, too.

Meanwhile SCH datasheet says it's 0x38, just like HD-audio spec 1.0. So, I'm not sure whether we can change this. We should fix this once when we confirm with a hardware that this is really a bogus value.

thanks,

Takashi

Quoted 34 lines
Signature · 3 lines
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
[2 0001-ALSA-HDA-Correct-address-for-SYNC-register.patch <text/x-patch (7bit)>]
Quoted 1 line

From d7ade361618ee99b89a82b84b035d345ef7a1bd9 Mon Sep 17 00:00:00 2001

From: David Henningsson <[email protected]>
Date: Wed, 16 Mar 2011 11:35:11 +0100
Subject: [PATCH] ALSA: HDA: Correct address for SYNC register

The SSYNC register is located at address 0x38 according to the HDA specification.

---
 sound/pci/hda/hda_intel.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
sound/pci/hda/hda_intel.c +1 -1
index 70a9d32..ab3f654 100644
@@ -176,7 +176,7 @@ MODULE_DESCRIPTION("Intel HDA driver");
 #define ICH6_REG_INTCTL			0x20
 #define ICH6_REG_INTSTS			0x24
 #define ICH6_REG_WALLCLK		0x30	/* 24Mhz source */
-#define ICH6_REG_SYNC			0x34	
+#define ICH6_REG_SYNC			0x38
 #define ICH6_REG_CORBLBASE		0x40
 #define ICH6_REG_CORBUBASE		0x44
 #define ICH6_REG_CORBWP			0x48
Signature · 1 line
1.7.1