a free-running PHY clock.
- snps,dis_del_phy_power_chg_quirk: when set core will change PHY power
from P0 to P1/P2/P3 without delay.
+ - snps,xhci_slow_suspend_quirk: when set, need an extraordinary delay to wait
+ for xHC enter the Halted state (i.e. HCH in the USBSTS
+ register is '1').
- snps,is-utmi-l1-suspend: true when DWC3 asserts output signal
utmi_l1_suspend_n, false when asserts utmi_sleep_n
- snps,hird-threshold: HIRD threshold
"snps,dis_u2_freeclk_exists_quirk");
dwc->dis_del_phy_power_chg_quirk = device_property_read_bool(dev,
"snps,dis_del_phy_power_chg_quirk");
+ dwc->xhci_slow_suspend_quirk = device_property_read_bool(dev,
+ "snps,xhci_slow_suspend_quirk");
dwc->phyif_utmi_16_bits = device_property_read_bool(dev,
"snps,phyif_utmi_16_bits");
pdata->dis_u2_freeclk_exists_quirk;
dwc->dis_del_phy_power_chg_quirk =
pdata->dis_del_phy_power_chg_quirk;
+ dwc->xhci_slow_suspend_quirk =
+ pdata->xhci_slow_suspend_quirk;
dwc->phyif_utmi_16_bits = pdata->phyif_utmi_16_bits;
dwc->tx_de_emphasis_quirk = pdata->tx_de_emphasis_quirk;
* provide a free-running PHY clock.
* @dis_del_phy_power_chg_quirk: set if we disable delay phy power
* change quirk.
+ * @xhci_slow_suspend_quirk: set if need an extraordinary delay to wait
+ * for xHC enter the Halted state after the Run/Stop
+ * (R/S) bit is cleared to '0'.
* @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk
* @tx_de_emphasis: Tx de-emphasis value
* 0 - -6dB de-emphasis
unsigned dis_enblslpm_quirk:1;
unsigned dis_u2_freeclk_exists_quirk:1;
unsigned dis_del_phy_power_chg_quirk:1;
+ unsigned xhci_slow_suspend_quirk:1;
unsigned tx_de_emphasis_quirk:1;
unsigned tx_de_emphasis:2;
memset(&pdata, 0, sizeof(pdata));
pdata.usb3_lpm_capable = dwc->usb3_lpm_capable;
+ pdata.xhci_slow_suspend = dwc->xhci_slow_suspend_quirk;
ret = platform_device_add_data(xhci, &pdata, sizeof(pdata));
if (ret) {
unsigned dis_enblslpm_quirk:1;
unsigned dis_u2_freeclk_exists_quirk:1;
unsigned dis_del_phy_power_chg_quirk:1;
+ unsigned xhci_slow_suspend_quirk:1;
unsigned tx_de_emphasis_quirk:1;
unsigned tx_de_emphasis:2;