#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/io.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/usb/ulpi.h>
#include <linux/pm_runtime.h>
#include <linux/clk.h>
#include <linux/usb.h>
#include <linux/usb/hcd.h>
#include <linux/of.h>
#include <linux/dma-mapping.h>
#include "ehci.h"
#include <linux/platform_data/usb-omap.h>
#define EHCI_INSNREG04 …
#define EHCI_INSNREG04_DISABLE_UNSUSPEND …
#define EHCI_INSNREG05_ULPI …
#define EHCI_INSNREG05_ULPI_CONTROL_SHIFT …
#define EHCI_INSNREG05_ULPI_PORTSEL_SHIFT …
#define EHCI_INSNREG05_ULPI_OPSEL_SHIFT …
#define EHCI_INSNREG05_ULPI_REGADD_SHIFT …
#define EHCI_INSNREG05_ULPI_EXTREGADD_SHIFT …
#define EHCI_INSNREG05_ULPI_WRDATA_SHIFT …
#define DRIVER_DESC …
static const char hcd_name[] = …;
struct omap_hcd { … };
static inline void ehci_write(void __iomem *base, u32 reg, u32 val)
{ … }
static struct hc_driver __read_mostly ehci_omap_hc_driver;
static const struct ehci_driver_overrides ehci_omap_overrides __initconst = …;
static int ehci_hcd_omap_probe(struct platform_device *pdev)
{ … }
static void ehci_hcd_omap_remove(struct platform_device *pdev)
{ … }
static const struct of_device_id omap_ehci_dt_ids[] = …;
MODULE_DEVICE_TABLE(of, omap_ehci_dt_ids);
static struct platform_driver ehci_hcd_omap_driver = …;
static int __init ehci_omap_init(void)
{ … }
module_init(…) …;
static void __exit ehci_omap_cleanup(void)
{ … }
module_exit(ehci_omap_cleanup);
MODULE_ALIAS(…) …;
MODULE_AUTHOR(…) …;
MODULE_AUTHOR(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…);
MODULE_LICENSE(…) …;