arm: rmobile: Add support R8A7794
[oweals/u-boot.git] / arch / arm / include / asm / ehci-omap.h
index e72c5df11e805e0081bb98ea211b71c251bf8533..c7bca05682a390754188cd54f785a198757d6c5d 100644 (file)
@@ -42,6 +42,7 @@ enum usbhs_omap_port_mode {
 /* Values of UHH_REVISION - Note: these are not given in the TRM */
 #define OMAP_USBHS_REV1                                        0x00000010 /* OMAP3 */
 #define OMAP_USBHS_REV2                                        0x50700100 /* OMAP4 */
+#define OMAP_USBHS_REV2_1                              0x50700101 /* OMAP5 */
 
 /* UHH Register Set */
 #define OMAP_UHH_HOSTCONFIG_INCR4_BURST_EN             (1 << 2)
@@ -60,6 +61,7 @@ enum usbhs_omap_port_mode {
 #define OMAP_P2_MODE_CLEAR                             (3 << 18)
 #define OMAP_P2_MODE_TLL                               (1 << 18)
 #define OMAP_P2_MODE_HSIC                              (3 << 18)
+#define OMAP_P3_MODE_CLEAR                             (3 << 20)
 #define OMAP_P3_MODE_HSIC                              (3 << 20)
 
 /* EHCI Register Set */
@@ -136,7 +138,15 @@ struct omap_ehci {
        u32 insreg08;           /* 0xb0 */
 };
 
-int omap_ehci_hcd_init(struct omap_usbhs_board_data *usbhs_pdata);
+/*
+ * FIXME: forward declaration of this structs needed because omap got the
+ * ehci implementation backwards. move out ehci_hcd_x from board files
+ */
+struct ehci_hccr;
+struct ehci_hcor;
+
+int omap_ehci_hcd_init(int index, struct omap_usbhs_board_data *usbhs_pdata,
+                      struct ehci_hccr **hccr, struct ehci_hcor **hcor);
 int omap_ehci_hcd_stop(void);
 
 #endif /* _OMAP_COMMON_EHCI_H_ */