aboutsummaryrefslogtreecommitdiff
path: root/src/soc
diff options
context:
space:
mode:
authorSubrata Banik <subrata.banik@intel.com>2018-10-31 23:08:14 +0530
committerSubrata Banik <subrata.banik@intel.com>2019-06-13 04:38:08 +0000
commit3d152ac388fa43b4c3d1bfeedcb6a40f1479ace3 (patch)
treeca39c17047de8a3059cea7314f95910f2b45a8a1 /src/soc
parent8a70918b8a78d8d5cd27e830cc4ae496b10d4f32 (diff)
soc/intel/icelake: Replace PCI device LPC to ESPI as per EDS
As per Icelake EDS PCI device B:D:F (0:0x1f:0) referred as ESPI, hence modify SoC code to reflect the same. This patch replaces all SoC specific PCI LPC references with ESPI except anything that touches intel common code block. Change-Id: I4990ea6d9b7b4c0eac2b3eea559f5469f086e827 Signed-off-by: Subrata Banik <subrata.banik@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/33190 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Lean Sheng Tan <lean.sheng.tan@intel.com>
Diffstat (limited to 'src/soc')
-rw-r--r--src/soc/intel/common/block/lpc/lpc.c14
-rw-r--r--src/soc/intel/icelake/Makefile.inc6
-rw-r--r--src/soc/intel/icelake/acpi.c4
-rw-r--r--src/soc/intel/icelake/acpi/espi.asl (renamed from src/soc/intel/icelake/acpi/lpc.asl)4
-rw-r--r--src/soc/intel/icelake/acpi/southbridge.asl4
-rw-r--r--src/soc/intel/icelake/bootblock/pch.c6
-rw-r--r--src/soc/intel/icelake/bootblock/report_platform.c24
-rw-r--r--src/soc/intel/icelake/chip.c3
-rw-r--r--src/soc/intel/icelake/espi.c (renamed from src/soc/intel/icelake/lpc.c)23
-rw-r--r--src/soc/intel/icelake/fsp_params.c2
-rw-r--r--src/soc/intel/icelake/include/soc/espi.h (renamed from src/soc/intel/icelake/include/soc/lpc.h)23
-rw-r--r--src/soc/intel/icelake/include/soc/pci_devs.h36
-rw-r--r--src/soc/intel/icelake/include/soc/pcr_ids.h2
-rw-r--r--src/soc/intel/icelake/pmutil.c2
14 files changed, 77 insertions, 76 deletions
diff --git a/src/soc/intel/common/block/lpc/lpc.c b/src/soc/intel/common/block/lpc/lpc.c
index 84471d2f2f..54c7706f6e 100644
--- a/src/soc/intel/common/block/lpc/lpc.c
+++ b/src/soc/intel/common/block/lpc/lpc.c
@@ -156,13 +156,13 @@ static const unsigned short pci_device_ids[] = {
PCI_DEVICE_ID_INTEL_CNL_Y_PREMIUM_LPC,
PCI_DEVICE_ID_INTEL_CNP_H_LPC_Q370,
PCI_DEVICE_ID_INTEL_CNP_H_LPC_QM370,
- PCI_DEVICE_ID_INTEL_ICL_BASE_U_LPC,
- PCI_DEVICE_ID_INTEL_ICL_BASE_Y_LPC,
- PCI_DEVICE_ID_INTEL_ICL_U_PREMIUM_LPC,
- PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_LPC,
- PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_LPC_REV0,
- PCI_DEVICE_ID_INTEL_ICL_SUPER_Y_LPC,
- PCI_DEVICE_ID_INTEL_ICL_Y_PREMIUM_LPC,
+ PCI_DEVICE_ID_INTEL_ICL_BASE_U_ESPI,
+ PCI_DEVICE_ID_INTEL_ICL_BASE_Y_ESPI,
+ PCI_DEVICE_ID_INTEL_ICL_U_PREMIUM_ESPI,
+ PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_ESPI,
+ PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_ESPI_REV0,
+ PCI_DEVICE_ID_INTEL_ICL_SUPER_Y_ESPI,
+ PCI_DEVICE_ID_INTEL_ICL_Y_PREMIUM_ESPI,
PCI_DEVICE_ID_INTEL_CMP_SUPER_U_LPC,
PCI_DEVICE_ID_INTEL_CMP_PREMIUM_Y_LPC,
PCI_DEVICE_ID_INTEL_CMP_PREMIUM_U_LPC,
diff --git a/src/soc/intel/icelake/Makefile.inc b/src/soc/intel/icelake/Makefile.inc
index cd6a6ba842..0d4e32d131 100644
--- a/src/soc/intel/icelake/Makefile.inc
+++ b/src/soc/intel/icelake/Makefile.inc
@@ -13,19 +13,19 @@ bootblock-y += bootblock/cpu.c
bootblock-y += bootblock/pch.c
bootblock-y += pmutil.c
bootblock-y += bootblock/report_platform.c
+bootblock-y += espi.c
bootblock-y += gpio.c
bootblock-y += gspi.c
bootblock-y += i2c.c
bootblock-y += memmap.c
bootblock-y += spi.c
-bootblock-y += lpc.c
bootblock-y += p2sb.c
bootblock-y += uart.c
+romstage-y += espi.c
romstage-y += gpio.c
romstage-y += gspi.c
romstage-y += i2c.c
-romstage-y += lpc.c
romstage-y += memmap.c
romstage-y += pmutil.c
romstage-y += reset.c
@@ -36,6 +36,7 @@ ramstage-y += acpi.c
ramstage-y += chip.c
ramstage-y += cpu.c
ramstage-y += elog.c
+ramstage-y += espi.c
ramstage-y += finalize.c
ramstage-y += fsp_params.c
ramstage-y += gpio.c
@@ -44,7 +45,6 @@ ramstage-y += gspi.c
ramstage-y += gpio.c
ramstage-y += i2c.c
ramstage-y += lockdown.c
-ramstage-y += lpc.c
ramstage-y += memmap.c
ramstage-y += p2sb.c
ramstage-y += pmc.c
diff --git a/src/soc/intel/icelake/acpi.c b/src/soc/intel/icelake/acpi.c
index f16469eb63..3a46c930ab 100644
--- a/src/soc/intel/icelake/acpi.c
+++ b/src/soc/intel/icelake/acpi.c
@@ -169,7 +169,7 @@ void soc_power_states_generation(int core_id, int cores_per_package)
void soc_fill_fadt(acpi_fadt_t *fadt)
{
const uint16_t pmbase = ACPI_BASE_ADDRESS;
- const struct device *dev = PCH_DEV_LPC;
+ const struct device *dev = pcidev_on_root(0, 0);
const struct soc_intel_icelake_config *config = dev->chip_info;
if (!config->PmTimerDisabled) {
@@ -194,7 +194,7 @@ uint32_t soc_read_sci_irq_select(void)
void acpi_create_gnvs(struct global_nvs_t *gnvs)
{
- const struct device *dev = PCH_DEV_LPC;
+ const struct device *dev = pcidev_on_root(0, 0);
const struct soc_intel_icelake_config *config = dev->chip_info;
/* Set unknown wake source */
diff --git a/src/soc/intel/icelake/acpi/lpc.asl b/src/soc/intel/icelake/acpi/espi.asl
index f936392ea3..4456812ba6 100644
--- a/src/soc/intel/icelake/acpi/lpc.asl
+++ b/src/soc/intel/icelake/acpi/espi.asl
@@ -13,10 +13,12 @@
* GNU General Public License for more details.
*/
+
+/* Device identifier is not changed to ESPI to maintain coherency with ec.asl */
Device (LPCB)
{
Name (_ADR, 0x001f0000)
- Name (_DDN, "LPC Bus Device")
+ Name (_DDN, "ESPI Bus Device")
Device (FWH)
{
diff --git a/src/soc/intel/icelake/acpi/southbridge.asl b/src/soc/intel/icelake/acpi/southbridge.asl
index 1b9abe6b63..ffd2fcca71 100644
--- a/src/soc/intel/icelake/acpi/southbridge.asl
+++ b/src/soc/intel/icelake/acpi/southbridge.asl
@@ -32,8 +32,8 @@
/* GPIO controller */
#include "gpio.asl"
-/* LPC 0:1f.0 */
-#include "lpc.asl"
+/* ESPI 0:1f.0 */
+#include "espi.asl"
/* PCH HDA */
#include "pch_hda.asl"
diff --git a/src/soc/intel/icelake/bootblock/pch.c b/src/soc/intel/icelake/bootblock/pch.c
index 094079140d..aefcaa5a47 100644
--- a/src/soc/intel/icelake/bootblock/pch.c
+++ b/src/soc/intel/icelake/bootblock/pch.c
@@ -26,8 +26,8 @@
#include <intelblocks/smbus.h>
#include <intelblocks/tco.h>
#include <soc/bootblock.h>
+#include <soc/espi.h>
#include <soc/iomap.h>
-#include <soc/lpc.h>
#include <soc/p2sb.h>
#include <soc/pch.h>
#include <soc/pci_devs.h>
@@ -145,8 +145,8 @@ void pch_early_iorange_init(void)
if (pch_check_decode_enable() == 0) {
io_enables = lpc_enable_fixed_io_ranges(io_enables);
/*
- * Set up LPC IO Enables PCR[DMI] + 2774h [15:0] to the same
- * value program in LPC PCI offset 82h.
+ * Set up ESPI IO Enables PCR[DMI] + 2774h [15:0] to the same
+ * value program in ESPI PCI offset 82h.
*/
pcr_write16(PID_DMI, PCR_DMI_LPCIOE, io_enables);
}
diff --git a/src/soc/intel/icelake/bootblock/report_platform.c b/src/soc/intel/icelake/bootblock/report_platform.c
index e7c010e4d2..a9eef40756 100644
--- a/src/soc/intel/icelake/bootblock/report_platform.c
+++ b/src/soc/intel/icelake/bootblock/report_platform.c
@@ -46,16 +46,16 @@ static struct {
};
static struct {
- u16 lpcid;
+ u16 espiid;
const char *name;
} pch_table[] = {
- { PCI_DEVICE_ID_INTEL_ICL_BASE_U_LPC, "Icelake-U Base" },
- { PCI_DEVICE_ID_INTEL_ICL_BASE_Y_LPC, "Icelake-Y Base" },
- { PCI_DEVICE_ID_INTEL_ICL_U_PREMIUM_LPC, "Icelake-U Premium" },
- { PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_LPC, "Icelake-U Super" },
- { PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_LPC_REV0, "Icelake-U Super REV0" },
- { PCI_DEVICE_ID_INTEL_ICL_SUPER_Y_LPC, "Icelake-Y Super" },
- { PCI_DEVICE_ID_INTEL_ICL_Y_PREMIUM_LPC, "Icelake-Y Premium" },
+ { PCI_DEVICE_ID_INTEL_ICL_BASE_U_ESPI, "Icelake-U Base" },
+ { PCI_DEVICE_ID_INTEL_ICL_BASE_Y_ESPI, "Icelake-Y Base" },
+ { PCI_DEVICE_ID_INTEL_ICL_U_PREMIUM_ESPI, "Icelake-U Premium" },
+ { PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_ESPI, "Icelake-U Super" },
+ { PCI_DEVICE_ID_INTEL_ICL_U_SUPER_U_ESPI_REV0, "Icelake-U Super REV0" },
+ { PCI_DEVICE_ID_INTEL_ICL_SUPER_Y_ESPI, "Icelake-Y Super" },
+ { PCI_DEVICE_ID_INTEL_ICL_Y_PREMIUM_ESPI, "Icelake-Y Premium" },
};
static struct {
@@ -170,18 +170,18 @@ static void report_mch_info(void)
static void report_pch_info(void)
{
int i;
- pci_devfn_t dev = PCH_DEV_LPC;
- uint16_t lpcid = get_dev_id(dev);
+ pci_devfn_t dev = PCH_DEV_ESPI;
+ uint16_t espiid = get_dev_id(dev);
const char *pch_type = "Unknown";
for (i = 0; i < ARRAY_SIZE(pch_table); i++) {
- if (pch_table[i].lpcid == lpcid) {
+ if (pch_table[i].espiid == espiid) {
pch_type = pch_table[i].name;
break;
}
}
printk(BIOS_DEBUG, "PCH: device id %04x (rev %02x) is %s\n",
- lpcid, get_dev_revision(dev), pch_type);
+ espiid, get_dev_revision(dev), pch_type);
}
static void report_igd_info(void)
diff --git a/src/soc/intel/icelake/chip.c b/src/soc/intel/icelake/chip.c
index 2616db1768..eff1c7a17c 100644
--- a/src/soc/intel/icelake/chip.c
+++ b/src/soc/intel/icelake/chip.c
@@ -89,7 +89,8 @@ const char *soc_acpi_name(const struct device *dev)
case PCH_DEVFN_GSPI2: return "SPI2";
case PCH_DEVFN_EMMC: return "EMMC";
case PCH_DEVFN_SDCARD: return "SDXC";
- case PCH_DEVFN_LPC: return "LPCB";
+ /* Keeping ACPI device name coherent with ec.asl */
+ case PCH_DEVFN_ESPI: return "LPCB";
case PCH_DEVFN_P2SB: return "P2SB";
case PCH_DEVFN_PMC: return "PMC_";
case PCH_DEVFN_HDA: return "HDAS";
diff --git a/src/soc/intel/icelake/lpc.c b/src/soc/intel/icelake/espi.c
index 3d05824279..9ca0c7c295 100644
--- a/src/soc/intel/icelake/lpc.c
+++ b/src/soc/intel/icelake/espi.c
@@ -24,9 +24,9 @@
#include <intelblocks/lpc_lib.h>
#include <intelblocks/pcr.h>
#include <reg_script.h>
+#include <soc/espi.h>
#include <soc/iomap.h>
#include <soc/irq.h>
-#include <soc/lpc.h>
#include <soc/pci_devs.h>
#include <soc/pcr_ids.h>
@@ -71,10 +71,10 @@ uint8_t get_pch_series(void)
uint16_t lpc_did_hi_byte;
/*
- * Fetch upper 8 bits on LPC device ID to determine PCH type
+ * Fetch upper 8 bits on ESPI device ID to determine PCH type
* Adding 1 to the offset to fetch upper 8 bits
*/
- lpc_did_hi_byte = pci_read_config8(PCH_DEV_LPC, PCI_DEVICE_ID + 1);
+ lpc_did_hi_byte = pci_read_config8(PCH_DEV_ESPI, PCI_DEVICE_ID + 1);
if (lpc_did_hi_byte == 0x9D)
return PCH_LP;
@@ -87,11 +87,12 @@ uint8_t get_pch_series(void)
#if ENV_RAMSTAGE
static void soc_mirror_dmi_pcr_io_dec(void)
{
+ struct device *dev = pcidev_on_root(PCH_DEV_SLOT_ESPI, 0);
uint32_t io_dec_arr[] = {
- pci_read_config32(PCH_DEV_LPC, LPC_GEN1_DEC),
- pci_read_config32(PCH_DEV_LPC, LPC_GEN2_DEC),
- pci_read_config32(PCH_DEV_LPC, LPC_GEN3_DEC),
- pci_read_config32(PCH_DEV_LPC, LPC_GEN4_DEC),
+ pci_read_config32(dev, ESPI_GEN1_DEC),
+ pci_read_config32(dev, ESPI_GEN2_DEC),
+ pci_read_config32(dev, ESPI_GEN3_DEC),
+ pci_read_config32(dev, ESPI_GEN4_DEC),
};
/* Mirror these same settings in DMI PCR */
soc_setup_dmi_pcr_io_dec(&io_dec_arr[0]);
@@ -215,10 +216,10 @@ void lpc_soc_init(struct device *dev)
isa_dma_init();
pch_misc_init();
- /* Enable CLKRUN_EN for power gating LPC */
+ /* Enable CLKRUN_EN for power gating ESPI */
lpc_enable_pci_clk_cntl();
- /* Set LPC Serial IRQ mode */
+ /* Set ESPI Serial IRQ mode */
if (CONFIG(SERIRQ_CONTINUOUS_MODE))
lpc_set_serirq_mode(SERIRQ_CONTINUOUS);
else
@@ -233,13 +234,13 @@ void lpc_soc_init(struct device *dev)
soc_mirror_dmi_pcr_io_dec();
}
-/* Fill up LPC IO resource structure inside SoC directory */
+/* Fill up ESPI IO resource structure inside SoC directory */
void pch_lpc_soc_fill_io_resources(struct device *dev)
{
/*
* PMC pci device gets hidden from PCI bus due to Silicon
* policy hence bind ACPI BASE aka ABASE (offset 0x20) with
- * LPC IO resources to ensure that ABASE falls under PCI reserved
+ * ESPI IO resources to ensure that ABASE falls under PCI reserved
* IO memory range.
*
* Note: Don't add any more resource with same offset 0x20
diff --git a/src/soc/intel/icelake/fsp_params.c b/src/soc/intel/icelake/fsp_params.c
index 127507b45a..ac7edd2dbb 100644
--- a/src/soc/intel/icelake/fsp_params.c
+++ b/src/soc/intel/icelake/fsp_params.c
@@ -102,7 +102,7 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
}
/* Lan */
- dev = pcidev_on_root(PCH_DEV_SLOT_LPC, 6);
+ dev = pcidev_on_root(PCH_DEV_SLOT_ESPI, 6);
if (!dev)
params->PchLanEnable = 0;
else
diff --git a/src/soc/intel/icelake/include/soc/lpc.h b/src/soc/intel/icelake/include/soc/espi.h
index ebfcaa867f..36ee9470ae 100644
--- a/src/soc/intel/icelake/include/soc/lpc.h
+++ b/src/soc/intel/icelake/include/soc/espi.h
@@ -13,12 +13,12 @@
* GNU General Public License for more details.
*/
-#ifndef _SOC_ICELAKE_LPC_H_
-#define _SOC_ICELAKE_LPC_H_
+#ifndef _SOC_ICELAKE_ESPI_H_
+#define _SOC_ICELAKE_ESPI_H_
#include <stdint.h>
-/* PCI Configuration Space (D31:F0): LPC */
+/* PCI Configuration Space (D31:F0): ESPI */
#define SCI_IRQ_SEL (7 << 0)
#define SCIS_IRQ9 0
#define SCIS_IRQ10 1
@@ -28,19 +28,14 @@
#define SCIS_IRQ22 6
#define SCIS_IRQ23 7
#define SERIRQ_CNTL 0x64
-#define LPC_IO_DEC 0x80 /* IO Decode Ranges Register */
+#define ESPI_IO_DEC 0x80 /* IO Decode Ranges Register */
#define COMA_RANGE 0x0 /* 0x3F8 - 0x3FF COM1*/
#define COMB_RANGE 0x1 /* 0x2F8 - 0x2FF COM2*/
-#define LPC_EN 0x82 /* LPC IF Enables Register */
-#define LPC_GEN1_DEC 0x84 /* LPC IF Generic Decode Range 1 */
-#define LPC_GEN2_DEC 0x88 /* LPC IF Generic Decode Range 2 */
-#define LPC_GEN3_DEC 0x8c /* LPC IF Generic Decode Range 3 */
-#define LPC_GEN4_DEC 0x90 /* LPC IF Generic Decode Range 4 */
-#define LGMR 0x98 /* LPC Generic Memory Range */
-#define BIOS_CNTL 0xdc
-#define LPC_BC_BILD (1 << 7) /* BILD */
-#define LPC_BC_LE (1 << 1) /* LE */
-#define LPC_BC_EISS (1 << 5) /* EISS */
+#define ESPI_GEN1_DEC 0x84 /* ESPI IF Generic Decode Range 1 */
+#define ESPI_GEN2_DEC 0x88 /* ESPI IF Generic Decode Range 2 */
+#define ESPI_GEN3_DEC 0x8c /* ESPI IF Generic Decode Range 3 */
+#define ESPI_GEN4_DEC 0x90 /* ESPI IF Generic Decode Range 4 */
+#define LGMR 0x98 /* ESPI Generic Memory Range */
#define PCCTL 0xE0 /* PCI Clock Control */
#define CLKRUN_EN (1 << 0)
diff --git a/src/soc/intel/icelake/include/soc/pci_devs.h b/src/soc/intel/icelake/include/soc/pci_devs.h
index 3cb0617249..889b5c5dde 100644
--- a/src/soc/intel/icelake/include/soc/pci_devs.h
+++ b/src/soc/intel/icelake/include/soc/pci_devs.h
@@ -171,22 +171,24 @@
#define PCH_DEV_GSPI0 _PCH_DEV(SIO3, 2)
#define PCH_DEV_GSPI1 _PCH_DEV(SIO3, 3)
-#define PCH_DEV_SLOT_LPC 0x1f
-#define PCH_DEVFN_LPC _PCH_DEVFN(LPC, 0)
-#define PCH_DEVFN_P2SB _PCH_DEVFN(LPC, 1)
-#define PCH_DEVFN_PMC _PCH_DEVFN(LPC, 2)
-#define PCH_DEVFN_HDA _PCH_DEVFN(LPC, 3)
-#define PCH_DEVFN_SMBUS _PCH_DEVFN(LPC, 4)
-#define PCH_DEVFN_SPI _PCH_DEVFN(LPC, 5)
-#define PCH_DEVFN_GBE _PCH_DEVFN(LPC, 6)
-#define PCH_DEVFN_TRACEHUB _PCH_DEVFN(LPC, 7)
-#define PCH_DEV_LPC _PCH_DEV(LPC, 0)
-#define PCH_DEV_P2SB _PCH_DEV(LPC, 1)
-#define PCH_DEV_PMC _PCH_DEV(LPC, 2)
-#define PCH_DEV_HDA _PCH_DEV(LPC, 3)
-#define PCH_DEV_SMBUS _PCH_DEV(LPC, 4)
-#define PCH_DEV_SPI _PCH_DEV(LPC, 5)
-#define PCH_DEV_GBE _PCH_DEV(LPC, 6)
-#define PCH_DEV_TRACEHUB _PCH_DEV(LPC, 7)
+#define PCH_DEV_SLOT_ESPI 0x1f
+#define PCH_DEV_SLOT_LPC PCH_DEV_SLOT_ESPI
+#define PCH_DEVFN_ESPI _PCH_DEVFN(ESPI, 0)
+#define PCH_DEVFN_P2SB _PCH_DEVFN(ESPI, 1)
+#define PCH_DEVFN_PMC _PCH_DEVFN(ESPI, 2)
+#define PCH_DEVFN_HDA _PCH_DEVFN(ESPI, 3)
+#define PCH_DEVFN_SMBUS _PCH_DEVFN(ESPI, 4)
+#define PCH_DEVFN_SPI _PCH_DEVFN(ESPI, 5)
+#define PCH_DEVFN_GBE _PCH_DEVFN(ESPI, 6)
+#define PCH_DEVFN_TRACEHUB _PCH_DEVFN(ESPI, 7)
+#define PCH_DEV_ESPI _PCH_DEV(ESPI, 0)
+#define PCH_DEV_LPC PCH_DEV_ESPI
+#define PCH_DEV_P2SB _PCH_DEV(ESPI, 1)
+#define PCH_DEV_PMC _PCH_DEV(ESPI, 2)
+#define PCH_DEV_HDA _PCH_DEV(ESPI, 3)
+#define PCH_DEV_SMBUS _PCH_DEV(ESPI, 4)
+#define PCH_DEV_SPI _PCH_DEV(ESPI, 5)
+#define PCH_DEV_GBE _PCH_DEV(ESPI, 6)
+#define PCH_DEV_TRACEHUB _PCH_DEV(ESPI, 7)
#endif
diff --git a/src/soc/intel/icelake/include/soc/pcr_ids.h b/src/soc/intel/icelake/include/soc/pcr_ids.h
index a6ad30b617..40d1360ffe 100644
--- a/src/soc/intel/icelake/include/soc/pcr_ids.h
+++ b/src/soc/intel/icelake/include/soc/pcr_ids.h
@@ -38,7 +38,7 @@
#define PID_SCS 0xc0
#define PID_RTC 0xc3
#define PID_ITSS 0xc4
-#define PID_LPC 0xc7
+#define PID_ESPI 0xc7
#define PID_SERIALIO 0xcb
#endif
diff --git a/src/soc/intel/icelake/pmutil.c b/src/soc/intel/icelake/pmutil.c
index 1c47783555..cdb39ad591 100644
--- a/src/soc/intel/icelake/pmutil.c
+++ b/src/soc/intel/icelake/pmutil.c
@@ -30,10 +30,10 @@
#include <intelblocks/rtc.h>
#include <intelblocks/tco.h>
#include <stdlib.h>
+#include <soc/espi.h>
#include <soc/gpe.h>
#include <soc/gpio.h>
#include <soc/iomap.h>
-#include <soc/lpc.h>
#include <soc/pci_devs.h>
#include <soc/pm.h>
#include <soc/smbus.h>