summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/drivers/intel/mipi_camera/camera.c10
-rw-r--r--src/soc/intel/alderlake/Kconfig6
2 files changed, 16 insertions, 0 deletions
diff --git a/src/drivers/intel/mipi_camera/camera.c b/src/drivers/intel/mipi_camera/camera.c
index a9af25cf12..ec7f20bf8d 100644
--- a/src/drivers/intel/mipi_camera/camera.c
+++ b/src/drivers/intel/mipi_camera/camera.c
@@ -5,7 +5,9 @@
#include <acpi/acpi_device.h>
#include <acpi/acpigen.h>
#include <acpi/acpigen_pci.h>
+#include <arch/cpu.h>
#include <console/console.h>
+#include <cpu/intel/cpu_ids.h>
#include <device/i2c_simple.h>
#include <device/device.h>
#include <device/path.h>
@@ -134,6 +136,14 @@ static void camera_fill_cio2(const struct device *dev)
snprintf(name, sizeof(name), "port%u", i);
port_name[i] = strdup(name);
+ if (CONFIG(ACPI_ADL_IPU_ES_SUPPORT)) {
+ u32 cpu_id = cpu_get_cpuid();
+ if (cpu_id == CPUID_ALDERLAKE_A0 || cpu_id == CPUID_ALDERLAKE_A1)
+ acpi_dp_add_integer(dsd, "is_es", 1);
+ else
+ acpi_dp_add_integer(dsd, "is_es", 0);
+ }
+
acpi_dp_add_child(dsd, port_name[i], port_table);
}
diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig
index 89570b102b..9e69663acd 100644
--- a/src/soc/intel/alderlake/Kconfig
+++ b/src/soc/intel/alderlake/Kconfig
@@ -28,6 +28,7 @@ if SOC_INTEL_ALDERLAKE
config CPU_SPECIFIC_OPTIONS
def_bool y
select ACPI_INTEL_HARDWARE_SLEEP_VALUES
+ select ACPI_ADL_IPU_ES_SUPPORT
select ARCH_X86
select BOOT_DEVICE_SUPPORTS_WRITES
select CACHE_MRC_SETTINGS
@@ -339,6 +340,11 @@ config SOC_INTEL_CRASHLOG
help
Enables CrashLog.
+config ACPI_ADL_IPU_ES_SUPPORT
+ def_bool n
+ help
+ Enables ACPI entry to provide silicon type information to IPU kernel driver.
+
if STITCH_ME_BIN
config CSE_BPDT_VERSION