summaryrefslogtreecommitdiff
path: root/drivers/soundwire/qcom.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2021-06-23 10:07:48 +1000
committerDave Airlie <airlied@redhat.com>2021-06-23 10:07:48 +1000
commitf45fbbb6d5cff29ddfc708676ec1c2496eed3a07 (patch)
tree5496fee9f6b10da368aa49b03612061156e42d2f /drivers/soundwire/qcom.c
parentd472b36efbf8a27dc8a80519db8b5a8caffe42b6 (diff)
parent13311e74253fe64329390df80bed3f07314ddd61 (diff)
downloadlinux-next-f45fbbb6d5cff29ddfc708676ec1c2496eed3a07.tar.gz
linux-next-f45fbbb6d5cff29ddfc708676ec1c2496eed3a07.zip
Backmerge tag 'v5.13-rc7' into drm-next
Backmerge Linux 5.13-rc7 to make some pulls from later bases apply, and to bake in the conflicts so far.
Diffstat (limited to 'drivers/soundwire/qcom.c')
-rw-r--r--drivers/soundwire/qcom.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/soundwire/qcom.c b/drivers/soundwire/qcom.c
index 2827085a323b..0ef79d60e88e 100644
--- a/drivers/soundwire/qcom.c
+++ b/drivers/soundwire/qcom.c
@@ -1150,8 +1150,16 @@ static int qcom_swrm_get_port_config(struct qcom_swrm_ctrl *ctrl)
ret = of_property_read_u8_array(np, "qcom,ports-block-pack-mode",
bp_mode, nports);
- if (ret)
- return ret;
+ if (ret) {
+ u32 version;
+
+ ctrl->reg_read(ctrl, SWRM_COMP_HW_VERSION, &version);
+
+ if (version <= 0x01030000)
+ memset(bp_mode, SWR_INVALID_PARAM, QCOM_SDW_MAX_PORTS);
+ else
+ return ret;
+ }
memset(hstart, SWR_INVALID_PARAM, QCOM_SDW_MAX_PORTS);
of_property_read_u8_array(np, "qcom,ports-hstart", hstart, nports);