ACPI: property: Replicate DT-aligned u32 properties from DisCo for Imaging

MIPI DisCo for Imaging defines properties for camera sensors that
functionally align with DT equivalents.

Replicate these properties in the ACPI device swnodes so the code
using the corresponding DT properties already does not need to be
updated to deal with their MIPI counterparts directly.

The replicated properties are:

	"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"

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
[ rjw: Changelog edits, removal of redundant braces ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Tested-by: Sakari Ailus <sakari.ailus@linux.intel.com>
This commit is contained in:
Sakari Ailus 2023-11-06 17:31:18 +01:00 committed by Rafael J. Wysocki
parent f533e43a2a
commit 4cd57d6d52
2 changed files with 21 additions and 0 deletions

View File

@ -600,6 +600,7 @@ static void init_crs_csi2_swnodes(struct crs_csi2 *csi2)
struct acpi_device *adev;
acpi_status status;
unsigned int i;
u32 val;
int ret;
/*
@ -631,6 +632,22 @@ static void init_crs_csi2_swnodes(struct crs_csi2 *csi2)
}
}
if (!fwnode_property_read_u32(adev_fwnode, "mipi-img-clock-frequency", &val))
swnodes->dev_props[NEXT_PROPERTY(prop_index, DEV_CLOCK_FREQUENCY)] =
PROPERTY_ENTRY_U32("clock-frequency", val);
if (!fwnode_property_read_u32(adev_fwnode, "mipi-img-led-max-current", &val))
swnodes->dev_props[NEXT_PROPERTY(prop_index, DEV_LED_MAX_MICROAMP)] =
PROPERTY_ENTRY_U32("led-max-microamp", val);
if (!fwnode_property_read_u32(adev_fwnode, "mipi-img-flash-max-current", &val))
swnodes->dev_props[NEXT_PROPERTY(prop_index, DEV_FLASH_MAX_MICROAMP)] =
PROPERTY_ENTRY_U32("flash-max-microamp", val);
if (!fwnode_property_read_u32(adev_fwnode, "mipi-img-flash-max-timeout-us", &val))
swnodes->dev_props[NEXT_PROPERTY(prop_index, DEV_FLASH_MAX_TIMEOUT_US)] =
PROPERTY_ENTRY_U32("flash-max-timeout-us", val);
status = acpi_get_name(handle, ACPI_FULL_PATHNAME, &buffer);
if (ACPI_FAILURE(status)) {
acpi_handle_info(handle, "Unable to get the path name\n");

View File

@ -381,6 +381,10 @@ struct acpi_gpio_mapping;
enum acpi_device_swnode_dev_props {
ACPI_DEVICE_SWNODE_DEV_ROTATION,
ACPI_DEVICE_SWNODE_DEV_CLOCK_FREQUENCY,
ACPI_DEVICE_SWNODE_DEV_LED_MAX_MICROAMP,
ACPI_DEVICE_SWNODE_DEV_FLASH_MAX_MICROAMP,
ACPI_DEVICE_SWNODE_DEV_FLASH_MAX_TIMEOUT_US,
ACPI_DEVICE_SWNODE_DEV_NUM_OF,
ACPI_DEVICE_SWNODE_DEV_NUM_ENTRIES
};