Lines Matching full:csi2
112 struct crs_csi2 *csi2; in acpi_mipi_add_crs_csi2() local
114 csi2 = kzalloc(sizeof(*csi2), GFP_KERNEL); in acpi_mipi_add_crs_csi2()
115 if (!csi2) in acpi_mipi_add_crs_csi2()
118 csi2->handle = handle; in acpi_mipi_add_crs_csi2()
119 INIT_LIST_HEAD(&csi2->connections); in acpi_mipi_add_crs_csi2()
120 csi2->port_count = 1; in acpi_mipi_add_crs_csi2()
122 if (ACPI_FAILURE(acpi_attach_data(handle, acpi_mipi_data_tag, csi2))) { in acpi_mipi_add_crs_csi2()
123 kfree(csi2); in acpi_mipi_add_crs_csi2()
127 list_add(&csi2->entry, list); in acpi_mipi_add_crs_csi2()
129 return csi2; in acpi_mipi_add_crs_csi2()
134 struct crs_csi2 *csi2; in acpi_mipi_get_crs_csi2() local
137 (void **)&csi2, NULL))) in acpi_mipi_get_crs_csi2()
140 return csi2; in acpi_mipi_get_crs_csi2()
153 static void acpi_mipi_del_crs_csi2(struct crs_csi2 *csi2) in acpi_mipi_del_crs_csi2() argument
155 list_del(&csi2->entry); in acpi_mipi_del_crs_csi2()
156 acpi_detach_data(csi2->handle, acpi_mipi_data_tag); in acpi_mipi_del_crs_csi2()
157 kfree(csi2->swnodes); in acpi_mipi_del_crs_csi2()
158 csi_csr2_release_connections(&csi2->connections); in acpi_mipi_del_crs_csi2()
159 kfree(csi2); in acpi_mipi_del_crs_csi2()
175 struct crs_csi2 *csi2; in acpi_mipi_check_crs_csi2() local
189 csi2 = acpi_mipi_add_crs_csi2(handle, &acpi_mipi_crs_csi2_list); in acpi_mipi_check_crs_csi2()
190 if (!csi2) { in acpi_mipi_check_crs_csi2()
195 list_replace(&crwd.connections, &csi2->connections); in acpi_mipi_check_crs_csi2()
200 static void alloc_crs_csi2_swnodes(struct crs_csi2 *csi2) in alloc_crs_csi2_swnodes() argument
202 size_t port_count = csi2->port_count; in alloc_crs_csi2_swnodes()
220 acpi_handle_info(csi2->handle, in alloc_crs_csi2_swnodes()
244 csi2->swnodes = swnodes; in alloc_crs_csi2_swnodes()
369 static void prepare_crs_csi2_swnodes(struct crs_csi2 *csi2) in prepare_crs_csi2_swnodes() argument
371 struct acpi_device_software_nodes *local_swnodes = csi2->swnodes; in prepare_crs_csi2_swnodes()
372 acpi_handle local_handle = csi2->handle; in prepare_crs_csi2_swnodes()
379 list_for_each_entry(conn, &csi2->connections, entry) in prepare_crs_csi2_swnodes()
395 struct crs_csi2 *csi2; in acpi_mipi_scan_crs_csi2() local
399 list_for_each_entry(csi2, &acpi_mipi_crs_csi2_list, entry) { in acpi_mipi_scan_crs_csi2()
402 list_for_each_entry(conn, &csi2->connections, entry) { in acpi_mipi_scan_crs_csi2()
405 csi2->port_count++; in acpi_mipi_scan_crs_csi2()
428 list_for_each_entry(csi2, &acpi_mipi_crs_csi2_list, entry) in acpi_mipi_scan_crs_csi2()
429 alloc_crs_csi2_swnodes(csi2); in acpi_mipi_scan_crs_csi2()
435 list_for_each_entry(csi2, &acpi_mipi_crs_csi2_list, entry) in acpi_mipi_scan_crs_csi2()
436 prepare_crs_csi2_swnodes(csi2); in acpi_mipi_scan_crs_csi2()
594 static void init_crs_csi2_swnodes(struct crs_csi2 *csi2) in init_crs_csi2_swnodes() argument
597 struct acpi_device_software_nodes *swnodes = csi2->swnodes; in init_crs_csi2_swnodes()
598 acpi_handle handle = csi2->handle; in init_crs_csi2_swnodes()
696 * Prevents the swnodes from this csi2 entry from being assigned again in init_crs_csi2_swnodes()
699 csi2->swnodes = NULL; in init_crs_csi2_swnodes()
711 struct crs_csi2 *csi2, *csi2_tmp; in acpi_mipi_init_crs_csi2_swnodes() local
713 list_for_each_entry_safe(csi2, csi2_tmp, &acpi_mipi_crs_csi2_list, entry) in acpi_mipi_init_crs_csi2_swnodes()
714 init_crs_csi2_swnodes(csi2); in acpi_mipi_init_crs_csi2_swnodes()
722 struct crs_csi2 *csi2, *csi2_tmp; in acpi_mipi_crs_csi2_cleanup() local
724 list_for_each_entry_safe(csi2, csi2_tmp, &acpi_mipi_crs_csi2_list, entry) in acpi_mipi_crs_csi2_cleanup()
725 acpi_mipi_del_crs_csi2(csi2); in acpi_mipi_crs_csi2_cleanup()