Lines Matching +full:soundwire +full:- +full:controller
1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause)
2 // Copyright(c) 2015-2021 Intel Corporation.
16 #include <linux/soundwire/sdw_intel.h>
34 "mipi-sdw-link-%hhu-subproperties", idx); in is_link_enabled()
41 "intel-quirk-mask", in is_link_enabled()
53 struct acpi_device *adev = acpi_fetch_acpi_dev(info->handle); in sdw_intel_scan_controller()
58 return -EINVAL; in sdw_intel_scan_controller()
60 /* Found controller, find links supported */ in sdw_intel_scan_controller()
63 "mipi-sdw-master-count", &count, 1); in sdw_intel_scan_controller()
67 * hardware, but in that step we cannot assume SoundWire IP is in sdw_intel_scan_controller()
71 * 'master-count' property then all the inits based on link in sdw_intel_scan_controller()
78 dev_err(&adev->dev, in sdw_intel_scan_controller()
79 "Failed to read mipi-sdw-master-count: %d\n", ret); in sdw_intel_scan_controller()
80 return -EINVAL; in sdw_intel_scan_controller()
85 dev_err(&adev->dev, "Link count %d exceeds max %d\n", in sdw_intel_scan_controller()
87 return -EINVAL; in sdw_intel_scan_controller()
91 dev_warn(&adev->dev, "No SoundWire links detected\n"); in sdw_intel_scan_controller()
92 return -EINVAL; in sdw_intel_scan_controller()
94 dev_dbg(&adev->dev, "ACPI reports %d SDW Link devices\n", count); in sdw_intel_scan_controller()
96 info->count = count; in sdw_intel_scan_controller()
97 info->link_mask = 0; in sdw_intel_scan_controller()
101 dev_dbg(&adev->dev, in sdw_intel_scan_controller()
107 dev_dbg(&adev->dev, in sdw_intel_scan_controller()
112 info->link_mask |= BIT(i); in sdw_intel_scan_controller()
136 * device can be found, but only one of them is the SoundWire in sdw_intel_acpi_cb()
137 * controller. The SNDW device is always exposed with in sdw_intel_acpi_cb()
139 * SoundWire link so filter accordingly in sdw_intel_acpi_cb()
144 /* found the correct SoundWire controller */ in sdw_intel_acpi_cb()
145 info->handle = handle; in sdw_intel_acpi_cb()
152 * sdw_intel_acpi_scan() - SoundWire Intel init routine
157 * links to enable. A follow-up use of sdw_intel_probe() and
166 info->handle = NULL; in sdw_intel_acpi_scan()
177 if (ACPI_FAILURE(status) || info->handle == NULL) in sdw_intel_acpi_scan()
178 return -ENODEV; in sdw_intel_acpi_scan()
185 MODULE_DESCRIPTION("Intel Soundwire ACPI helpers");