|
@@ -203,6 +203,14 @@
|
|
|
#define DWC3_GUSB2PHYCFG_SUSPHY (1 << 6)
|
|
|
#define DWC3_GUSB2PHYCFG_ULPI_UTMI (1 << 4)
|
|
|
#define DWC3_GUSB2PHYCFG_ENBLSLPM (1 << 8)
|
|
|
+#define DWC3_GUSB2PHYCFG_PHYIF(n) (n << 3)
|
|
|
+#define DWC3_GUSB2PHYCFG_PHYIF_MASK DWC3_GUSB2PHYCFG_PHYIF(1)
|
|
|
+#define DWC3_GUSB2PHYCFG_USBTRDTIM(n) (n << 10)
|
|
|
+#define DWC3_GUSB2PHYCFG_USBTRDTIM_MASK DWC3_GUSB2PHYCFG_USBTRDTIM(0xf)
|
|
|
+#define USBTRDTIM_UTMI_8_BIT 9
|
|
|
+#define USBTRDTIM_UTMI_16_BIT 5
|
|
|
+#define UTMI_PHYIF_16_BIT 1
|
|
|
+#define UTMI_PHYIF_8_BIT 0
|
|
|
|
|
|
/* Global USB2 PHY Vendor Control Register */
|
|
|
#define DWC3_GUSB2PHYACC_NEWREGREQ (1 << 25)
|
|
@@ -748,6 +756,9 @@ struct dwc3_scratchpad_array {
|
|
|
* @maximum_speed: maximum speed requested (mainly for testing purposes)
|
|
|
* @revision: revision register contents
|
|
|
* @dr_mode: requested mode of operation
|
|
|
+ * @hsphy_mode: UTMI phy mode, one of following:
|
|
|
+ * - USBPHY_INTERFACE_MODE_UTMI
|
|
|
+ * - USBPHY_INTERFACE_MODE_UTMIW
|
|
|
* @usb2_phy: pointer to USB2 PHY
|
|
|
* @usb3_phy: pointer to USB3 PHY
|
|
|
* @usb2_generic_phy: pointer to USB2 PHY
|
|
@@ -853,6 +864,7 @@ struct dwc3 {
|
|
|
size_t regs_size;
|
|
|
|
|
|
enum usb_dr_mode dr_mode;
|
|
|
+ enum usb_phy_interface hsphy_mode;
|
|
|
|
|
|
u32 fladj;
|
|
|
u32 irq_gadget;
|