mb/system76: Reset Realtek codec before configuring

Perform a codec reset before configuring to avoid potential issues like
oryp5 had before 86f410479ca9 ("mb/system76/oryp5: Reset HDA before
configuring").

Inspecting proprietary firmware for multiple boards shows that this is
always done as well.

Change-Id: I64c1fd23f708f77a81fad0bc889f42d4df3f6e61
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66918
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jeremy Soller <jeremy@system76.com>
diff --git a/src/mainboard/system76/addw1/variants/addw1/hda_verb.c b/src/mainboard/system76/addw1/variants/addw1/hda_verb.c
index ca440e4..aedd285 100644
--- a/src/mainboard/system76/addw1/variants/addw1/hda_verb.c
+++ b/src/mainboard/system76/addw1/variants/addw1/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x155865d1, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155865d1),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130), // DMIC
 	AZALIA_PIN_CFG(0, 0x14, 0x0421101f), // FRONT (Port-D)
 	AZALIA_PIN_CFG(0, 0x15, 0x40000000), // SURR (Port-A)
diff --git a/src/mainboard/system76/addw1/variants/addw2/hda_verb.c b/src/mainboard/system76/addw1/variants/addw2/hda_verb.c
index 9b1cb63..8175c9b 100644
--- a/src/mainboard/system76/addw1/variants/addw2/hda_verb.c
+++ b/src/mainboard/system76/addw1/variants/addw2/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x155865e1, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155865e1),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130), // DMIC
 	AZALIA_PIN_CFG(0, 0x14, 0x0421101f), // FRONT (Port-D)
 	AZALIA_PIN_CFG(0, 0x15, 0x40000000), // SURR (Port-A)
diff --git a/src/mainboard/system76/bonw14/hda_verb.c b/src/mainboard/system76/bonw14/hda_verb.c
index 00f5fdb..dfe3187 100644
--- a/src/mainboard/system76/bonw14/hda_verb.c
+++ b/src/mainboard/system76/bonw14/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x15587714, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15587714),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x14, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x15, 0x411111f0),
diff --git a/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c b/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c
index 09d8357..95f9d43 100644
--- a/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c
+++ b/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15581404, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581404),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c b/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c
index 1b04604..2030d00 100644
--- a/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c
+++ b/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15581403, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581403),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/gaze15/variants/gaze14/hda_verb.c b/src/mainboard/system76/gaze15/variants/gaze14/hda_verb.c
index 367d647..6bc881b 100644
--- a/src/mainboard/system76/gaze15/variants/gaze14/hda_verb.c
+++ b/src/mainboard/system76/gaze15/variants/gaze14/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC269VC */
 	0x10ec0269, /* Vendor ID */
 	0x15588560, /* Subsystem ID */
-	11, /* Number of entries */
+	12, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15588560),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
 	AZALIA_PIN_CFG(0, 0x15, 0x02211020),
diff --git a/src/mainboard/system76/gaze15/variants/gaze15/hda_verb.c b/src/mainboard/system76/gaze15/variants/gaze15/hda_verb.c
index 1540485..761386a 100644
--- a/src/mainboard/system76/gaze15/variants/gaze15/hda_verb.c
+++ b/src/mainboard/system76/gaze15/variants/gaze15/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15588520, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15588520),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/gaze16/variants/gaze16-3050/hda_verb.c b/src/mainboard/system76/gaze16/variants/gaze16-3050/hda_verb.c
index 28127f3..35c27a1 100644
--- a/src/mainboard/system76/gaze16/variants/gaze16-3050/hda_verb.c
+++ b/src/mainboard/system76/gaze16/variants/gaze16-3050/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC256 */
 	0x10ec0256, /* Vendor ID */
 	0x15585017, /* Subsystem ID */
-	11, /* Number of entries */
+	12, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15585017),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/gaze16/variants/gaze16-3060/hda_verb.c b/src/mainboard/system76/gaze16/variants/gaze16-3060/hda_verb.c
index 4a4fc0e..491e32b 100644
--- a/src/mainboard/system76/gaze16/variants/gaze16-3060/hda_verb.c
+++ b/src/mainboard/system76/gaze16/variants/gaze16-3060/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC256 */
 	0x10ec0256, /* Vendor ID */
 	0x155850e2, /* Subsystem ID */
-	11, /* Number of entries */
+	12, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155850e2),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c b/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c
index 8e5012b..208107c 100644
--- a/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c
+++ b/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC269VC */
 	0x10ec0269, /* Vendor ID */
 	0x15581303, /* Subsystem ID */
-	11, /* Number of entries */
+	12, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581303),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170120),
 	AZALIA_PIN_CFG(0, 0x15, 0x02211010),
diff --git a/src/mainboard/system76/kbl-u/variants/galp3-b/hda_verb.c b/src/mainboard/system76/kbl-u/variants/galp3-b/hda_verb.c
index a7c927f..2e43bef 100644
--- a/src/mainboard/system76/kbl-u/variants/galp3-b/hda_verb.c
+++ b/src/mainboard/system76/kbl-u/variants/galp3-b/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC269VC */
 	0x10ec0269, /* Vendor ID */
 	0x15581414, /* Subsystem ID */
-	11, /* Number of entries */
+	12, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581414),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170120),
 	AZALIA_PIN_CFG(0, 0x15, 0x02211010),
diff --git a/src/mainboard/system76/kbl-u/variants/galp3/hda_verb.c b/src/mainboard/system76/kbl-u/variants/galp3/hda_verb.c
index 83cd41d..de588d5 100644
--- a/src/mainboard/system76/kbl-u/variants/galp3/hda_verb.c
+++ b/src/mainboard/system76/kbl-u/variants/galp3/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC269VC */
 	0x10ec0269, /* Vendor ID */
 	0x15581313, /* Subsystem ID */
-	11, /* Number of entries */
+	12, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581313),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170120),
 	AZALIA_PIN_CFG(0, 0x15, 0x02211010),
diff --git a/src/mainboard/system76/lemp9/hda_verb.c b/src/mainboard/system76/lemp9/hda_verb.c
index 7bb0736..1b9386d 100644
--- a/src/mainboard/system76/lemp9/hda_verb.c
+++ b/src/mainboard/system76/lemp9/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15581401, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581401),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/oryp5/hda_verb.c b/src/mainboard/system76/oryp5/hda_verb.c
index 2d10725..575c839 100644
--- a/src/mainboard/system76/oryp5/hda_verb.c
+++ b/src/mainboard/system76/oryp5/hda_verb.c
@@ -6,7 +6,7 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x155896e1, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155896e1),
 	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140), // DMIC
diff --git a/src/mainboard/system76/oryp6/variants/oryp6/hda_verb.c b/src/mainboard/system76/oryp6/variants/oryp6/hda_verb.c
index b36ad82..2f30d40 100644
--- a/src/mainboard/system76/oryp6/variants/oryp6/hda_verb.c
+++ b/src/mainboard/system76/oryp6/variants/oryp6/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x155850d3, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155850d3),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x14, 0x0421101f),
 	AZALIA_PIN_CFG(0, 0x15, 0x40000000),
diff --git a/src/mainboard/system76/oryp6/variants/oryp7/hda_verb.c b/src/mainboard/system76/oryp6/variants/oryp7/hda_verb.c
index cc959b8..d251b33 100644
--- a/src/mainboard/system76/oryp6/variants/oryp7/hda_verb.c
+++ b/src/mainboard/system76/oryp6/variants/oryp7/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x155865e5, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155865e5),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x14, 0x0421101f),
 	AZALIA_PIN_CFG(0, 0x15, 0x40000000),
diff --git a/src/mainboard/system76/oryp8/hda_verb.c b/src/mainboard/system76/oryp8/hda_verb.c
index 47d28dd..2a32f01 100644
--- a/src/mainboard/system76/oryp8/hda_verb.c
+++ b/src/mainboard/system76/oryp8/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC1220 */
 	0x10ec1220, /* Vendor ID */
 	0x155865f1, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155865f1),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x14, 0x0421101f),
 	AZALIA_PIN_CFG(0, 0x15, 0x40000000),
diff --git a/src/mainboard/system76/tgl-u/variants/darp7/hda_verb.c b/src/mainboard/system76/tgl-u/variants/darp7/hda_verb.c
index dc5f72e..53a47bd 100644
--- a/src/mainboard/system76/tgl-u/variants/darp7/hda_verb.c
+++ b/src/mainboard/system76/tgl-u/variants/darp7/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x155851a1, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155851a1),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/tgl-u/variants/galp5/hda_verb.c b/src/mainboard/system76/tgl-u/variants/galp5/hda_verb.c
index 1f21ff7..c0afb19 100644
--- a/src/mainboard/system76/tgl-u/variants/galp5/hda_verb.c
+++ b/src/mainboard/system76/tgl-u/variants/galp5/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15584018, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15584018),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/tgl-u/variants/lemp10/hda_verb.c b/src/mainboard/system76/tgl-u/variants/lemp10/hda_verb.c
index 1259ba1..43a0ee5 100644
--- a/src/mainboard/system76/tgl-u/variants/lemp10/hda_verb.c
+++ b/src/mainboard/system76/tgl-u/variants/lemp10/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek, ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x155814a1, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x155814a1),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c b/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c
index c363590..3372f9c 100644
--- a/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c
+++ b/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15581325, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581325),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),
diff --git a/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c b/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c
index fe94926..03f2f8c 100644
--- a/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c
+++ b/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c
@@ -6,8 +6,9 @@
 	/* Realtek ALC293 */
 	0x10ec0293, /* Vendor ID */
 	0x15581323, /* Subsystem ID */
-	12, /* Number of entries */
+	13, /* Number of entries */
 	AZALIA_SUBVENDOR(0, 0x15581323),
+	AZALIA_RESET(1),
 	AZALIA_PIN_CFG(0, 0x12, 0x90a60130),
 	AZALIA_PIN_CFG(0, 0x13, 0x40000000),
 	AZALIA_PIN_CFG(0, 0x14, 0x90170110),