--- zzzz-none-000/linux-5.4.213/drivers/usb/dwc3/core.h 2022-09-15 10:04:56.000000000 +0000 +++ miami-7690-761/linux-5.4.213/drivers/usb/dwc3/core.h 2024-05-29 11:20:02.000000000 +0000 @@ -373,9 +373,19 @@ /* Global Frame Length Adjustment Register */ #define DWC3_GFLADJ_30MHZ_SDBND_SEL BIT(7) #define DWC3_GFLADJ_30MHZ_MASK 0x3f +#define DWC3_GFLADJ_30MHZ_SDBND_SEL_MASK 0x80 + +/* Global User Control Register*/ +#define DWC3_GUCTL_REFCLKPER_MASK 0xffc00000 +#define DWC3_GUCTL_REFCLKPER_SEL 22 + +/* Global reference clock Adjustment Register */ +#define DWC3_GFLADJ_REFCLK_MASK 0xffffff00 +#define DWC3_GFLADJ_REFCLK_SEL 8 /* Global User Control Register 2 */ #define DWC3_GUCTL2_RST_ACTBITLATER BIT(14) +#define DWC3_GUCTL2_ENABLEEPCACHEEVICT BIT(12) /* Global User Control Register 3 */ #define DWC3_GUCTL3_SPLITDISABLE BIT(14) @@ -946,6 +956,8 @@ * @regs: base address for our registers * @regs_size: address space size * @fladj: frame length adjustment + * @ref_clk_adj: reference clock adjustment + * @ref_clk_per: reference clock period configuration * @irq_gadget: peripheral controller's IRQ number * @otg_irq: IRQ number for OTG IRQs * @current_otg_role: current role of operation while using the OTG block @@ -1035,6 +1047,8 @@ * change quirk. * @dis_tx_ipgap_linecheck_quirk: set if we disable u2mac linestate * check during HS transmit. + * @dis_ep_cache_eviction_quirk: set if we disable endpoint cache + * eviction feature * @parkmode_disable_ss_quirk: set if we need to disable all SuperSpeed * instances in park mode. * @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk @@ -1102,6 +1116,8 @@ enum usb_phy_interface hsphy_mode; u32 fladj; + u32 ref_clk_adj; + u32 ref_clk_per; u32 irq_gadget; u32 otg_irq; u32 current_otg_role; @@ -1229,6 +1245,7 @@ unsigned dis_u2_freeclk_exists_quirk:1; unsigned dis_del_phy_power_chg_quirk:1; unsigned dis_tx_ipgap_linecheck_quirk:1; + unsigned dis_ep_cache_eviction_quirk:1; unsigned parkmode_disable_ss_quirk:1; unsigned tx_de_emphasis_quirk:1;