diff --git a/src/soc/intel/meteorlake/chip.h b/src/soc/intel/meteorlake/chip.h
index 59b6a8b..cfef3c1 100644
--- a/src/soc/intel/meteorlake/chip.h
+++ b/src/soc/intel/meteorlake/chip.h
@@ -129,6 +129,22 @@
 	NUM_VR_DOMAINS
 };
 
+/*
+ * Slew Rate configuration for Deep Package C States for VR domain.
+ * They are fast time divided by 2.
+ * 0 - Fast/2
+ * 1 - Fast/4
+ * 2 - Fast/8
+ * 3 - Fast/16
+ */
+enum slew_rate {
+	SLEW_FAST_2,
+	SLEW_FAST_4,
+	SLEW_FAST_8,
+	SLEW_FAST_16,
+	SLEW_IGNORE = 0xff,
+};
+
 struct soc_intel_meteorlake_config {
 
 	/* Common struct containing soc config data required by common code */
@@ -499,6 +515,16 @@
 
 	/* Platform Power Pmax in Watts. Zero means automatic. */
 	uint16_t psys_pmax_watts;
+
+	/* Enable or Disable Acoustic Noise Mitigation feature */
+	uint8_t enable_acoustic_noise_mitigation;
+	/* Disable Fast Slew Rate for Deep Package C States for VR domains */
+	uint8_t disable_fast_pkgc_ramp[NUM_VR_DOMAINS];
+	/*
+	 * Slew Rate configuration for Deep Package C States for VR domains
+	 * as per `enum slew_rate` data type.
+	 */
+	uint8_t slow_slew_rate_config[NUM_VR_DOMAINS];
 };
 
 typedef struct soc_intel_meteorlake_config config_t;
diff --git a/src/soc/intel/meteorlake/romstage/fsp_params.c b/src/soc/intel/meteorlake/romstage/fsp_params.c
index a45f23f..4842c19 100644
--- a/src/soc/intel/meteorlake/romstage/fsp_params.c
+++ b/src/soc/intel/meteorlake/romstage/fsp_params.c
@@ -395,6 +395,20 @@
 	}
 }
 
+static void fill_fsps_acoustic_params(FSP_M_CONFIG *m_cfg,
+		const struct soc_intel_meteorlake_config *config)
+{
+	if (!config->enable_acoustic_noise_mitigation)
+		return;
+
+	m_cfg->AcousticNoiseMitigation = config->enable_acoustic_noise_mitigation;
+
+	for (int i = 0; i < NUM_VR_DOMAINS; i++) {
+		m_cfg->FastPkgCRampDisable[i] = config->disable_fast_pkgc_ramp[i];
+		m_cfg->SlowSlewRate[i] = config->slow_slew_rate_config[i];
+	}
+}
+
 static void soc_memory_init_params(FSP_M_CONFIG *m_cfg,
 		const struct soc_intel_meteorlake_config *config)
 {
@@ -418,6 +432,7 @@
 		fill_fspm_trace_params,
 		fill_fspm_vr_config_params,
 		fill_fspm_ibecc_params,
+		fill_fsps_acoustic_params,
 	};
 
 	for (size_t i = 0; i < ARRAY_SIZE(fill_fspm_params); i++)
