@@ -11,6 +11,11 @@
#include <linux/platform_device.h>
#include "core.h"
+#include "../host/xhci-plat.h"
+
+static const struct xhci_plat_priv dwc3_pdata = {
+ .quirks = XHCI_SG_TRB_CACHE_SIZE_QUIRK,
+};
static int dwc3_host_get_irq(struct dwc3 *dwc)
{
@@ -87,6 +92,11 @@ int dwc3_host_init(struct dwc3 *dwc)
goto err;
}
+ ret = platform_device_add_data(xhci, &dwc3_pdata, sizeof(dwc3_pdata));
+ if (ret) {
+ dev_err(dwc->dev, "couldn't add platform data to xHCI device\n");
+ goto err;
+ }
memset(props, 0, sizeof(struct property_entry) * ARRAY_SIZE(props));
if (dwc->usb3_lpm_capable)
This commit adds the platform device data to setup the XHCI_SG_TRB_CACHE_SIZE_QUIRK quirk. DWC3 hosts which are PCI devices does not use OF to create platform device but create xhci-plat platform device at runtime. So this patch allows parent device to supply the quirk through platform data. Signed-off-by: Tejas Joglekar <joglekar@synopsys.com> --- drivers/usb/dwc3/host.c | 10 ++++++++++ 1 file changed, 10 insertions(+)