diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig index 9e69663acd..46fd742048 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig @@ -333,13 +333,6 @@ config MRC_CHANNEL_WIDTH int default 16 -config SOC_INTEL_CRASHLOG - def_bool n - select SOC_INTEL_COMMON_BLOCK_CRASHLOG - select ACPI_BERT - help - Enables CrashLog. - config ACPI_ADL_IPU_ES_SUPPORT def_bool n help diff --git a/src/soc/intel/common/Kconfig.common b/src/soc/intel/common/Kconfig.common index 5f1f608c4e..c7e1aec4de 100644 --- a/src/soc/intel/common/Kconfig.common +++ b/src/soc/intel/common/Kconfig.common @@ -79,4 +79,18 @@ config SMM_MODULE_STACK_SIZE hex default 0x800 +config SOC_INTEL_CRASHLOG + def_bool n + select SOC_INTEL_COMMON_BLOCK_CRASHLOG + select ACPI_BERT + help + Enables Crashlog. + +config SOC_INTEL_CRASHLOG_ON_RESET + def_bool n + help + Enables the PMC to collect crashlog records on every reset event. NOTE: + This will result in a BERT table being populated containing a PMC + crashlog record on every boot. + endif # SOC_INTEL_COMMON diff --git a/src/soc/intel/common/block/crashlog/crashlog.c b/src/soc/intel/common/block/crashlog/crashlog.c index c3d0cfd469..8c31d03fb8 100644 --- a/src/soc/intel/common/block/crashlog/crashlog.c +++ b/src/soc/intel/common/block/crashlog/crashlog.c @@ -479,8 +479,10 @@ void collect_pmc_and_cpu_crashlog_from_srams(void) { if (pmc_crashlog_support() && cl_pmc_data_present() && (cl_get_pmc_record_size() > 0)) { - cl_pmc_en_gen_on_all_reboot(); - printk(BIOS_DEBUG, "Crashlog collection enabled on every reboot.\n"); + if (CONFIG(SOC_INTEL_CRASHLOG_ON_RESET)) { + cl_pmc_en_gen_on_all_reboot(); + printk(BIOS_DEBUG, "Crashlog collection enabled on every reboot.\n"); + } cl_get_pmc_sram_data(); } else { printk(BIOS_DEBUG, "Skipping PMC crashLog collection. Data not present.\n"); diff --git a/src/soc/intel/tigerlake/Kconfig b/src/soc/intel/tigerlake/Kconfig index a7b3ae447d..cf59b60378 100644 --- a/src/soc/intel/tigerlake/Kconfig +++ b/src/soc/intel/tigerlake/Kconfig @@ -284,13 +284,6 @@ config MRC_CHANNEL_WIDTH int default 16 -config SOC_INTEL_CRASHLOG - def_bool n - select SOC_INTEL_COMMON_BLOCK_CRASHLOG - select ACPI_BERT - help - Enables CrashLog. - # Intel recommends reserving the following resources per USB4 root port, # from TGL BIOS Spec (doc #611569) Revision 0.7.6 Section 7.2.5.1.5 # - 42 buses