Re: [PATCH v6 3/4] usb: dwc3: Resize TX FIFOs to meet EP bursting requirements
From: Wesley Cheng <hidden>
Date: 2021-01-28 23:09:51
Also in:
linux-arm-msm, linux-devicetree, lkml
On 1/25/2021 9:15 PM, Bjorn Andersson wrote:
On Mon 25 Jan 22:32 CST 2021, Wesley Cheng wrote:quoted
On 1/25/2021 5:55 PM, Bjorn Andersson wrote:quoted
On Mon 25 Jan 19:14 CST 2021, Wesley Cheng wrote:quoted
On 1/22/2021 9:12 AM, Bjorn Andersson wrote:quoted
On Thu 21 Jan 22:01 CST 2021, Wesley Cheng wrote:Hi Bjorn,quoted
Under what circumstances should we specify this? And in particular are there scenarios (in the Qualcomm platforms) where this must not be set? The TXFIFO dynamic allocation is actually a feature within the DWC3controller, and isn't specifically for QCOM based platforms. It won't do any harm functionally if this flag is not set, as this is meant for enhancing performance/bandwidth.quoted
In particular, the composition can be changed in runtime, so should we set this for all Qualcomm platforms?Ideally yes, if we want to increase bandwith for situations where SS endpoint bursting is set to a higher value.quoted
And if that's the case, can we not just set it from the qcom driver?Since this is a common DWC3 core feature, I think it would make more sense to have it in DWC3 core instead of a vendor's DWC3 glue driver.I don't have any objections to implementing it in the core driver, but my question is can we just skip the DT binding and just enable it from the vendor driver? Regards, BjornHi Bjorn, I see. I think there are some designs which don't have a DWC3 glue driver, so assuming there may be other platforms using this, there may not always be a vendor driver to set this.You mean that there are implementations of dwc3 without an associated glue driver that haven't yet realized that they need this feature? I would suggest then that we implement the core code necessary, we enable it from the Qualcomm glue layer and when someone realize that they need this without a glue driver it's going to be trivial to add the DT binding.quoted
The alternative is that we're lugging around a requirement to specify this property in all past, present and future Qualcomm dts files - and then we'll need to hard code it for ACPI anyways.
Hi Bjorn,
Can we utilize the of_add_property() call to add the "tx-fifo-resize"
property from the dwc3_qcom_register_core() API? That way at least the
above concern would be addressed.
I'm not too familiar with the ACPI design, but I do see that the
dwc3-qcom does have an array carrying some DWC3 core properties. Looks
like we can add the tx-fifo-resize property here too.
static const struct property_entry dwc3_qcom_acpi_properties[] = {
PROPERTY_ENTRY_STRING("dr_mode", "host"),
{}
};
Thanks
Wesley Cheng
Regards, Bjorn
-- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project