1 /* 2 * Platform data for the chipidea USB dual role controller 3 */ 4 5 #ifndef __LINUX_USB_CHIPIDEA_H 6 #define __LINUX_USB_CHIPIDEA_H 7 8 struct ci13xxx; 9 struct ci13xxx_udc_driver { 10 const char *name; 11 /* offset of the capability registers */ 12 uintptr_t capoffset; 13 unsigned power_budget; 14 unsigned long flags; 15 #define CI13XXX_REGS_SHARED BIT(0) 16 #define CI13XXX_REQUIRE_TRANSCEIVER BIT(1) 17 #define CI13XXX_PULLUP_ON_VBUS BIT(2) 18 #define CI13XXX_DISABLE_STREAMING BIT(3) 19 20 #define CI13XXX_CONTROLLER_RESET_EVENT 0 21 #define CI13XXX_CONTROLLER_STOPPED_EVENT 1 22 void (*notify_event) (struct ci13xxx *udc, unsigned event); 23 }; 24 25 /* Default offset of capability registers */ 26 #define DEF_CAPOFFSET 0x100 27 28 #endif 29