Message ID | 20231123105332.102167-1-srinivas.kandagatla@linaro.org |
---|---|
State | Accepted |
Commit | a7ae05ef356162c2a7ff108a7ff154d7d0dcd6aa |
Headers | show |
Series | soundwire: qcom: set controller id to hw master id | expand |
On Thu, 23 Nov 2023 10:53:32 +0000, srinivas.kandagatla@linaro.org wrote: > Qualcomm Soundwire Controllers IP version after 1.3 have a dedicated > master id register which will provide a unique id value for each > controller instance. Use this value instead of artificially generated > value from idr. Versions 1.3 and below only have one instance of > soundwire controller which does no have this register, so let them use > value from idr. > > [...] Applied, thanks! [1/1] soundwire: qcom: set controller id to hw master id commit: a7ae05ef356162c2a7ff108a7ff154d7d0dcd6aa Best regards,
diff --git a/drivers/soundwire/qcom.c b/drivers/soundwire/qcom.c index 8e027eee8b73..48291fbaf674 100644 --- a/drivers/soundwire/qcom.c +++ b/drivers/soundwire/qcom.c @@ -1624,9 +1624,13 @@ static int qcom_swrm_probe(struct platform_device *pdev) } } - /* FIXME: is there a DT-defined value to use ? */ ctrl->bus.controller_id = -1; + if (ctrl->version > SWRM_VERSION_1_3_0) { + ctrl->reg_read(ctrl, SWRM_COMP_MASTER_ID, &val); + ctrl->bus.controller_id = val; + } + ret = sdw_bus_master_add(&ctrl->bus, dev, dev->fwnode); if (ret) { dev_err(dev, "Failed to register Soundwire controller (%d)\n",