mb/system76/kbl-u: Add Galago Pro 2 as a variant

Change-Id: Ia277b3ad50c9f821ab3e1dcb8327314ba955fa79
Signed-off-by: Jeremy Soller <jeremy@system76.com>
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/52219
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/mainboard/system76/kbl-u/Kconfig b/src/mainboard/system76/kbl-u/Kconfig
index aeb9880..a714bb8 100644
--- a/src/mainboard/system76/kbl-u/Kconfig
+++ b/src/mainboard/system76/kbl-u/Kconfig
@@ -1,4 +1,4 @@
-if BOARD_SYSTEM76_GALP3 || BOARD_SYSTEM76_GALP3_B
+if BOARD_SYSTEM76_GALP2 || BOARD_SYSTEM76_GALP3 || BOARD_SYSTEM76_GALP3_B
 
 config BOARD_SPECIFIC_OPTIONS
 	def_bool y
@@ -22,10 +22,12 @@
 	default "system76/kbl-u"
 
 config VARIANT_DIR
+	default "galp2" if BOARD_SYSTEM76_GALP2
 	default "galp3" if BOARD_SYSTEM76_GALP3
 	default "galp3-b" if BOARD_SYSTEM76_GALP3_B
 
 config MAINBOARD_PART_NUMBER
+	default "galp2" if BOARD_SYSTEM76_GALP2
 	default "galp3" if BOARD_SYSTEM76_GALP3
 	default "galp3-b" if BOARD_SYSTEM76_GALP3_B
 
@@ -33,6 +35,7 @@
 	default "Galago Pro"
 
 config MAINBOARD_VERSION
+	default "galp2" if BOARD_SYSTEM76_GALP2
 	default "galp3" if BOARD_SYSTEM76_GALP3
 	default "galp3-b" if BOARD_SYSTEM76_GALP3_B
 
@@ -55,6 +58,7 @@
 	default 512
 
 config VGA_BIOS_ID
+	default "8086,5916" if BOARD_SYSTEM76_GALP2
 	default "8086,5917" if BOARD_SYSTEM76_GALP3 || BOARD_SYSTEM76_GALP3_B
 
 config POST_DEVICE
diff --git a/src/mainboard/system76/kbl-u/Kconfig.name b/src/mainboard/system76/kbl-u/Kconfig.name
index 97b0f5a..143ac15 100644
--- a/src/mainboard/system76/kbl-u/Kconfig.name
+++ b/src/mainboard/system76/kbl-u/Kconfig.name
@@ -1,3 +1,6 @@
+config BOARD_SYSTEM76_GALP2
+	bool "galp2"
+
 config BOARD_SYSTEM76_GALP3
 	bool "galp3"
 
diff --git a/src/mainboard/system76/kbl-u/variants/galp2/data.vbt b/src/mainboard/system76/kbl-u/variants/galp2/data.vbt
new file mode 100644
index 0000000..b7d91b1
--- /dev/null
+++ b/src/mainboard/system76/kbl-u/variants/galp2/data.vbt
Binary files differ
diff --git a/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c b/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c
new file mode 100644
index 0000000..8e5012b
--- /dev/null
+++ b/src/mainboard/system76/kbl-u/variants/galp2/hda_verb.c
@@ -0,0 +1,33 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#include <device/azalia_device.h>
+
+const u32 cim_verb_data[] = {
+	/* Realtek, ALC269VC */
+	0x10ec0269, /* Vendor ID */
+	0x15581303, /* Subsystem ID */
+	11, /* Number of entries */
+	AZALIA_SUBVENDOR(0, 0x15581303),
+	AZALIA_PIN_CFG(0, 0x12, 0x90a60140),
+	AZALIA_PIN_CFG(0, 0x14, 0x90170120),
+	AZALIA_PIN_CFG(0, 0x15, 0x02211010),
+	AZALIA_PIN_CFG(0, 0x17, 0x40000000),
+	AZALIA_PIN_CFG(0, 0x18, 0x02a11030),
+	AZALIA_PIN_CFG(0, 0x19, 0x411111f0),
+	AZALIA_PIN_CFG(0, 0x1a, 0x411111f0),
+	AZALIA_PIN_CFG(0, 0x1b, 0x411111f0),
+	AZALIA_PIN_CFG(0, 0x1d, 0x40f4a205),
+	AZALIA_PIN_CFG(0, 0x1e, 0x411111f0),
+	/* Intel, KabylakeHDMI */
+	0x8086280b, /* Vendor ID */
+	0x80860101, /* Subsystem ID */
+	4, /* Number of entries */
+	AZALIA_SUBVENDOR(2, 0x80860101),
+	AZALIA_PIN_CFG(2, 0x05, 0x18560010),
+	AZALIA_PIN_CFG(2, 0x06, 0x18560010),
+	AZALIA_PIN_CFG(2, 0x07, 0x18560010),
+};
+
+const u32 pc_beep_verbs[] = {};
+
+AZALIA_ARRAY_SIZES;
diff --git a/src/mainboard/system76/kbl-u/variants/galp2/overridetree.cb b/src/mainboard/system76/kbl-u/variants/galp2/overridetree.cb
new file mode 100644
index 0000000..9e042a3
--- /dev/null
+++ b/src/mainboard/system76/kbl-u/variants/galp2/overridetree.cb
@@ -0,0 +1,5 @@
+chip soc/intel/skylake
+	device domain 0 on
+		subsystemid 0x1558 0x1303 inherit
+	end
+end