#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/delay.h>
#include <linux/ioport.h>
#include <linux/slab.h>
#include <linux/errno.h>
#include <linux/list.h>
#include <linux/interrupt.h>
#include <linux/proc_fs.h>
#include <linux/prefetch.h>
#include <linux/clk.h>
#include <linux/usb/gadget.h>
#include <linux/of.h>
#include <linux/regmap.h>
#include <linux/dma-mapping.h>
#include <linux/usb.h>
#include <linux/usb/hcd.h>
#include "vhub.h"
void ast_vhub_dev_irq(struct ast_vhub_dev *d)
{ … }
static void ast_vhub_dev_enable(struct ast_vhub_dev *d)
{ … }
static void ast_vhub_dev_disable(struct ast_vhub_dev *d)
{ … }
static int ast_vhub_dev_feature(struct ast_vhub_dev *d,
u16 wIndex, u16 wValue,
bool is_set)
{ … }
static int ast_vhub_ep_feature(struct ast_vhub_dev *d,
u16 wIndex, u16 wValue, bool is_set)
{ … }
static int ast_vhub_dev_status(struct ast_vhub_dev *d,
u16 wIndex, u16 wValue)
{ … }
static int ast_vhub_ep_status(struct ast_vhub_dev *d,
u16 wIndex, u16 wValue)
{ … }
static void ast_vhub_dev_set_address(struct ast_vhub_dev *d, u8 addr)
{ … }
int ast_vhub_std_dev_request(struct ast_vhub_ep *ep,
struct usb_ctrlrequest *crq)
{ … }
static int ast_vhub_udc_wakeup(struct usb_gadget* gadget)
{ … }
static int ast_vhub_udc_get_frame(struct usb_gadget* gadget)
{ … }
static void ast_vhub_dev_nuke(struct ast_vhub_dev *d)
{ … }
static int ast_vhub_udc_pullup(struct usb_gadget* gadget, int on)
{ … }
static int ast_vhub_udc_start(struct usb_gadget *gadget,
struct usb_gadget_driver *driver)
{ … }
static struct usb_ep *ast_vhub_udc_match_ep(struct usb_gadget *gadget,
struct usb_endpoint_descriptor *desc,
struct usb_ss_ep_comp_descriptor *ss)
{ … }
static int ast_vhub_udc_stop(struct usb_gadget *gadget)
{ … }
static const struct usb_gadget_ops ast_vhub_udc_ops = …;
void ast_vhub_dev_suspend(struct ast_vhub_dev *d)
{ … }
void ast_vhub_dev_resume(struct ast_vhub_dev *d)
{ … }
void ast_vhub_dev_reset(struct ast_vhub_dev *d)
{ … }
void ast_vhub_del_dev(struct ast_vhub_dev *d)
{ … }
static void ast_vhub_dev_release(struct device *dev)
{ … }
int ast_vhub_init_dev(struct ast_vhub *vhub, unsigned int idx)
{ … }