diff options
Diffstat (limited to 'src/soc/intel/apollolake')
-rw-r--r-- | src/soc/intel/apollolake/Kconfig | 5 | ||||
-rw-r--r-- | src/soc/intel/apollolake/acpi.c | 1 | ||||
-rw-r--r-- | src/soc/intel/apollolake/bootblock/bootblock.c | 1 | ||||
-rw-r--r-- | src/soc/intel/apollolake/chip.c | 1 | ||||
-rw-r--r-- | src/soc/intel/apollolake/include/soc/itss.h | 6 | ||||
-rw-r--r-- | src/soc/intel/apollolake/lpc.c | 1 | ||||
-rw-r--r-- | src/soc/intel/apollolake/pmutil.c | 12 | ||||
-rw-r--r-- | src/soc/intel/apollolake/pnpconfig.c | 1 | ||||
-rw-r--r-- | src/soc/intel/apollolake/romstage.c | 4 |
9 files changed, 25 insertions, 7 deletions
diff --git a/src/soc/intel/apollolake/Kconfig b/src/soc/intel/apollolake/Kconfig index 61aaa44a7e..55f59b3bed 100644 --- a/src/soc/intel/apollolake/Kconfig +++ b/src/soc/intel/apollolake/Kconfig @@ -21,7 +21,6 @@ config SOC_INTEL_APOLLOLAKE select EDK2_CPU_TIMER_LIB if PAYLOAD_EDK2 select FAST_SPI_GENERATE_SSDT select FSP_PLATFORM_MEMORY_SETTINGS_VERSIONS - select FSP_STATUS_GLOBAL_RESET_REQUIRED_5 select GENERIC_GPIO_LIB select HAVE_ASAN_IN_ROMSTAGE select HAVE_CF9_RESET_PREPARE @@ -102,6 +101,10 @@ config SOC_INTEL_GEMINILAKE if SOC_INTEL_APOLLOLAKE +config FSP_STATUS_GLOBAL_RESET + hex + default 0x40000005 + config USE_LEGACY_8254_TIMER default y diff --git a/src/soc/intel/apollolake/acpi.c b/src/soc/intel/apollolake/acpi.c index c9f76ebe11..74cd51a9ee 100644 --- a/src/soc/intel/apollolake/acpi.c +++ b/src/soc/intel/apollolake/acpi.c @@ -19,6 +19,7 @@ #include <soc/nvs.h> #include <soc/pci_devs.h> #include <soc/systemagent.h> +#include <static.h> #include "chip.h" diff --git a/src/soc/intel/apollolake/bootblock/bootblock.c b/src/soc/intel/apollolake/bootblock/bootblock.c index cd938c54bb..090bd5071d 100644 --- a/src/soc/intel/apollolake/bootblock/bootblock.c +++ b/src/soc/intel/apollolake/bootblock/bootblock.c @@ -22,6 +22,7 @@ #include <soc/pci_devs.h> #include <soc/pm.h> #include <spi-generic.h> +#include <static.h> static const struct pad_config tpm_spi_configs[] = { #if CONFIG(SOC_INTEL_GEMINILAKE) diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c index 1d15eecc63..ab5b5d884d 100644 --- a/src/soc/intel/apollolake/chip.c +++ b/src/soc/intel/apollolake/chip.c @@ -35,6 +35,7 @@ #include <soc/pm.h> #include <soc/systemagent.h> #include <spi-generic.h> +#include <static.h> #include <timer.h> #include <soc/ramstage.h> #include <soc/soc_chip.h> diff --git a/src/soc/intel/apollolake/include/soc/itss.h b/src/soc/intel/apollolake/include/soc/itss.h index b88dfd8c8f..03ba785943 100644 --- a/src/soc/intel/apollolake/include/soc/itss.h +++ b/src/soc/intel/apollolake/include/soc/itss.h @@ -3,11 +3,9 @@ #ifndef _SOC_APOLLOLAKE_ITSS_H_ #define _SOC_APOLLOLAKE_ITSS_H_ +#include <intelblocks/itss.h> + #define GPIO_IRQ_START 50 #define GPIO_IRQ_END ITSS_MAX_IRQ -#define ITSS_MAX_IRQ 119 -#define IRQS_PER_IPC 32 -#define NUM_IPC_REGS ((ITSS_MAX_IRQ + IRQS_PER_IPC - 1)/IRQS_PER_IPC) - #endif /* _SOC_APOLLOLAKE_ITSS_H_ */ diff --git a/src/soc/intel/apollolake/lpc.c b/src/soc/intel/apollolake/lpc.c index 21a0f44963..c7a57c8f9d 100644 --- a/src/soc/intel/apollolake/lpc.c +++ b/src/soc/intel/apollolake/lpc.c @@ -6,6 +6,7 @@ #include <soc/pcr_ids.h> #include <soc/pm.h> #include <soc/intel/common/block/lpc/lpc_def.h> +#include <static.h> #include "chip.h" void soc_get_gen_io_dec_range(uint32_t gen_io_dec[LPC_NUM_GENERIC_IO_RANGES]) diff --git a/src/soc/intel/apollolake/pmutil.c b/src/soc/intel/apollolake/pmutil.c index 1ed90c1519..5366ca8baf 100644 --- a/src/soc/intel/apollolake/pmutil.c +++ b/src/soc/intel/apollolake/pmutil.c @@ -19,6 +19,7 @@ #include <soc/pm.h> #include <soc/smbus.h> #include <security/vboot/vbnv.h> +#include <static.h> #include "chip.h" @@ -137,12 +138,23 @@ void soc_clear_pm_registers(uintptr_t pmc_bar) write32p(pmc_bar + GEN_PMCON1, gen_pmcon1 & ~RPS); } +static void gpe0_different_values(const struct soc_intel_apollolake_config *config) +{ + bool result = (config->gpe0_dw1 != config->gpe0_dw2) && + (config->gpe0_dw1 != config->gpe0_dw3) && + (config->gpe0_dw2 != config->gpe0_dw3); + + assert(result); +} + void soc_get_gpi_gpe_configs(uint8_t *dw0, uint8_t *dw1, uint8_t *dw2) { DEVTREE_CONST struct soc_intel_apollolake_config *config; config = config_of_soc(); + gpe0_different_values(config); + /* Assign to out variable */ *dw0 = config->gpe0_dw1; *dw1 = config->gpe0_dw2; diff --git a/src/soc/intel/apollolake/pnpconfig.c b/src/soc/intel/apollolake/pnpconfig.c index ebc1880778..0c7286573e 100644 --- a/src/soc/intel/apollolake/pnpconfig.c +++ b/src/soc/intel/apollolake/pnpconfig.c @@ -5,6 +5,7 @@ #include <intelblocks/pcr.h> #include <soc/pci_devs.h> #include <soc/pnpconfig.h> +#include <static.h> #include "chip.h" static const struct pnpconfig perf[] = { diff --git a/src/soc/intel/apollolake/romstage.c b/src/soc/intel/apollolake/romstage.c index f71088311b..2ddb07e6d6 100644 --- a/src/soc/intel/apollolake/romstage.c +++ b/src/soc/intel/apollolake/romstage.c @@ -293,7 +293,7 @@ void platform_fsp_memory_init_params_cb(FSPM_UPD *mupd, uint32_t version) parse_devicetree_setting(mupd); /* Do NOT let FSP do any GPIO pad configuration */ - mupd->FspmConfig.PreMemGpioTablePtr = (uintptr_t)NULL; + mupd->FspmConfig.PreMemGpioTablePtr = 0; mupd->FspmConfig.SkipCseRbp = CONFIG(SKIP_CSE_RBP); @@ -319,7 +319,7 @@ void platform_fsp_memory_init_params_cb(FSPM_UPD *mupd, uint32_t version) mrc_cache_current_mmap_leak(MRC_VARIABLE_DATA, version, NULL); - assert(CONFIG(BOOT_DEVICE_MEMORY_MAPPED)); + _Static_assert(CONFIG(BOOT_DEVICE_MEMORY_MAPPED), "Boot device not memory mapped"); fsp_version = version; } |