diff mbox

[3/5] hda-spec: Add more secret nodes for Realtek codecs

Message ID 1411384146-23286-4-git-send-email-david.henningsson@canonical.com (mailing list archive)
State Accepted
Delegated to: Takashi Iwai
Headers show

Commit Message

David Henningsson Sept. 22, 2014, 11:09 a.m. UTC
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
---
 hda-spec.c | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)
diff mbox

Patch

diff --git a/hda-spec.c b/hda-spec.c
index fa21cf5..935dcc0 100644
--- a/hda-spec.c
+++ b/hda-spec.c
@@ -462,17 +462,26 @@  static int realtek_ext_cmd(struct xhda_codec *codec, unsigned int cmd)
 {
 	unsigned int nid = (cmd >> 20) & 0x7f;
 
+	codec->rc = 0;
+
 	/* just ignore COEFs on ALC260 for non-existing NID 0x20 */
-	if (codec->vendor_id == 0x10ec0260 && nid == 0x20) {
-		codec->rc = 0;
+	if (codec->vendor_id == 0x10ec0260 && nid == 0x20)
+		return 0;
+
+	if (codec->vendor_id == 0x10ec0283 && nid == 0x53)
+		return 0;
+
+	if (codec->vendor_id == 0x10ec0255 && nid == 0x57)
+		return 0;
+
+	if (codec->vendor_id == 0x10ec0293 && nid == 0x57)
 		return 0;
-	}
 
-	if (nid != 0x51)
-		return -ENXIO;
 	/* There might be a secret DSP connected to node 0x51 */
-	codec->rc = 0;
-	return 0;
+	if (nid == 0x51)
+		return 0;
+
+	return -ENXIO;
 }
 
 /*