summaryrefslogtreecommitdiff
path: root/drivers/usb/misc/usb-ljca.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2023-11-28 15:24:50 +0300
committerMark Brown <broonie@kernel.org>2023-11-28 15:24:50 +0300
commitef858b61945a3f5fa3a158e795abf4b7c6e6739d (patch)
treed7ecd68e0a4cf8be82baee3af09ba83a15f9927b /drivers/usb/misc/usb-ljca.c
parent4775073b90450cb581ba60be5cb6c587985a4152 (diff)
parented99878462ccc143395987faebda33c50529b116 (diff)
downloadlinux-ef858b61945a3f5fa3a158e795abf4b7c6e6739d.tar.xz
ASoC: Intel: Soundwire related board and match updates
Merge series from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>: A small update for SDW machine support: Small fixes for sof_sdw machine driver Support for rt722 New TGL/MTL and LNL match for new configurations
Diffstat (limited to 'drivers/usb/misc/usb-ljca.c')
-rw-r--r--drivers/usb/misc/usb-ljca.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/drivers/usb/misc/usb-ljca.c b/drivers/usb/misc/usb-ljca.c
index c9decd0396d4..35770e608c64 100644
--- a/drivers/usb/misc/usb-ljca.c
+++ b/drivers/usb/misc/usb-ljca.c
@@ -457,8 +457,8 @@ static void ljca_auxdev_acpi_bind(struct ljca_adapter *adap,
u64 adr, u8 id)
{
struct ljca_match_ids_walk_data wd = { 0 };
- struct acpi_device *parent, *adev;
struct device *dev = adap->dev;
+ struct acpi_device *parent;
char uid[4];
parent = ACPI_COMPANION(dev);
@@ -466,17 +466,7 @@ static void ljca_auxdev_acpi_bind(struct ljca_adapter *adap,
return;
/*
- * get auxdev ACPI handle from the ACPI device directly
- * under the parent that matches _ADR.
- */
- adev = acpi_find_child_device(parent, adr, false);
- if (adev) {
- ACPI_COMPANION_SET(&auxdev->dev, adev);
- return;
- }
-
- /*
- * _ADR is a grey area in the ACPI specification, some
+ * Currently LJCA hw doesn't use _ADR instead the shipped
* platforms use _HID to distinguish children devices.
*/
switch (adr) {
@@ -656,10 +646,11 @@ static int ljca_enumerate_spi(struct ljca_adapter *adap)
unsigned int i;
int ret;
+ /* Not all LJCA chips implement SPI, a timeout reading the descriptors is normal */
ret = ljca_send(adap, LJCA_CLIENT_MNG, LJCA_MNG_ENUM_SPI, NULL, 0, buf,
sizeof(buf), true, LJCA_ENUM_CLIENT_TIMEOUT_MS);
if (ret < 0)
- return ret;
+ return (ret == -ETIMEDOUT) ? 0 : ret;
/* check firmware response */
desc = (struct ljca_spi_descriptor *)buf;