summaryrefslogtreecommitdiff
path: root/src/mainboard/foxconn/g41s-k/hda_verb.c
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2018-12-15 21:38:39 +0100
committerPatrick Georgi <pgeorgi@google.com>2019-01-10 12:17:10 +0000
commitf3e50fc68186fbfa93f77d05f182bf0435e745ab (patch)
tree12fd4e95d9ceab386dda329cb31f1f79786a77d0 /src/mainboard/foxconn/g41s-k/hda_verb.c
parent13f58e47ed995a73b2ae57c25b98afed84675783 (diff)
downloadcoreboot-f3e50fc68186fbfa93f77d05f182bf0435e745ab.tar.xz
mb/foxconn/g41s-k: Add g41m variant
Was tested with the following: - 2 DIMM slots - USB - Ethernet NIC - automatic fan control - Libgfxinit with VGA, DVI (HDMI slot unpopulated) - PS2 Keyboard - SATA - PEG - S3 resume What does not work: - Using the second DIMM slot on a channel G41 can only handle 2 ranks per channel and on this mainboard 1 rank per DIMM slot. Supporting this would require too much raminit rework and is not worth it (at least for me) Change-Id: I67784038ef929f561b82365f00db70a69c024321 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/30242 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Diffstat (limited to 'src/mainboard/foxconn/g41s-k/hda_verb.c')
-rw-r--r--src/mainboard/foxconn/g41s-k/hda_verb.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/mainboard/foxconn/g41s-k/hda_verb.c b/src/mainboard/foxconn/g41s-k/hda_verb.c
index 45943b8c6c..9ac3c3be6e 100644
--- a/src/mainboard/foxconn/g41s-k/hda_verb.c
+++ b/src/mainboard/foxconn/g41s-k/hda_verb.c
@@ -17,6 +17,7 @@
#include <device/azalia_device.h>
+#if IS_ENABLED(CONFIG_BOARD_FOXCONN_G41S_K)
const u32 cim_verb_data[] = {
/* coreboot specific header */
0x10ec0888, /* Vendor ID */
@@ -40,6 +41,31 @@ const u32 cim_verb_data[] = {
AZALIA_PIN_CFG(0, 0x1e, 0x01441130),
AZALIA_PIN_CFG(0, 0x1f, 0x411111f0),
};
+#else /* CONFIG_BOARD_FOXCONN_G41M */
+const u32 cim_verb_data[] = {
+ /* coreboot specific header */
+ 0x10ec0888, /* Vendor ID */
+ 0x105b0dc0, /* Subsystem ID */
+ 0x0000000e, /* Number of entries */
+
+ /* Pin Widget Verb Table */
+
+ AZALIA_PIN_CFG(2, 0x11, 0x01441140),
+ AZALIA_PIN_CFG(2, 0x12, 0x411111f0),
+ AZALIA_PIN_CFG(2, 0x14, 0x01014410),
+ AZALIA_PIN_CFG(2, 0x15, 0x01011412),
+ AZALIA_PIN_CFG(2, 0x16, 0x01016411),
+ AZALIA_PIN_CFG(2, 0x17, 0x01012414),
+ AZALIA_PIN_CFG(2, 0x18, 0x01a19c50),
+ AZALIA_PIN_CFG(2, 0x19, 0x02a19c60),
+ AZALIA_PIN_CFG(2, 0x1a, 0x0181345f),
+ AZALIA_PIN_CFG(2, 0x1b, 0x02014c20),
+ AZALIA_PIN_CFG(2, 0x1c, 0x593301f0),
+ AZALIA_PIN_CFG(2, 0x1d, 0x4007f603),
+ AZALIA_PIN_CFG(2, 0x1e, 0x99430130),
+ AZALIA_PIN_CFG(2, 0x1f, 0x411111f0),
+};
+#endif
const u32 pc_beep_verbs[0] = {};