#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/dma-mapping.h>
#include <linux/usb/gadget.h>
#include <linux/usb/otg.h>
#include <linux/usb/usb_phy_generic.h>
#include <linux/slab.h>
#include <linux/clk.h>
#include <linux/regulator/consumer.h>
#include <linux/of.h>
#include <linux/gpio/consumer.h>
#include <linux/delay.h>
#include "phy-generic.h"
#define VBUS_IRQ_FLAGS …
struct platform_device *usb_phy_generic_register(void)
{ … }
EXPORT_SYMBOL_GPL(…);
void usb_phy_generic_unregister(struct platform_device *pdev)
{ … }
EXPORT_SYMBOL_GPL(…);
static int nop_set_suspend(struct usb_phy *x, int suspend)
{ … }
static void nop_reset(struct usb_phy_generic *nop)
{ … }
static int nop_set_vbus(struct usb_otg *otg, bool enable)
{ … }
static irqreturn_t nop_gpio_vbus_thread(int irq, void *data)
{ … }
int usb_gen_phy_init(struct usb_phy *phy)
{ … }
EXPORT_SYMBOL_GPL(…);
void usb_gen_phy_shutdown(struct usb_phy *phy)
{ … }
EXPORT_SYMBOL_GPL(…);
static int nop_set_peripheral(struct usb_otg *otg, struct usb_gadget *gadget)
{ … }
static int nop_set_host(struct usb_otg *otg, struct usb_bus *host)
{ … }
int usb_phy_gen_create_phy(struct device *dev, struct usb_phy_generic *nop)
{ … }
EXPORT_SYMBOL_GPL(…);
static int usb_phy_generic_probe(struct platform_device *pdev)
{ … }
static void usb_phy_generic_remove(struct platform_device *pdev)
{ … }
static const struct of_device_id nop_xceiv_dt_ids[] = …;
MODULE_DEVICE_TABLE(of, nop_xceiv_dt_ids);
static struct platform_driver usb_phy_generic_driver = …;
static int __init usb_phy_generic_init(void)
{ … }
subsys_initcall(usb_phy_generic_init);
static void __exit usb_phy_generic_exit(void)
{ … }
module_exit(usb_phy_generic_exit);
MODULE_ALIAS(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;