diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/drivers/intel/mipi_camera/camera.c | 3 | ||||
-rw-r--r-- | src/drivers/intel/mipi_camera/chip.h | 11 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/drivers/intel/mipi_camera/camera.c b/src/drivers/intel/mipi_camera/camera.c index ec79e39a60..a9af25cf12 100644 --- a/src/drivers/intel/mipi_camera/camera.c +++ b/src/drivers/intel/mipi_camera/camera.c @@ -847,6 +847,9 @@ static void write_i2c_camera_device(const struct device *dev, const char *scope) acpigen_write_name_integer("_UID", config->acpi_uid); acpigen_write_name_string("_DDN", config->chip_name); acpigen_write_STA(acpi_device_status(dev)); + acpigen_write_method("_DSC", 0); + acpigen_write_return_integer(config->max_dstate_for_probe); + acpigen_pop_len(); /* Method _DSC */ /* Resources */ acpigen_write_name("_CRS"); diff --git a/src/drivers/intel/mipi_camera/chip.h b/src/drivers/intel/mipi_camera/chip.h index c6ead1ffd6..55e9f33fb1 100644 --- a/src/drivers/intel/mipi_camera/chip.h +++ b/src/drivers/intel/mipi_camera/chip.h @@ -257,6 +257,17 @@ struct drivers_intel_mipi_camera_config { bool has_power_resource; /* Perform low power probe */ bool low_power_probe; + /* + * This will create a _DSC method in ACPI which returns an integer, to tell the kernel + * the highest allowed D state for a device during probe + * Number State Description + * 0 D0 Device fully powered on + * 1 D1 + * 2 D2 + * 3 D3hot + * 4 D3cold Off + */ + uint8_t max_dstate_for_probe; }; #endif |