From 2859a5cba5e043e4cf124a49ec9df4ab3f17e606 Mon Sep 17 00:00:00 2001 From: NaveenVenturi1203 Date: Wed, 10 Sep 2025 08:26:35 +0000 Subject: [PATCH] mb/{google,intel}/{fatcat,ptlrvp}: Prevent access to disconnected camera Camera sensor gets enumerated even if the hardware is not connected and makes it available for the user, leading to a black screen when the user tries to open the camera. This commit changes the probing power state for the OV13B Camera Sensor to the D0 Power State in order for the driver to validate the physical hardware connection. This change helps prevent unnecessary enumeration when hardware is not connected. TEST=On a Fatcat device with an OV13B camera sensor disconnected, the OS does not offer to use this video device. Change-Id: Iabd8ffa6fd50367ff77325a2e1d9ae05e31eac93 Signed-off-by: Venturi Naveen Signed-off-by: Jeremy Compostella Reviewed-on: https://review.coreboot.org/c/coreboot/+/89142 Tested-by: build bot (Jenkins) Reviewed-by: Kapil Porwal Reviewed-by: Subrata Banik --- src/mainboard/google/fatcat/variants/fatcat/overridetree.cb | 4 ++-- src/mainboard/intel/ptlrvp/variants/ptlrvp/overridetree.cb | 4 ++-- .../intel/ptlrvp/variants/ptlrvp_chromeec/overridetree.cb | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/mainboard/google/fatcat/variants/fatcat/overridetree.cb b/src/mainboard/google/fatcat/variants/fatcat/overridetree.cb index f553c39d3c..47da1d98ba 100644 --- a/src/mainboard/google/fatcat/variants/fatcat/overridetree.cb +++ b/src/mainboard/google/fatcat/variants/fatcat/overridetree.cb @@ -655,7 +655,7 @@ chip soc/intel/pantherlake register "num_freq_entries" = "1" register "link_freq[0]" = "560 * MHz" # 560 MHz register "remote_name" = ""IPU0"" - register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD" + register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0" register "has_power_resource" = "true" #Controls @@ -756,7 +756,7 @@ chip soc/intel/pantherlake register "num_freq_entries" = "1" register "link_freq[0]" = "560 * MHz" # 560 MHz register "remote_name" = ""IPU0"" - register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD" + register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0" register "has_power_resource" = "true" #Controls diff --git a/src/mainboard/intel/ptlrvp/variants/ptlrvp/overridetree.cb b/src/mainboard/intel/ptlrvp/variants/ptlrvp/overridetree.cb index 1f8611979f..62a7b59a81 100644 --- a/src/mainboard/intel/ptlrvp/variants/ptlrvp/overridetree.cb +++ b/src/mainboard/intel/ptlrvp/variants/ptlrvp/overridetree.cb @@ -653,7 +653,7 @@ chip soc/intel/pantherlake register "num_freq_entries" = "1" register "link_freq[0]" = "560 * MHz" # 560 MHz register "remote_name" = ""IPU0"" - register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD" + register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0" register "has_power_resource" = "true" #Controls @@ -754,7 +754,7 @@ chip soc/intel/pantherlake register "num_freq_entries" = "1" register "link_freq[0]" = "560 * MHz" # 560 MHz register "remote_name" = ""IPU0"" - register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD" + register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0" register "has_power_resource" = "true" #Controls diff --git a/src/mainboard/intel/ptlrvp/variants/ptlrvp_chromeec/overridetree.cb b/src/mainboard/intel/ptlrvp/variants/ptlrvp_chromeec/overridetree.cb index 4d8ae44266..de6cf416f8 100644 --- a/src/mainboard/intel/ptlrvp/variants/ptlrvp_chromeec/overridetree.cb +++ b/src/mainboard/intel/ptlrvp/variants/ptlrvp_chromeec/overridetree.cb @@ -653,7 +653,7 @@ chip soc/intel/pantherlake register "num_freq_entries" = "1" register "link_freq[0]" = "560 * MHz" # 560 MHz register "remote_name" = ""IPU0"" - register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD" + register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0" register "has_power_resource" = "true" #Controls @@ -754,7 +754,7 @@ chip soc/intel/pantherlake register "num_freq_entries" = "1" register "link_freq[0]" = "560 * MHz" # 560 MHz register "remote_name" = ""IPU0"" - register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD" + register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0" register "has_power_resource" = "true" #Controls