@@ -681,16 +681,18 @@ void acpi_init_swnodes(struct acpi_device *device)
device->fwnode.secondary = software_node_fwnode(ads->nodes);
}
+#define MIPI_IMG_PREFIX "mipi-img-"
+
static const struct mipi_disco_prop {
const char *mipi_prop;
const char *dt_prop;
} mipi_disco_props[] = {
- { "mipi-img-lens-focus", "lens-focus" },
- { "mipi-img-flash-leds", "flash-leds" },
- { "mipi-img-clock-frequency", "clock-frequency" },
- { "mipi-img-led-max-current", "led-max-microamp" },
- { "mipi-img-flash-max-current", "flash-max-microamp" },
- { "mipi-img-flash-max-timeout", "flash-max-timeout-us" },
+ { MIPI_IMG_PREFIX "lens-focus", "lens-focus" },
+ { MIPI_IMG_PREFIX "flash-leds", "flash-leds" },
+ { MIPI_IMG_PREFIX "clock-frequency", "clock-frequency" },
+ { MIPI_IMG_PREFIX "led-max-current", "led-max-microamp" },
+ { MIPI_IMG_PREFIX "flash-max-current", "flash-max-microamp" },
+ { MIPI_IMG_PREFIX "flash-max-timeout", "flash-max-timeout-us" },
};
/**
@@ -706,6 +708,9 @@ void acpi_properties_prepare_mipi(union acpi_object *elements)
{
unsigned int i;
+ if (!str_has_prefix(elements[0].string.pointer, MIPI_IMG_PREFIX))
+ return;
+
/* Replace MIPI DisCo for Imaging property names with DT equivalents. */
for (i = 0; i < ARRAY_SIZE(mipi_disco_props); i++) {
if (!strcmp(mipi_disco_props[i].mipi_prop,
For all _DSD properties, skip going through the MIPI DisCo for Imaging property name substitution table if the property doesn't have "mipi-img-" prefix. Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> --- drivers/acpi/mipi.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-)