summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Garry <john.garry@huawei.com>2019-01-03 19:57:02 +0800
committerWei Xu <xuwei5@hisilicon.com>2019-02-08 09:18:53 +0000
commit705c0ee8d4a64b072e324f8daa8767e92560a892 (patch)
tree8b77da22ff0bb204423a14441a4f7ef1e4d1382b
parentbfeffd155283772bbe78c6a05dec7c0128ee500c (diff)
downloadlinux-705c0ee8d4a64b072e324f8daa8767e92560a892.tar.gz
linux-705c0ee8d4a64b072e324f8daa8767e92560a892.tar.bz2
linux-705c0ee8d4a64b072e324f8daa8767e92560a892.zip
bus: hisi_lpc: Don't fail probe for unrecognised child devices
Currently for ACPI-based FW we fail the probe for an unrecognised child HID. However, there is FW in the field with LPC child devices having fake HIDs, namely "IPI0002", which was an IPMI device invented to support the initial out-of-tree LPC host driver, different from the final mainline version. To provide compatibility support for these dodgy FWs, just discard the unrecognised HIDs instead of failing the probe altogether. Tested-by: Zengruan Ye <yezengruan@huawei.com> Signed-off-by: John Garry <john.garry@huawei.com> Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
-rw-r--r--drivers/bus/hisi_lpc.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/bus/hisi_lpc.c b/drivers/bus/hisi_lpc.c
index d5f85455fa62..19d7b6ff2f17 100644
--- a/drivers/bus/hisi_lpc.c
+++ b/drivers/bus/hisi_lpc.c
@@ -522,10 +522,9 @@ static int hisi_lpc_acpi_probe(struct device *hostdev)
if (!found) {
dev_warn(hostdev,
- "could not find cell for child device (%s)\n",
+ "could not find cell for child device (%s), discarding\n",
hid);
- ret = -ENODEV;
- goto fail;
+ continue;
}
pdev = platform_device_alloc(cell->name, PLATFORM_DEVID_AUTO);