Hi, Matthias Kaehlcke <mka@xxxxxxxxxxxx> writes: >> Matthias Kaehlcke <mka@xxxxxxxxxxxx> writes: >> >> Add interconnect support in dwc3-qcom driver to vote for bus >> >> bandwidth. >> >> >> >> This requires for two different paths - from USB master to >> >> DDR slave. The other is from APPS master to USB slave. >> >> >> >> Signed-off-by: Sandeep Maheswaram <sanm@xxxxxxxxxxxxxx> >> >> Signed-off-by: Chandana Kishori Chiluveru <cchiluve@xxxxxxxxxxxxxx> >> >> Reviewed-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx> >> >> --- >> >> drivers/usb/dwc3/dwc3-qcom.c | 128 ++++++++++++++++++++++++++++++++++++++++++- >> >> 1 file changed, 126 insertions(+), 2 deletions(-) >> >> >> >> diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c >> >> index 1dfd024..7e85fe6 100644 >> >> --- a/drivers/usb/dwc3/dwc3-qcom.c >> >> +++ b/drivers/usb/dwc3/dwc3-qcom.c >> >> >> >> ... >> >> >> >> +/* To disable an interconnect, we just set its bandwidth to 0 */ >> >> +static int dwc3_qcom_interconnect_disable(struct dwc3_qcom *qcom) >> >> +{ >> >> + int ret; >> >> + >> >> + ret = icc_set_bw(qcom->usb_ddr_icc_path, 0, 0); >> >> + if (ret) >> >> + return ret; >> >> + >> >> + ret = icc_set_bw(qcom->apps_usb_icc_path, 0, 0); >> >> + if (ret) >> >> + goto err_reenable_memory_path; >> >> + >> >> + return 0; >> >> + >> >> + /* Re-enable things in the event of an error */ >> >> +err_reenable_memory_path: >> >> + ret = dwc3_qcom_interconnect_enable(qcom); >> > >> > This overwrites the error that led to the execution of this code path. >> > The function should return original error, not the result of the >> > _interconnect_enable() call. >> > >> > I saw Felipe queued the patch for v5.8. I think the main options to fix this >> > are: >> > >> > - a v6 of this patch to replace v5 in Felipe's tree (which IIUC will be rebased >> > anyway once there is a v5.7-rc) >> > - send the fix as a separate patch >> > - Felipe amends the patch in his tree >> > >> > Felipe, what would work best for you? >> >> Let's go for a v6, which commits should I drop? I can't find anything >> related to $subject in my queue: >> >> $ git --no-pager log --oneline HEAD ^linus/master -- drivers/usb/dwc3/dwc3-qcom.c >> 201c26c08db4 usb: dwc3: qcom: Replace <linux/clk-provider.h> by <linux/of_clk.h> > > I thought I saw a "queued for v5.8" message from you, but can't find that back. > I guess I saw the "queued" message for the "Add USB DWC3 support for SC7180" > series and thought it was for this one. Sorry for the confusion. no worries :-) -- balbi
Attachment:
signature.asc
Description: PGP signature