#include <linux/interrupt.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include "isp1760-core.h"
#include "isp1760-regs.h"
#define ISP1760_VBUS_POLL_INTERVAL msecs_to_jiffies(500)
unsigned int packet_size;
static inline struct isp1760_udc *gadget_to_udc(struct usb_gadget *gadget)
return container_of(gadget, struct isp1760_udc, gadget);
static inline struct isp1760_ep *ep_to_udc_ep(struct usb_ep *ep)
return container_of(ep, struct isp1760_ep, ep);
static inline struct isp1760_request *req_to_udc_req(struct usb_request *req)
return container_of(req, struct isp1760_request, req);
static inline u32 isp1760_udc_read(struct isp1760_udc *udc, u16 reg)
return isp1760_read32(udc->regs, reg);
static inline void isp1760_udc_write(struct isp1760_udc *udc, u16 reg, u32 val)
isp1760_write32(udc->regs, reg, val);
static struct isp1760_ep *isp1760_udc_find_ep(struct isp1760_udc *udc,