summaryrefslogtreecommitdiff
path: root/drivers/acpi/scan.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2023-11-07 22:19:42 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2023-11-20 18:50:48 +0300
commita6cb0a611273767683d50fb908173b6f88052ce5 (patch)
tree3790fab814146cfa2e1a164874bcc7b77f06145a /drivers/acpi/scan.c
parent48c9996f1dfe92bd7318472651c9ad538d6d53b5 (diff)
downloadlinux-a6cb0a611273767683d50fb908173b6f88052ce5.tar.xz
ACPI: scan: Extract MIPI DisCo for Imaging data into swnodes
Add information extracted from the MIPI DisCo for Imaging device properties to software nodes created during the CSI-2 connection graph discovery. Link: https://www.mipi.org/specifications/mipi-disco-imaging Co-developed-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Tested-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Diffstat (limited to 'drivers/acpi/scan.c')
-rw-r--r--drivers/acpi/scan.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
index 8e12c558b8db..b8df04779904 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
@@ -2447,6 +2447,13 @@ static void acpi_scan_postponed_branch(acpi_handle handle)
acpi_walk_namespace(ACPI_TYPE_ANY, handle, ACPI_UINT32_MAX,
acpi_bus_check_add_2, NULL, NULL, (void **)&adev);
+
+ /*
+ * Populate the ACPI _CRS CSI-2 software nodes for the ACPI devices that
+ * have been added above.
+ */
+ acpi_mipi_init_crs_csi2_swnodes();
+
acpi_bus_attach(adev, NULL);
}
@@ -2516,11 +2523,12 @@ int acpi_bus_scan(acpi_handle handle)
return -ENODEV;
/*
- * Allocate ACPI _CRS CSI-2 software nodes using information extracted
+ * Set up ACPI _CRS CSI-2 software nodes using information extracted
* from the _CRS CSI-2 resource descriptors during the ACPI namespace
- * walk above.
+ * walk above and MIPI DisCo for Imaging device properties.
*/
acpi_mipi_scan_crs_csi2();
+ acpi_mipi_init_crs_csi2_swnodes();
acpi_bus_attach(device, (void *)true);