soc/intel/apollolake: Add missing entries to pmc_to_gpio_route for GLK

This change adds missing entries in PMC to GPIO route mapping for GLK.

BUG=b:77224247

Change-Id: I66cadaa23b8bd4518a199733c8fba81168e60323
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/26853
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
diff --git a/src/soc/intel/apollolake/gpio_glk.c b/src/soc/intel/apollolake/gpio_glk.c
index a998118..037273c 100644
--- a/src/soc/intel/apollolake/gpio_glk.c
+++ b/src/soc/intel/apollolake/gpio_glk.c
@@ -131,11 +131,19 @@
 const struct pmc_to_gpio_route *soc_pmc_gpio_routes(size_t *num)
 {
 	static const struct pmc_to_gpio_route routes[] = {
+		{ PMC_GPE_SCC_31_0, GPIO_GPE_SCC_31_0 },
+		{ PMC_GPE_SCC_63_32, GPIO_GPE_SCC_63_32 },
 		{ PMC_GPE_NW_31_0, GPIO_GPE_NW_31_0 },
 		{ PMC_GPE_NW_63_32, GPIO_GPE_NW_63_32 },
+		{ PMC_GPE_NW_95_64, GPIO_GPE_NW_95_64 },
+		/*
+		 * PMC_GPE_NW_127_96 maps to GPIO group 3, which is reserved and
+		 * cannot be set in GPE0_DWx. Hence, it is skipped here.
+		 */
 		{ PMC_GPE_N_31_0, GPIO_GPE_N_31_0 },
 		{ PMC_GPE_N_63_32, GPIO_GPE_N_63_32 },
 		{ PMC_GPE_N_95_64, GPIO_GPE_N_95_64 },
+		{ PMC_GPE_AUDIO_31_0, GPIO_GPE_AUDIO_31_0 },
 	};
 	*num = ARRAY_SIZE(routes);
 	return routes;
diff --git a/src/soc/intel/apollolake/include/soc/pm.h b/src/soc/intel/apollolake/include/soc/pm.h
index e8ec645..6de39a0 100644
--- a/src/soc/intel/apollolake/include/soc/pm.h
+++ b/src/soc/intel/apollolake/include/soc/pm.h
@@ -196,6 +196,7 @@
 #define GPE0_DW_SHIFT(x)	(4 + 4*(x))
 
 #if IS_ENABLED(CONFIG_SOC_INTEL_GLK)
+#define PMC_GPE_AUDIO_31_0	9
 #define PMC_GPE_N_95_64		8
 #define PMC_GPE_N_63_32		7
 #define PMC_GPE_N_31_0		6