usb: otg: Rename otg_transceiver to usb_phy

This is the first step in separating USB transceivers from
USB OTG utilities.

Includes fixes to IMX code from Sascha Hauer.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Acked-by: Li Yang <leoli@freescale.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Reviewed-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Heikki Krogerus 2012-02-13 13:24:02 +02:00 committed by Felipe Balbi
parent 62aa2b537c
commit 8675381109
48 changed files with 190 additions and 190 deletions

View File

@ -158,7 +158,7 @@ static int devboard_usbh1_hw_init(struct platform_device *pdev)
#define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B) #define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B)
#define USBH1_MODE IOMUX_TO_GPIO(MX31_PIN_NFALE) #define USBH1_MODE IOMUX_TO_GPIO(MX31_PIN_NFALE)
static int devboard_isp1105_init(struct otg_transceiver *otg) static int devboard_isp1105_init(struct usb_phy *otg)
{ {
int ret = gpio_request(USBH1_MODE, "usbh1-mode"); int ret = gpio_request(USBH1_MODE, "usbh1-mode");
if (ret) if (ret)
@ -177,7 +177,7 @@ static int devboard_isp1105_init(struct otg_transceiver *otg)
} }
static int devboard_isp1105_set_vbus(struct otg_transceiver *otg, bool on) static int devboard_isp1105_set_vbus(struct usb_phy *otg, bool on)
{ {
if (on) if (on)
gpio_set_value(USBH1_VBUSEN_B, 0); gpio_set_value(USBH1_VBUSEN_B, 0);
@ -194,7 +194,7 @@ static struct mxc_usbh_platform_data usbh1_pdata __initdata = {
static int __init devboard_usbh1_init(void) static int __init devboard_usbh1_init(void)
{ {
struct otg_transceiver *otg; struct usb_phy *otg;
struct platform_device *pdev; struct platform_device *pdev;
otg = kzalloc(sizeof(*otg), GFP_KERNEL); otg = kzalloc(sizeof(*otg), GFP_KERNEL);

View File

@ -272,7 +272,7 @@ static int marxbot_usbh1_hw_init(struct platform_device *pdev)
#define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B) #define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B)
#define USBH1_MODE IOMUX_TO_GPIO(MX31_PIN_NFALE) #define USBH1_MODE IOMUX_TO_GPIO(MX31_PIN_NFALE)
static int marxbot_isp1105_init(struct otg_transceiver *otg) static int marxbot_isp1105_init(struct usb_phy *otg)
{ {
int ret = gpio_request(USBH1_MODE, "usbh1-mode"); int ret = gpio_request(USBH1_MODE, "usbh1-mode");
if (ret) if (ret)
@ -291,7 +291,7 @@ static int marxbot_isp1105_init(struct otg_transceiver *otg)
} }
static int marxbot_isp1105_set_vbus(struct otg_transceiver *otg, bool on) static int marxbot_isp1105_set_vbus(struct usb_phy *otg, bool on)
{ {
if (on) if (on)
gpio_set_value(USBH1_VBUSEN_B, 0); gpio_set_value(USBH1_VBUSEN_B, 0);
@ -308,7 +308,7 @@ static struct mxc_usbh_platform_data usbh1_pdata __initdata = {
static int __init marxbot_usbh1_init(void) static int __init marxbot_usbh1_init(void)
{ {
struct otg_transceiver *otg; struct usb_phy *otg;
struct platform_device *pdev; struct platform_device *pdev;
otg = kzalloc(sizeof(*otg), GFP_KERNEL); otg = kzalloc(sizeof(*otg), GFP_KERNEL);

View File

@ -33,7 +33,7 @@ struct pxa3xx_u2d_ulpi {
struct clk *clk; struct clk *clk;
void __iomem *mmio_base; void __iomem *mmio_base;
struct otg_transceiver *otg; struct usb_phy *otg;
unsigned int ulpi_mode; unsigned int ulpi_mode;
}; };
@ -79,7 +79,7 @@ static int pxa310_ulpi_poll(void)
return -ETIMEDOUT; return -ETIMEDOUT;
} }
static int pxa310_ulpi_read(struct otg_transceiver *otg, u32 reg) static int pxa310_ulpi_read(struct usb_phy *otg, u32 reg)
{ {
int err; int err;
@ -98,7 +98,7 @@ static int pxa310_ulpi_read(struct otg_transceiver *otg, u32 reg)
return u2d_readl(U2DOTGUCR) & U2DOTGUCR_RDATA; return u2d_readl(U2DOTGUCR) & U2DOTGUCR_RDATA;
} }
static int pxa310_ulpi_write(struct otg_transceiver *otg, u32 val, u32 reg) static int pxa310_ulpi_write(struct usb_phy *otg, u32 val, u32 reg)
{ {
if (pxa310_ulpi_get_phymode() != SYNCH) { if (pxa310_ulpi_get_phymode() != SYNCH) {
pr_warning("%s: PHY is not in SYNCH mode!\n", __func__); pr_warning("%s: PHY is not in SYNCH mode!\n", __func__);

View File

@ -58,7 +58,7 @@ struct tegra_usb_phy {
struct clk *pad_clk; struct clk *pad_clk;
enum tegra_usb_phy_mode mode; enum tegra_usb_phy_mode mode;
void *config; void *config;
struct otg_transceiver *ulpi; struct usb_phy *ulpi;
}; };
struct tegra_usb_phy *tegra_usb_phy_open(int instance, void __iomem *regs, struct tegra_usb_phy *tegra_usb_phy_open(int instance, void __iomem *regs,

View File

@ -44,7 +44,7 @@ struct mxc_usbh_platform_data {
int (*exit)(struct platform_device *pdev); int (*exit)(struct platform_device *pdev);
unsigned int portsc; unsigned int portsc;
struct otg_transceiver *otg; struct usb_phy *otg;
}; };
int mx51_initialize_usb_hw(int port, unsigned int flags); int mx51_initialize_usb_hw(int port, unsigned int flags);

View File

@ -2,9 +2,9 @@
#define __MACH_ULPI_H #define __MACH_ULPI_H
#ifdef CONFIG_USB_ULPI #ifdef CONFIG_USB_ULPI
struct otg_transceiver *imx_otg_ulpi_create(unsigned int flags); struct usb_phy *imx_otg_ulpi_create(unsigned int flags);
#else #else
static inline struct otg_transceiver *imx_otg_ulpi_create(unsigned int flags) static inline struct usb_phy *imx_otg_ulpi_create(unsigned int flags)
{ {
return NULL; return NULL;
} }

View File

@ -58,7 +58,7 @@ static int ulpi_poll(void __iomem *view, u32 bit)
return -ETIMEDOUT; return -ETIMEDOUT;
} }
static int ulpi_read(struct otg_transceiver *otg, u32 reg) static int ulpi_read(struct usb_phy *otg, u32 reg)
{ {
int ret; int ret;
void __iomem *view = otg->io_priv; void __iomem *view = otg->io_priv;
@ -84,7 +84,7 @@ static int ulpi_read(struct otg_transceiver *otg, u32 reg)
return (__raw_readl(view) >> ULPIVW_RDATA_SHIFT) & ULPIVW_RDATA_MASK; return (__raw_readl(view) >> ULPIVW_RDATA_SHIFT) & ULPIVW_RDATA_MASK;
} }
static int ulpi_write(struct otg_transceiver *otg, u32 val, u32 reg) static int ulpi_write(struct usb_phy *otg, u32 val, u32 reg)
{ {
int ret; int ret;
void __iomem *view = otg->io_priv; void __iomem *view = otg->io_priv;
@ -112,7 +112,7 @@ struct otg_io_access_ops mxc_ulpi_access_ops = {
}; };
EXPORT_SYMBOL_GPL(mxc_ulpi_access_ops); EXPORT_SYMBOL_GPL(mxc_ulpi_access_ops);
struct otg_transceiver *imx_otg_ulpi_create(unsigned int flags) struct usb_phy *imx_otg_ulpi_create(unsigned int flags)
{ {
return otg_ulpi_create(&mxc_ulpi_access_ops, flags); return otg_ulpi_create(&mxc_ulpi_access_ops, flags);
} }

View File

@ -56,7 +56,7 @@ static u16 isp170x_id[] = {
struct isp1704_charger { struct isp1704_charger {
struct device *dev; struct device *dev;
struct power_supply psy; struct power_supply psy;
struct otg_transceiver *otg; struct usb_phy *otg;
struct notifier_block nb; struct notifier_block nb;
struct work_struct work; struct work_struct work;

View File

@ -40,7 +40,7 @@ static struct timer_list polling_timer;
static int polling; static int polling;
#ifdef CONFIG_USB_OTG_UTILS #ifdef CONFIG_USB_OTG_UTILS
static struct otg_transceiver *transceiver; static struct usb_phy *transceiver;
static struct notifier_block otg_nb; static struct notifier_block otg_nb;
#endif #endif

View File

@ -69,7 +69,7 @@ struct twl4030_bci {
struct device *dev; struct device *dev;
struct power_supply ac; struct power_supply ac;
struct power_supply usb; struct power_supply usb;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
struct notifier_block otg_nb; struct notifier_block otg_nb;
struct work_struct work; struct work_struct work;
int irq_chg; int irq_chg;

View File

@ -136,7 +136,7 @@ struct ci13xxx {
struct usb_gadget_driver *driver; /* 3rd party gadget driver */ struct usb_gadget_driver *driver; /* 3rd party gadget driver */
struct ci13xxx_udc_driver *udc_driver; /* device controller driver */ struct ci13xxx_udc_driver *udc_driver; /* device controller driver */
int vbus_active; /* is VBUS active */ int vbus_active; /* is VBUS active */
struct otg_transceiver *transceiver; /* Transceiver struct */ struct usb_phy *transceiver; /* Transceiver struct */
}; };
/****************************************************************************** /******************************************************************************

View File

@ -471,7 +471,7 @@ struct fsl_udc {
struct usb_ctrlrequest local_setup_buff; struct usb_ctrlrequest local_setup_buff;
spinlock_t lock; spinlock_t lock;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
unsigned softconnect:1; unsigned softconnect:1;
unsigned vbus_active:1; unsigned vbus_active:1;
unsigned stopped:1; unsigned stopped:1;

View File

@ -162,7 +162,7 @@ struct langwell_udc {
spinlock_t lock; /* device lock */ spinlock_t lock; /* device lock */
struct langwell_ep *ep; struct langwell_ep *ep;
struct usb_gadget_driver *driver; struct usb_gadget_driver *driver;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
u8 dev_addr; u8 dev_addr;
u32 usb_state; u32 usb_state;
u32 resume_state; u32 resume_state;

View File

@ -217,7 +217,7 @@ struct mv_udc {
struct work_struct vbus_work; struct work_struct vbus_work;
struct workqueue_struct *qwork; struct workqueue_struct *qwork;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
struct mv_usb_platform_data *pdata; struct mv_usb_platform_data *pdata;

View File

@ -2650,7 +2650,7 @@ static void omap_udc_release(struct device *dev)
} }
static int __init static int __init
omap_udc_setup(struct platform_device *odev, struct otg_transceiver *xceiv) omap_udc_setup(struct platform_device *odev, struct usb_phy *xceiv)
{ {
unsigned tmp, buf; unsigned tmp, buf;
@ -2790,7 +2790,7 @@ static int __init omap_udc_probe(struct platform_device *pdev)
{ {
int status = -ENODEV; int status = -ENODEV;
int hmc; int hmc;
struct otg_transceiver *xceiv = NULL; struct usb_phy *xceiv = NULL;
const char *type = NULL; const char *type = NULL;
struct omap_usb_config *config = pdev->dev.platform_data; struct omap_usb_config *config = pdev->dev.platform_data;
struct clk *dc_clk; struct clk *dc_clk;

View File

@ -164,7 +164,7 @@ struct omap_udc {
struct omap_ep ep[32]; struct omap_ep ep[32];
u16 devstat; u16 devstat;
u16 clr_halt; u16 clr_halt;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
struct list_head iso; struct list_head iso;
unsigned softconnect:1; unsigned softconnect:1;
unsigned vbus_active:1; unsigned vbus_active:1;

View File

@ -119,7 +119,7 @@ struct pxa25x_udc {
struct device *dev; struct device *dev;
struct clk *clk; struct clk *clk;
struct pxa2xx_udc_mach_info *mach; struct pxa2xx_udc_mach_info *mach;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
u64 dma_mask; u64 dma_mask;
struct pxa25x_ep ep [PXA_UDC_NUM_ENDPOINTS]; struct pxa25x_ep ep [PXA_UDC_NUM_ENDPOINTS];

View File

@ -447,7 +447,7 @@ struct pxa_udc {
struct usb_gadget_driver *driver; struct usb_gadget_driver *driver;
struct device *dev; struct device *dev;
struct pxa2xx_udc_mach_info *mach; struct pxa2xx_udc_mach_info *mach;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
enum ep0_state ep0state; enum ep0_state ep0state;
struct udc_stats stats; struct udc_stats stats;

View File

@ -145,7 +145,7 @@ struct s3c_hsudc {
struct usb_gadget_driver *driver; struct usb_gadget_driver *driver;
struct device *dev; struct device *dev;
struct s3c24xx_hsudc_platdata *pd; struct s3c24xx_hsudc_platdata *pd;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
struct regulator_bulk_data supplies[ARRAY_SIZE(s3c_hsudc_supply_names)]; struct regulator_bulk_data supplies[ARRAY_SIZE(s3c_hsudc_supply_names)];
spinlock_t lock; spinlock_t lock;
void __iomem *regs; void __iomem *regs;

View File

@ -32,7 +32,7 @@
#define MSM_USB_BASE (hcd->regs) #define MSM_USB_BASE (hcd->regs)
static struct otg_transceiver *otg; static struct usb_phy *otg;
static int ehci_msm_reset(struct usb_hcd *hcd) static int ehci_msm_reset(struct usb_hcd *hcd)
{ {

View File

@ -28,7 +28,7 @@ struct ehci_hcd_mv {
void __iomem *cap_regs; void __iomem *cap_regs;
void __iomem *op_regs; void __iomem *op_regs;
struct otg_transceiver *otg; struct usb_phy *otg;
struct mv_usb_platform_data *pdata; struct mv_usb_platform_data *pdata;

View File

@ -35,7 +35,7 @@ struct tegra_ehci_hcd {
struct tegra_usb_phy *phy; struct tegra_usb_phy *phy;
struct clk *clk; struct clk *clk;
struct clk *emc_clk; struct clk *emc_clk;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
int host_resumed; int host_resumed;
int bus_suspended; int bus_suspended;
int port_resuming; int port_resuming;

View File

@ -176,7 +176,7 @@ struct ehci_hcd { /* one per controller */
/* /*
* OTG controllers and transceivers need software interaction * OTG controllers and transceivers need software interaction
*/ */
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
}; };
/* convert between an HCD pointer and the corresponding EHCI_HCD */ /* convert between an HCD pointer and the corresponding EHCI_HCD */

View File

@ -376,7 +376,7 @@ struct ohci_hcd {
* OTG controllers and transceivers need software interaction; * OTG controllers and transceivers need software interaction;
* other external transceivers should be software-transparent * other external transceivers should be software-transparent
*/ */
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
void (*start_hnp)(struct ohci_hcd *ohci); void (*start_hnp)(struct ohci_hcd *ohci);
/* /*

View File

@ -317,7 +317,7 @@ static void bfin_musb_set_vbus(struct musb *musb, int is_on)
musb_readb(musb->mregs, MUSB_DEVCTL)); musb_readb(musb->mregs, MUSB_DEVCTL));
} }
static int bfin_musb_set_power(struct otg_transceiver *x, unsigned mA) static int bfin_musb_set_power(struct usb_phy *x, unsigned mA)
{ {
return 0; return 0;
} }

View File

@ -131,7 +131,7 @@ static inline struct musb *dev_to_musb(struct device *dev)
/*-------------------------------------------------------------------------*/ /*-------------------------------------------------------------------------*/
#ifndef CONFIG_BLACKFIN #ifndef CONFIG_BLACKFIN
static int musb_ulpi_read(struct otg_transceiver *otg, u32 offset) static int musb_ulpi_read(struct usb_phy *otg, u32 offset)
{ {
void __iomem *addr = otg->io_priv; void __iomem *addr = otg->io_priv;
int i = 0; int i = 0;
@ -165,7 +165,7 @@ static int musb_ulpi_read(struct otg_transceiver *otg, u32 offset)
return musb_readb(addr, MUSB_ULPI_REG_DATA); return musb_readb(addr, MUSB_ULPI_REG_DATA);
} }
static int musb_ulpi_write(struct otg_transceiver *otg, static int musb_ulpi_write(struct usb_phy *otg,
u32 offset, u32 data) u32 offset, u32 data)
{ {
void __iomem *addr = otg->io_priv; void __iomem *addr = otg->io_priv;

View File

@ -372,7 +372,7 @@ struct musb {
u16 int_rx; u16 int_rx;
u16 int_tx; u16 int_tx;
struct otg_transceiver *xceiv; struct usb_phy *xceiv;
u8 xceiv_event; u8 xceiv_event;
int nIrq; int nIrq;

View File

@ -277,7 +277,7 @@ static struct musb *the_musb;
* mode), or low power Default-B sessions, something else supplies power. * mode), or low power Default-B sessions, something else supplies power.
* Caller must take care of locking. * Caller must take care of locking.
*/ */
static int tusb_draw_power(struct otg_transceiver *x, unsigned mA) static int tusb_draw_power(struct usb_phy *x, unsigned mA)
{ {
struct musb *musb = the_musb; struct musb *musb = the_musb;
void __iomem *tbase = musb->ctrl_base; void __iomem *tbase = musb->ctrl_base;

View File

@ -23,7 +23,7 @@ config USB_GPIO_VBUS
select USB_OTG_UTILS select USB_OTG_UTILS
help help
Provides simple GPIO VBUS sensing for controllers with an Provides simple GPIO VBUS sensing for controllers with an
internal transceiver via the otg_transceiver interface, and internal transceiver via the usb_phy interface, and
optionally control of a D+ pullup GPIO as well as a VBUS optionally control of a D+ pullup GPIO as well as a VBUS
current limit regulator. current limit regulator.

View File

@ -68,7 +68,7 @@ enum ab8500_usb_link_status {
}; };
struct ab8500_usb { struct ab8500_usb {
struct otg_transceiver otg; struct usb_phy otg;
struct device *dev; struct device *dev;
int irq_num_id_rise; int irq_num_id_rise;
int irq_num_id_fall; int irq_num_id_fall;
@ -82,7 +82,7 @@ struct ab8500_usb {
int rev; int rev;
}; };
static inline struct ab8500_usb *xceiv_to_ab(struct otg_transceiver *x) static inline struct ab8500_usb *xceiv_to_ab(struct usb_phy *x)
{ {
return container_of(x, struct ab8500_usb, otg); return container_of(x, struct ab8500_usb, otg);
} }
@ -269,7 +269,7 @@ static void ab8500_usb_phy_disable_work(struct work_struct *work)
ab8500_usb_peri_phy_dis(ab); ab8500_usb_peri_phy_dis(ab);
} }
static int ab8500_usb_set_power(struct otg_transceiver *otg, unsigned mA) static int ab8500_usb_set_power(struct usb_phy *otg, unsigned mA)
{ {
struct ab8500_usb *ab; struct ab8500_usb *ab;
@ -290,13 +290,13 @@ static int ab8500_usb_set_power(struct otg_transceiver *otg, unsigned mA)
* ab->vbus_draw. * ab->vbus_draw.
*/ */
static int ab8500_usb_set_suspend(struct otg_transceiver *x, int suspend) static int ab8500_usb_set_suspend(struct usb_phy *x, int suspend)
{ {
/* TODO */ /* TODO */
return 0; return 0;
} }
static int ab8500_usb_set_peripheral(struct otg_transceiver *otg, static int ab8500_usb_set_peripheral(struct usb_phy *otg,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct ab8500_usb *ab; struct ab8500_usb *ab;
@ -329,7 +329,7 @@ static int ab8500_usb_set_peripheral(struct otg_transceiver *otg,
return 0; return 0;
} }
static int ab8500_usb_set_host(struct otg_transceiver *otg, static int ab8500_usb_set_host(struct usb_phy *otg,
struct usb_bus *host) struct usb_bus *host)
{ {
struct ab8500_usb *ab; struct ab8500_usb *ab;

View File

@ -452,7 +452,7 @@ void otg_reset_controller(void)
/* Call suspend/resume routines in host driver */ /* Call suspend/resume routines in host driver */
int fsl_otg_start_host(struct otg_fsm *fsm, int on) int fsl_otg_start_host(struct otg_fsm *fsm, int on)
{ {
struct otg_transceiver *xceiv = fsm->transceiver; struct usb_phy *xceiv = fsm->transceiver;
struct device *dev; struct device *dev;
struct fsl_otg *otg_dev = container_of(xceiv, struct fsl_otg, otg); struct fsl_otg *otg_dev = container_of(xceiv, struct fsl_otg, otg);
u32 retval = 0; u32 retval = 0;
@ -518,7 +518,7 @@ end:
*/ */
int fsl_otg_start_gadget(struct otg_fsm *fsm, int on) int fsl_otg_start_gadget(struct otg_fsm *fsm, int on)
{ {
struct otg_transceiver *xceiv = fsm->transceiver; struct usb_phy *xceiv = fsm->transceiver;
struct device *dev; struct device *dev;
if (!xceiv->gadget || !xceiv->gadget->dev.parent) if (!xceiv->gadget || !xceiv->gadget->dev.parent)
@ -542,7 +542,7 @@ int fsl_otg_start_gadget(struct otg_fsm *fsm, int on)
* Called by initialization code of host driver. Register host controller * Called by initialization code of host driver. Register host controller
* to the OTG. Suspend host for OTG role detection. * to the OTG. Suspend host for OTG role detection.
*/ */
static int fsl_otg_set_host(struct otg_transceiver *otg_p, struct usb_bus *host) static int fsl_otg_set_host(struct usb_phy *otg_p, struct usb_bus *host)
{ {
struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg); struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg);
@ -587,7 +587,7 @@ static int fsl_otg_set_host(struct otg_transceiver *otg_p, struct usb_bus *host)
} }
/* Called by initialization code of udc. Register udc to OTG. */ /* Called by initialization code of udc. Register udc to OTG. */
static int fsl_otg_set_peripheral(struct otg_transceiver *otg_p, static int fsl_otg_set_peripheral(struct usb_phy *otg_p,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg); struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg);
@ -625,7 +625,7 @@ static int fsl_otg_set_peripheral(struct otg_transceiver *otg_p,
} }
/* Set OTG port power, only for B-device */ /* Set OTG port power, only for B-device */
static int fsl_otg_set_power(struct otg_transceiver *otg_p, unsigned mA) static int fsl_otg_set_power(struct usb_phy *otg_p, unsigned mA)
{ {
if (!fsl_otg_dev) if (!fsl_otg_dev)
return -ENODEV; return -ENODEV;
@ -658,7 +658,7 @@ static void fsl_otg_event(struct work_struct *work)
} }
/* B-device start SRP */ /* B-device start SRP */
static int fsl_otg_start_srp(struct otg_transceiver *otg_p) static int fsl_otg_start_srp(struct usb_phy *otg_p)
{ {
struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg); struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg);
@ -673,7 +673,7 @@ static int fsl_otg_start_srp(struct otg_transceiver *otg_p)
} }
/* A_host suspend will call this function to start hnp */ /* A_host suspend will call this function to start hnp */
static int fsl_otg_start_hnp(struct otg_transceiver *otg_p) static int fsl_otg_start_hnp(struct usb_phy *otg_p)
{ {
struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg); struct fsl_otg *otg_dev = container_of(otg_p, struct fsl_otg, otg);
@ -698,7 +698,7 @@ static int fsl_otg_start_hnp(struct otg_transceiver *otg_p)
irqreturn_t fsl_otg_isr(int irq, void *dev_id) irqreturn_t fsl_otg_isr(int irq, void *dev_id)
{ {
struct otg_fsm *fsm = &((struct fsl_otg *)dev_id)->fsm; struct otg_fsm *fsm = &((struct fsl_otg *)dev_id)->fsm;
struct otg_transceiver *otg = &((struct fsl_otg *)dev_id)->otg; struct usb_phy *otg = &((struct fsl_otg *)dev_id)->otg;
u32 otg_int_src, otg_sc; u32 otg_int_src, otg_sc;
otg_sc = fsl_readl(&usb_dr_regs->otgsc); otg_sc = fsl_readl(&usb_dr_regs->otgsc);
@ -815,7 +815,7 @@ err:
int usb_otg_start(struct platform_device *pdev) int usb_otg_start(struct platform_device *pdev)
{ {
struct fsl_otg *p_otg; struct fsl_otg *p_otg;
struct otg_transceiver *otg_trans = otg_get_transceiver(); struct usb_phy *otg_trans = otg_get_transceiver();
struct otg_fsm *fsm; struct otg_fsm *fsm;
int status; int status;
struct resource *res; struct resource *res;

View File

@ -369,7 +369,7 @@ inline struct fsl_otg_timer *otg_timer_initializer
} }
struct fsl_otg { struct fsl_otg {
struct otg_transceiver otg; struct usb_phy otg;
struct otg_fsm fsm; struct otg_fsm fsm;
struct usb_dr_mmap *dr_mem_map; struct usb_dr_mmap *dr_mem_map;
struct delayed_work otg_event; struct delayed_work otg_event;

View File

@ -32,7 +32,7 @@
* Needs to be loaded before the UDC driver that will use it. * Needs to be loaded before the UDC driver that will use it.
*/ */
struct gpio_vbus_data { struct gpio_vbus_data {
struct otg_transceiver otg; struct usb_phy otg;
struct device *dev; struct device *dev;
struct regulator *vbus_draw; struct regulator *vbus_draw;
int vbus_draw_enabled; int vbus_draw_enabled;
@ -149,7 +149,7 @@ static irqreturn_t gpio_vbus_irq(int irq, void *data)
/* OTG transceiver interface */ /* OTG transceiver interface */
/* bind/unbind the peripheral controller */ /* bind/unbind the peripheral controller */
static int gpio_vbus_set_peripheral(struct otg_transceiver *otg, static int gpio_vbus_set_peripheral(struct usb_phy *otg,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct gpio_vbus_data *gpio_vbus; struct gpio_vbus_data *gpio_vbus;
@ -189,7 +189,7 @@ static int gpio_vbus_set_peripheral(struct otg_transceiver *otg,
} }
/* effective for B devices, ignored for A-peripheral */ /* effective for B devices, ignored for A-peripheral */
static int gpio_vbus_set_power(struct otg_transceiver *otg, unsigned mA) static int gpio_vbus_set_power(struct usb_phy *otg, unsigned mA)
{ {
struct gpio_vbus_data *gpio_vbus; struct gpio_vbus_data *gpio_vbus;
@ -201,7 +201,7 @@ static int gpio_vbus_set_power(struct otg_transceiver *otg, unsigned mA)
} }
/* for non-OTG B devices: set/clear transceiver suspend mode */ /* for non-OTG B devices: set/clear transceiver suspend mode */
static int gpio_vbus_set_suspend(struct otg_transceiver *otg, int suspend) static int gpio_vbus_set_suspend(struct usb_phy *otg, int suspend)
{ {
struct gpio_vbus_data *gpio_vbus; struct gpio_vbus_data *gpio_vbus;

View File

@ -52,7 +52,7 @@ MODULE_DESCRIPTION("ISP1301 USB OTG Transceiver Driver");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
struct isp1301 { struct isp1301 {
struct otg_transceiver otg; struct usb_phy otg;
struct i2c_client *client; struct i2c_client *client;
void (*i2c_release)(struct device *dev); void (*i2c_release)(struct device *dev);
@ -1274,7 +1274,7 @@ static int isp1301_otg_enable(struct isp1301 *isp)
/* add or disable the host device+driver */ /* add or disable the host device+driver */
static int static int
isp1301_set_host(struct otg_transceiver *otg, struct usb_bus *host) isp1301_set_host(struct usb_phy *otg, struct usb_bus *host)
{ {
struct isp1301 *isp = container_of(otg, struct isp1301, otg); struct isp1301 *isp = container_of(otg, struct isp1301, otg);
@ -1330,7 +1330,7 @@ isp1301_set_host(struct otg_transceiver *otg, struct usb_bus *host)
} }
static int static int
isp1301_set_peripheral(struct otg_transceiver *otg, struct usb_gadget *gadget) isp1301_set_peripheral(struct usb_phy *otg, struct usb_gadget *gadget)
{ {
struct isp1301 *isp = container_of(otg, struct isp1301, otg); struct isp1301 *isp = container_of(otg, struct isp1301, otg);
#ifndef CONFIG_USB_OTG #ifndef CONFIG_USB_OTG
@ -1399,7 +1399,7 @@ isp1301_set_peripheral(struct otg_transceiver *otg, struct usb_gadget *gadget)
/*-------------------------------------------------------------------------*/ /*-------------------------------------------------------------------------*/
static int static int
isp1301_set_power(struct otg_transceiver *dev, unsigned mA) isp1301_set_power(struct usb_phy *dev, unsigned mA)
{ {
if (!the_transceiver) if (!the_transceiver)
return -ENODEV; return -ENODEV;
@ -1409,7 +1409,7 @@ isp1301_set_power(struct otg_transceiver *dev, unsigned mA)
} }
static int static int
isp1301_start_srp(struct otg_transceiver *dev) isp1301_start_srp(struct usb_phy *dev)
{ {
struct isp1301 *isp = container_of(dev, struct isp1301, otg); struct isp1301 *isp = container_of(dev, struct isp1301, otg);
u32 otg_ctrl; u32 otg_ctrl;
@ -1436,7 +1436,7 @@ isp1301_start_srp(struct otg_transceiver *dev)
} }
static int static int
isp1301_start_hnp(struct otg_transceiver *dev) isp1301_start_hnp(struct usb_phy *dev)
{ {
#ifdef CONFIG_USB_OTG #ifdef CONFIG_USB_OTG
struct isp1301 *isp = container_of(dev, struct isp1301, otg); struct isp1301 *isp = container_of(dev, struct isp1301, otg);

View File

@ -235,7 +235,7 @@ static int msm_hsusb_ldo_set_mode(int on)
return ret < 0 ? ret : 0; return ret < 0 ? ret : 0;
} }
static int ulpi_read(struct otg_transceiver *otg, u32 reg) static int ulpi_read(struct usb_phy *otg, u32 reg)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
int cnt = 0; int cnt = 0;
@ -260,7 +260,7 @@ static int ulpi_read(struct otg_transceiver *otg, u32 reg)
return ULPI_DATA_READ(readl(USB_ULPI_VIEWPORT)); return ULPI_DATA_READ(readl(USB_ULPI_VIEWPORT));
} }
static int ulpi_write(struct otg_transceiver *otg, u32 val, u32 reg) static int ulpi_write(struct usb_phy *otg, u32 val, u32 reg)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
int cnt = 0; int cnt = 0;
@ -390,7 +390,7 @@ static int msm_otg_phy_reset(struct msm_otg *motg)
} }
#define LINK_RESET_TIMEOUT_USEC (250 * 1000) #define LINK_RESET_TIMEOUT_USEC (250 * 1000)
static int msm_otg_reset(struct otg_transceiver *otg) static int msm_otg_reset(struct usb_phy *otg)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
struct msm_otg_platform_data *pdata = motg->pdata; struct msm_otg_platform_data *pdata = motg->pdata;
@ -448,7 +448,7 @@ static int msm_otg_reset(struct otg_transceiver *otg)
#ifdef CONFIG_PM_SLEEP #ifdef CONFIG_PM_SLEEP
static int msm_otg_suspend(struct msm_otg *motg) static int msm_otg_suspend(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
struct usb_bus *bus = otg->host; struct usb_bus *bus = otg->host;
struct msm_otg_platform_data *pdata = motg->pdata; struct msm_otg_platform_data *pdata = motg->pdata;
int cnt = 0; int cnt = 0;
@ -543,7 +543,7 @@ static int msm_otg_suspend(struct msm_otg *motg)
static int msm_otg_resume(struct msm_otg *motg) static int msm_otg_resume(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
struct usb_bus *bus = otg->host; struct usb_bus *bus = otg->host;
int cnt = 0; int cnt = 0;
unsigned temp; unsigned temp;
@ -627,7 +627,7 @@ static void msm_otg_notify_charger(struct msm_otg *motg, unsigned mA)
motg->cur_power = mA; motg->cur_power = mA;
} }
static int msm_otg_set_power(struct otg_transceiver *otg, unsigned mA) static int msm_otg_set_power(struct usb_phy *otg, unsigned mA)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
@ -644,7 +644,7 @@ static int msm_otg_set_power(struct otg_transceiver *otg, unsigned mA)
return 0; return 0;
} }
static void msm_otg_start_host(struct otg_transceiver *otg, int on) static void msm_otg_start_host(struct usb_phy *otg, int on)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
struct msm_otg_platform_data *pdata = motg->pdata; struct msm_otg_platform_data *pdata = motg->pdata;
@ -683,7 +683,7 @@ static void msm_otg_start_host(struct otg_transceiver *otg, int on)
} }
} }
static int msm_otg_set_host(struct otg_transceiver *otg, struct usb_bus *host) static int msm_otg_set_host(struct usb_phy *otg, struct usb_bus *host)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
struct usb_hcd *hcd; struct usb_hcd *hcd;
@ -729,7 +729,7 @@ static int msm_otg_set_host(struct otg_transceiver *otg, struct usb_bus *host)
return 0; return 0;
} }
static void msm_otg_start_peripheral(struct otg_transceiver *otg, int on) static void msm_otg_start_peripheral(struct usb_phy *otg, int on)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
struct msm_otg_platform_data *pdata = motg->pdata; struct msm_otg_platform_data *pdata = motg->pdata;
@ -756,7 +756,7 @@ static void msm_otg_start_peripheral(struct otg_transceiver *otg, int on)
} }
static int msm_otg_set_peripheral(struct otg_transceiver *otg, static int msm_otg_set_peripheral(struct usb_phy *otg,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct msm_otg *motg = container_of(otg, struct msm_otg, otg); struct msm_otg *motg = container_of(otg, struct msm_otg, otg);
@ -800,7 +800,7 @@ static int msm_otg_set_peripheral(struct otg_transceiver *otg,
static bool msm_chg_check_secondary_det(struct msm_otg *motg) static bool msm_chg_check_secondary_det(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 chg_det; u32 chg_det;
bool ret = false; bool ret = false;
@ -821,7 +821,7 @@ static bool msm_chg_check_secondary_det(struct msm_otg *motg)
static void msm_chg_enable_secondary_det(struct msm_otg *motg) static void msm_chg_enable_secondary_det(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 chg_det; u32 chg_det;
switch (motg->pdata->phy_type) { switch (motg->pdata->phy_type) {
@ -861,7 +861,7 @@ static void msm_chg_enable_secondary_det(struct msm_otg *motg)
static bool msm_chg_check_primary_det(struct msm_otg *motg) static bool msm_chg_check_primary_det(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 chg_det; u32 chg_det;
bool ret = false; bool ret = false;
@ -882,7 +882,7 @@ static bool msm_chg_check_primary_det(struct msm_otg *motg)
static void msm_chg_enable_primary_det(struct msm_otg *motg) static void msm_chg_enable_primary_det(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 chg_det; u32 chg_det;
switch (motg->pdata->phy_type) { switch (motg->pdata->phy_type) {
@ -907,7 +907,7 @@ static void msm_chg_enable_primary_det(struct msm_otg *motg)
static bool msm_chg_check_dcd(struct msm_otg *motg) static bool msm_chg_check_dcd(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 line_state; u32 line_state;
bool ret = false; bool ret = false;
@ -928,7 +928,7 @@ static bool msm_chg_check_dcd(struct msm_otg *motg)
static void msm_chg_disable_dcd(struct msm_otg *motg) static void msm_chg_disable_dcd(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 chg_det; u32 chg_det;
switch (motg->pdata->phy_type) { switch (motg->pdata->phy_type) {
@ -947,7 +947,7 @@ static void msm_chg_disable_dcd(struct msm_otg *motg)
static void msm_chg_enable_dcd(struct msm_otg *motg) static void msm_chg_enable_dcd(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 chg_det; u32 chg_det;
switch (motg->pdata->phy_type) { switch (motg->pdata->phy_type) {
@ -968,7 +968,7 @@ static void msm_chg_enable_dcd(struct msm_otg *motg)
static void msm_chg_block_on(struct msm_otg *motg) static void msm_chg_block_on(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 func_ctrl, chg_det; u32 func_ctrl, chg_det;
/* put the controller in non-driving mode */ /* put the controller in non-driving mode */
@ -1003,7 +1003,7 @@ static void msm_chg_block_on(struct msm_otg *motg)
static void msm_chg_block_off(struct msm_otg *motg) static void msm_chg_block_off(struct msm_otg *motg)
{ {
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 func_ctrl, chg_det; u32 func_ctrl, chg_det;
switch (motg->pdata->phy_type) { switch (motg->pdata->phy_type) {
@ -1038,7 +1038,7 @@ static void msm_chg_block_off(struct msm_otg *motg)
static void msm_chg_detect_work(struct work_struct *w) static void msm_chg_detect_work(struct work_struct *w)
{ {
struct msm_otg *motg = container_of(w, struct msm_otg, chg_work.work); struct msm_otg *motg = container_of(w, struct msm_otg, chg_work.work);
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
bool is_dcd, tmout, vout; bool is_dcd, tmout, vout;
unsigned long delay; unsigned long delay;
@ -1152,7 +1152,7 @@ static void msm_otg_init_sm(struct msm_otg *motg)
static void msm_otg_sm_work(struct work_struct *w) static void msm_otg_sm_work(struct work_struct *w)
{ {
struct msm_otg *motg = container_of(w, struct msm_otg, sm_work); struct msm_otg *motg = container_of(w, struct msm_otg, sm_work);
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
switch (otg->state) { switch (otg->state) {
case OTG_STATE_UNDEFINED: case OTG_STATE_UNDEFINED:
@ -1243,7 +1243,7 @@ static void msm_otg_sm_work(struct work_struct *w)
static irqreturn_t msm_otg_irq(int irq, void *data) static irqreturn_t msm_otg_irq(int irq, void *data)
{ {
struct msm_otg *motg = data; struct msm_otg *motg = data;
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
u32 otgsc = 0; u32 otgsc = 0;
if (atomic_read(&motg->in_lpm)) { if (atomic_read(&motg->in_lpm)) {
@ -1281,7 +1281,7 @@ static irqreturn_t msm_otg_irq(int irq, void *data)
static int msm_otg_mode_show(struct seq_file *s, void *unused) static int msm_otg_mode_show(struct seq_file *s, void *unused)
{ {
struct msm_otg *motg = s->private; struct msm_otg *motg = s->private;
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
switch (otg->state) { switch (otg->state) {
case OTG_STATE_A_HOST: case OTG_STATE_A_HOST:
@ -1309,7 +1309,7 @@ static ssize_t msm_otg_mode_write(struct file *file, const char __user *ubuf,
struct seq_file *s = file->private_data; struct seq_file *s = file->private_data;
struct msm_otg *motg = s->private; struct msm_otg *motg = s->private;
char buf[16]; char buf[16];
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
int status = count; int status = count;
enum usb_mode_type req_mode; enum usb_mode_type req_mode;
@ -1414,7 +1414,7 @@ static int __init msm_otg_probe(struct platform_device *pdev)
int ret = 0; int ret = 0;
struct resource *res; struct resource *res;
struct msm_otg *motg; struct msm_otg *motg;
struct otg_transceiver *otg; struct usb_phy *otg;
dev_info(&pdev->dev, "msm_otg probe\n"); dev_info(&pdev->dev, "msm_otg probe\n");
if (!pdev->dev.platform_data) { if (!pdev->dev.platform_data) {
@ -1598,7 +1598,7 @@ free_motg:
static int __devexit msm_otg_remove(struct platform_device *pdev) static int __devexit msm_otg_remove(struct platform_device *pdev)
{ {
struct msm_otg *motg = platform_get_drvdata(pdev); struct msm_otg *motg = platform_get_drvdata(pdev);
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
int cnt = 0; int cnt = 0;
if (otg->host || otg->gadget) if (otg->host || otg->gadget)
@ -1660,7 +1660,7 @@ static int __devexit msm_otg_remove(struct platform_device *pdev)
static int msm_otg_runtime_idle(struct device *dev) static int msm_otg_runtime_idle(struct device *dev)
{ {
struct msm_otg *motg = dev_get_drvdata(dev); struct msm_otg *motg = dev_get_drvdata(dev);
struct otg_transceiver *otg = &motg->otg; struct usb_phy *otg = &motg->otg;
dev_dbg(dev, "OTG runtime idle\n"); dev_dbg(dev, "OTG runtime idle\n");

View File

@ -55,7 +55,7 @@ static char *state_string[] = {
"a_vbus_err" "a_vbus_err"
}; };
static int mv_otg_set_vbus(struct otg_transceiver *otg, bool on) static int mv_otg_set_vbus(struct usb_phy *otg, bool on)
{ {
struct mv_otg *mvotg = container_of(otg, struct mv_otg, otg); struct mv_otg *mvotg = container_of(otg, struct mv_otg, otg);
if (mvotg->pdata->set_vbus == NULL) if (mvotg->pdata->set_vbus == NULL)
@ -64,7 +64,7 @@ static int mv_otg_set_vbus(struct otg_transceiver *otg, bool on)
return mvotg->pdata->set_vbus(on); return mvotg->pdata->set_vbus(on);
} }
static int mv_otg_set_host(struct otg_transceiver *otg, static int mv_otg_set_host(struct usb_phy *otg,
struct usb_bus *host) struct usb_bus *host)
{ {
otg->host = host; otg->host = host;
@ -72,7 +72,7 @@ static int mv_otg_set_host(struct otg_transceiver *otg,
return 0; return 0;
} }
static int mv_otg_set_peripheral(struct otg_transceiver *otg, static int mv_otg_set_peripheral(struct usb_phy *otg,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
otg->gadget = gadget; otg->gadget = gadget;
@ -203,7 +203,7 @@ static void mv_otg_init_irq(struct mv_otg *mvotg)
static void mv_otg_start_host(struct mv_otg *mvotg, int on) static void mv_otg_start_host(struct mv_otg *mvotg, int on)
{ {
#ifdef CONFIG_USB #ifdef CONFIG_USB
struct otg_transceiver *otg = &mvotg->otg; struct usb_phy *otg = &mvotg->otg;
struct usb_hcd *hcd; struct usb_hcd *hcd;
if (!otg->host) if (!otg->host)
@ -222,7 +222,7 @@ static void mv_otg_start_host(struct mv_otg *mvotg, int on)
static void mv_otg_start_periphrals(struct mv_otg *mvotg, int on) static void mv_otg_start_periphrals(struct mv_otg *mvotg, int on)
{ {
struct otg_transceiver *otg = &mvotg->otg; struct usb_phy *otg = &mvotg->otg;
if (!otg->gadget) if (!otg->gadget)
return; return;
@ -343,7 +343,7 @@ static void mv_otg_update_inputs(struct mv_otg *mvotg)
static void mv_otg_update_state(struct mv_otg *mvotg) static void mv_otg_update_state(struct mv_otg *mvotg)
{ {
struct mv_otg_ctrl *otg_ctrl = &mvotg->otg_ctrl; struct mv_otg_ctrl *otg_ctrl = &mvotg->otg_ctrl;
struct otg_transceiver *otg = &mvotg->otg; struct usb_phy *otg = &mvotg->otg;
int old_state = otg->state; int old_state = otg->state;
switch (old_state) { switch (old_state) {
@ -416,7 +416,7 @@ static void mv_otg_update_state(struct mv_otg *mvotg)
static void mv_otg_work(struct work_struct *work) static void mv_otg_work(struct work_struct *work)
{ {
struct mv_otg *mvotg; struct mv_otg *mvotg;
struct otg_transceiver *otg; struct usb_phy *otg;
int old_state; int old_state;
mvotg = container_of((struct delayed_work *)work, struct mv_otg, work); mvotg = container_of((struct delayed_work *)work, struct mv_otg, work);

View File

@ -136,7 +136,7 @@ struct mv_otg_regs {
}; };
struct mv_otg { struct mv_otg {
struct otg_transceiver otg; struct usb_phy otg;
struct mv_otg_ctrl otg_ctrl; struct mv_otg_ctrl otg_ctrl;
/* base address */ /* base address */

View File

@ -33,7 +33,7 @@
#include <linux/slab.h> #include <linux/slab.h>
struct nop_usb_xceiv { struct nop_usb_xceiv {
struct otg_transceiver otg; struct usb_phy otg;
struct device *dev; struct device *dev;
}; };
@ -58,17 +58,17 @@ void usb_nop_xceiv_unregister(void)
} }
EXPORT_SYMBOL(usb_nop_xceiv_unregister); EXPORT_SYMBOL(usb_nop_xceiv_unregister);
static inline struct nop_usb_xceiv *xceiv_to_nop(struct otg_transceiver *x) static inline struct nop_usb_xceiv *xceiv_to_nop(struct usb_phy *x)
{ {
return container_of(x, struct nop_usb_xceiv, otg); return container_of(x, struct nop_usb_xceiv, otg);
} }
static int nop_set_suspend(struct otg_transceiver *x, int suspend) static int nop_set_suspend(struct usb_phy *x, int suspend)
{ {
return 0; return 0;
} }
static int nop_set_peripheral(struct otg_transceiver *x, static int nop_set_peripheral(struct usb_phy *x,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct nop_usb_xceiv *nop; struct nop_usb_xceiv *nop;
@ -88,7 +88,7 @@ static int nop_set_peripheral(struct otg_transceiver *x,
return 0; return 0;
} }
static int nop_set_host(struct otg_transceiver *x, struct usb_bus *host) static int nop_set_host(struct usb_phy *x, struct usb_bus *host)
{ {
struct nop_usb_xceiv *nop; struct nop_usb_xceiv *nop;

View File

@ -15,7 +15,7 @@
#include <linux/usb/otg.h> #include <linux/usb/otg.h>
static struct otg_transceiver *xceiv; static struct usb_phy *xceiv;
/** /**
* otg_get_transceiver - find the (single) OTG transceiver * otg_get_transceiver - find the (single) OTG transceiver
@ -26,7 +26,7 @@ static struct otg_transceiver *xceiv;
* *
* For use by USB host and peripheral drivers. * For use by USB host and peripheral drivers.
*/ */
struct otg_transceiver *otg_get_transceiver(void) struct usb_phy *otg_get_transceiver(void)
{ {
if (xceiv) if (xceiv)
get_device(xceiv->dev); get_device(xceiv->dev);
@ -42,7 +42,7 @@ EXPORT_SYMBOL(otg_get_transceiver);
* *
* For use by USB host and peripheral drivers. * For use by USB host and peripheral drivers.
*/ */
void otg_put_transceiver(struct otg_transceiver *x) void otg_put_transceiver(struct usb_phy *x)
{ {
if (x) if (x)
put_device(x->dev); put_device(x->dev);
@ -57,7 +57,7 @@ EXPORT_SYMBOL(otg_put_transceiver);
* coordinate the activities of drivers for host and peripheral * coordinate the activities of drivers for host and peripheral
* controllers, and in some cases for VBUS current regulation. * controllers, and in some cases for VBUS current regulation.
*/ */
int otg_set_transceiver(struct otg_transceiver *x) int otg_set_transceiver(struct usb_phy *x)
{ {
if (xceiv && x) if (xceiv && x)
return -EBUSY; return -EBUSY;

View File

@ -82,7 +82,7 @@ struct otg_fsm {
int loc_sof; int loc_sof;
struct otg_fsm_ops *ops; struct otg_fsm_ops *ops;
struct otg_transceiver *transceiver; struct usb_phy *transceiver;
/* Current usb protocol used: 0:undefine; 1:host; 2:client */ /* Current usb protocol used: 0:undefine; 1:host; 2:client */
int protocol; int protocol;

View File

@ -144,7 +144,7 @@
#define GPIO_USB_4PIN_ULPI_2430C (3 << 0) #define GPIO_USB_4PIN_ULPI_2430C (3 << 0)
struct twl4030_usb { struct twl4030_usb {
struct otg_transceiver otg; struct usb_phy otg;
struct device *dev; struct device *dev;
/* TWL4030 internal USB regulator supplies */ /* TWL4030 internal USB regulator supplies */
@ -548,7 +548,7 @@ static void twl4030_usb_phy_init(struct twl4030_usb *twl)
sysfs_notify(&twl->dev->kobj, NULL, "vbus"); sysfs_notify(&twl->dev->kobj, NULL, "vbus");
} }
static int twl4030_set_suspend(struct otg_transceiver *x, int suspend) static int twl4030_set_suspend(struct usb_phy *x, int suspend)
{ {
struct twl4030_usb *twl = xceiv_to_twl(x); struct twl4030_usb *twl = xceiv_to_twl(x);
@ -560,7 +560,7 @@ static int twl4030_set_suspend(struct otg_transceiver *x, int suspend)
return 0; return 0;
} }
static int twl4030_set_peripheral(struct otg_transceiver *x, static int twl4030_set_peripheral(struct usb_phy *x,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct twl4030_usb *twl; struct twl4030_usb *twl;
@ -576,7 +576,7 @@ static int twl4030_set_peripheral(struct otg_transceiver *x,
return 0; return 0;
} }
static int twl4030_set_host(struct otg_transceiver *x, struct usb_bus *host) static int twl4030_set_host(struct usb_phy *x, struct usb_bus *host)
{ {
struct twl4030_usb *twl; struct twl4030_usb *twl;

View File

@ -87,7 +87,7 @@
#define VBUS_DET BIT(2) #define VBUS_DET BIT(2)
struct twl6030_usb { struct twl6030_usb {
struct otg_transceiver otg; struct usb_phy otg;
struct device *dev; struct device *dev;
/* for vbus reporting with irqs disabled */ /* for vbus reporting with irqs disabled */
@ -137,7 +137,7 @@ static inline u8 twl6030_readb(struct twl6030_usb *twl, u8 module, u8 address)
return ret; return ret;
} }
static int twl6030_phy_init(struct otg_transceiver *x) static int twl6030_phy_init(struct usb_phy *x)
{ {
struct twl6030_usb *twl; struct twl6030_usb *twl;
struct device *dev; struct device *dev;
@ -155,7 +155,7 @@ static int twl6030_phy_init(struct otg_transceiver *x)
return 0; return 0;
} }
static void twl6030_phy_shutdown(struct otg_transceiver *x) static void twl6030_phy_shutdown(struct usb_phy *x)
{ {
struct twl6030_usb *twl; struct twl6030_usb *twl;
struct device *dev; struct device *dev;
@ -167,7 +167,7 @@ static void twl6030_phy_shutdown(struct otg_transceiver *x)
pdata->phy_power(twl->dev, 0, 0); pdata->phy_power(twl->dev, 0, 0);
} }
static int twl6030_phy_suspend(struct otg_transceiver *x, int suspend) static int twl6030_phy_suspend(struct usb_phy *x, int suspend)
{ {
struct twl6030_usb *twl = xceiv_to_twl(x); struct twl6030_usb *twl = xceiv_to_twl(x);
struct device *dev = twl->dev; struct device *dev = twl->dev;
@ -178,7 +178,7 @@ static int twl6030_phy_suspend(struct otg_transceiver *x, int suspend)
return 0; return 0;
} }
static int twl6030_start_srp(struct otg_transceiver *x) static int twl6030_start_srp(struct usb_phy *x)
{ {
struct twl6030_usb *twl = xceiv_to_twl(x); struct twl6030_usb *twl = xceiv_to_twl(x);
@ -324,7 +324,7 @@ static irqreturn_t twl6030_usbotg_irq(int irq, void *_twl)
return IRQ_HANDLED; return IRQ_HANDLED;
} }
static int twl6030_set_peripheral(struct otg_transceiver *x, static int twl6030_set_peripheral(struct usb_phy *x,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
struct twl6030_usb *twl; struct twl6030_usb *twl;
@ -340,7 +340,7 @@ static int twl6030_set_peripheral(struct otg_transceiver *x,
return 0; return 0;
} }
static int twl6030_enable_irq(struct otg_transceiver *x) static int twl6030_enable_irq(struct usb_phy *x)
{ {
struct twl6030_usb *twl = xceiv_to_twl(x); struct twl6030_usb *twl = xceiv_to_twl(x);
@ -376,7 +376,7 @@ static void otg_set_vbus_work(struct work_struct *data)
CHARGERUSB_CTRL1); CHARGERUSB_CTRL1);
} }
static int twl6030_set_vbus(struct otg_transceiver *x, bool enabled) static int twl6030_set_vbus(struct usb_phy *x, bool enabled)
{ {
struct twl6030_usb *twl = xceiv_to_twl(x); struct twl6030_usb *twl = xceiv_to_twl(x);
@ -386,7 +386,7 @@ static int twl6030_set_vbus(struct otg_transceiver *x, bool enabled)
return 0; return 0;
} }
static int twl6030_set_host(struct otg_transceiver *x, struct usb_bus *host) static int twl6030_set_host(struct usb_phy *x, struct usb_bus *host)
{ {
struct twl6030_usb *twl; struct twl6030_usb *twl;

View File

@ -49,7 +49,7 @@ static struct ulpi_info ulpi_ids[] = {
ULPI_INFO(ULPI_ID(0x0424, 0x0006), "SMSC USB331x"), ULPI_INFO(ULPI_ID(0x0424, 0x0006), "SMSC USB331x"),
}; };
static int ulpi_set_otg_flags(struct otg_transceiver *otg) static int ulpi_set_otg_flags(struct usb_phy *otg)
{ {
unsigned int flags = ULPI_OTG_CTRL_DP_PULLDOWN | unsigned int flags = ULPI_OTG_CTRL_DP_PULLDOWN |
ULPI_OTG_CTRL_DM_PULLDOWN; ULPI_OTG_CTRL_DM_PULLDOWN;
@ -73,7 +73,7 @@ static int ulpi_set_otg_flags(struct otg_transceiver *otg)
return otg_io_write(otg, flags, ULPI_OTG_CTRL); return otg_io_write(otg, flags, ULPI_OTG_CTRL);
} }
static int ulpi_set_fc_flags(struct otg_transceiver *otg) static int ulpi_set_fc_flags(struct usb_phy *otg)
{ {
unsigned int flags = 0; unsigned int flags = 0;
@ -115,7 +115,7 @@ static int ulpi_set_fc_flags(struct otg_transceiver *otg)
return otg_io_write(otg, flags, ULPI_FUNC_CTRL); return otg_io_write(otg, flags, ULPI_FUNC_CTRL);
} }
static int ulpi_set_ic_flags(struct otg_transceiver *otg) static int ulpi_set_ic_flags(struct usb_phy *otg)
{ {
unsigned int flags = 0; unsigned int flags = 0;
@ -134,7 +134,7 @@ static int ulpi_set_ic_flags(struct otg_transceiver *otg)
return otg_io_write(otg, flags, ULPI_IFC_CTRL); return otg_io_write(otg, flags, ULPI_IFC_CTRL);
} }
static int ulpi_set_flags(struct otg_transceiver *otg) static int ulpi_set_flags(struct usb_phy *otg)
{ {
int ret; int ret;
@ -149,7 +149,7 @@ static int ulpi_set_flags(struct otg_transceiver *otg)
return ulpi_set_fc_flags(otg); return ulpi_set_fc_flags(otg);
} }
static int ulpi_check_integrity(struct otg_transceiver *otg) static int ulpi_check_integrity(struct usb_phy *otg)
{ {
int ret, i; int ret, i;
unsigned int val = 0x55; unsigned int val = 0x55;
@ -175,7 +175,7 @@ static int ulpi_check_integrity(struct otg_transceiver *otg)
return 0; return 0;
} }
static int ulpi_init(struct otg_transceiver *otg) static int ulpi_init(struct usb_phy *otg)
{ {
int i, vid, pid, ret; int i, vid, pid, ret;
u32 ulpi_id = 0; u32 ulpi_id = 0;
@ -206,7 +206,7 @@ static int ulpi_init(struct otg_transceiver *otg)
return ulpi_set_flags(otg); return ulpi_set_flags(otg);
} }
static int ulpi_set_host(struct otg_transceiver *otg, struct usb_bus *host) static int ulpi_set_host(struct usb_phy *otg, struct usb_bus *host)
{ {
unsigned int flags = otg_io_read(otg, ULPI_IFC_CTRL); unsigned int flags = otg_io_read(otg, ULPI_IFC_CTRL);
@ -231,7 +231,7 @@ static int ulpi_set_host(struct otg_transceiver *otg, struct usb_bus *host)
return otg_io_write(otg, flags, ULPI_IFC_CTRL); return otg_io_write(otg, flags, ULPI_IFC_CTRL);
} }
static int ulpi_set_vbus(struct otg_transceiver *otg, bool on) static int ulpi_set_vbus(struct usb_phy *otg, bool on)
{ {
unsigned int flags = otg_io_read(otg, ULPI_OTG_CTRL); unsigned int flags = otg_io_read(otg, ULPI_OTG_CTRL);
@ -248,11 +248,11 @@ static int ulpi_set_vbus(struct otg_transceiver *otg, bool on)
return otg_io_write(otg, flags, ULPI_OTG_CTRL); return otg_io_write(otg, flags, ULPI_OTG_CTRL);
} }
struct otg_transceiver * struct usb_phy *
otg_ulpi_create(struct otg_io_access_ops *ops, otg_ulpi_create(struct otg_io_access_ops *ops,
unsigned int flags) unsigned int flags)
{ {
struct otg_transceiver *otg; struct usb_phy *otg;
otg = kzalloc(sizeof(*otg), GFP_KERNEL); otg = kzalloc(sizeof(*otg), GFP_KERNEL);
if (!otg) if (!otg)

View File

@ -40,7 +40,7 @@ static int ulpi_viewport_wait(void __iomem *view, u32 mask)
return -ETIMEDOUT; return -ETIMEDOUT;
} }
static int ulpi_viewport_read(struct otg_transceiver *otg, u32 reg) static int ulpi_viewport_read(struct usb_phy *otg, u32 reg)
{ {
int ret; int ret;
void __iomem *view = otg->io_priv; void __iomem *view = otg->io_priv;
@ -58,7 +58,7 @@ static int ulpi_viewport_read(struct otg_transceiver *otg, u32 reg)
return ULPI_VIEW_DATA_READ(readl(view)); return ULPI_VIEW_DATA_READ(readl(view));
} }
static int ulpi_viewport_write(struct otg_transceiver *otg, u32 val, u32 reg) static int ulpi_viewport_write(struct usb_phy *otg, u32 val, u32 reg)
{ {
int ret; int ret;
void __iomem *view = otg->io_priv; void __iomem *view = otg->io_priv;

View File

@ -104,11 +104,11 @@ struct iotg_ulpi_access_ops {
/* /*
* the Intel MID (Langwell/Penwell) otg transceiver driver needs to interact * the Intel MID (Langwell/Penwell) otg transceiver driver needs to interact
* with device and host drivers to implement the USB OTG related feature. More * with device and host drivers to implement the USB OTG related feature. More
* function members are added based on otg_transceiver data structure for this * function members are added based on usb_phy data structure for this
* purpose. * purpose.
*/ */
struct intel_mid_otg_xceiv { struct intel_mid_otg_xceiv {
struct otg_transceiver otg; struct usb_phy otg;
struct otg_hsm hsm; struct otg_hsm hsm;
/* base address */ /* base address */
@ -147,7 +147,7 @@ struct intel_mid_otg_xceiv {
}; };
static inline static inline
struct intel_mid_otg_xceiv *otg_to_mid_xceiv(struct otg_transceiver *otg) struct intel_mid_otg_xceiv *otg_to_mid_xceiv(struct usb_phy *otg)
{ {
return container_of(otg, struct intel_mid_otg_xceiv, otg); return container_of(otg, struct intel_mid_otg_xceiv, otg);
} }

View File

@ -160,7 +160,7 @@ struct msm_otg_platform_data {
* detection process. * detection process.
*/ */
struct msm_otg { struct msm_otg {
struct otg_transceiver otg; struct usb_phy otg;
struct msm_otg_platform_data *pdata; struct msm_otg_platform_data *pdata;
int irq; int irq;
struct clk *clk; struct clk *clk;

View File

@ -43,14 +43,14 @@ enum usb_xceiv_events {
USB_EVENT_ENUMERATED, /* gadget driver enumerated */ USB_EVENT_ENUMERATED, /* gadget driver enumerated */
}; };
struct otg_transceiver; struct usb_phy;
/* for transceivers connected thru an ULPI interface, the user must /* for transceivers connected thru an ULPI interface, the user must
* provide access ops * provide access ops
*/ */
struct otg_io_access_ops { struct otg_io_access_ops {
int (*read)(struct otg_transceiver *otg, u32 reg); int (*read)(struct usb_phy *x, u32 reg);
int (*write)(struct otg_transceiver *otg, u32 val, u32 reg); int (*write)(struct usb_phy *x, u32 val, u32 reg);
}; };
/* /*
@ -59,7 +59,7 @@ struct otg_io_access_ops {
* moment, using the transceiver, ID signal, HNP and sometimes static * moment, using the transceiver, ID signal, HNP and sometimes static
* configuration information (including "board isn't wired for otg"). * configuration information (including "board isn't wired for otg").
*/ */
struct otg_transceiver { struct usb_phy {
struct device *dev; struct device *dev;
const char *label; const char *label;
unsigned int flags; unsigned int flags;
@ -82,40 +82,40 @@ struct otg_transceiver {
u16 port_change; u16 port_change;
/* initialize/shutdown the OTG controller */ /* initialize/shutdown the OTG controller */
int (*init)(struct otg_transceiver *otg); int (*init)(struct usb_phy *x);
void (*shutdown)(struct otg_transceiver *otg); void (*shutdown)(struct usb_phy *x);
/* bind/unbind the host controller */ /* bind/unbind the host controller */
int (*set_host)(struct otg_transceiver *otg, int (*set_host)(struct usb_phy *x,
struct usb_bus *host); struct usb_bus *host);
/* bind/unbind the peripheral controller */ /* bind/unbind the peripheral controller */
int (*set_peripheral)(struct otg_transceiver *otg, int (*set_peripheral)(struct usb_phy *x,
struct usb_gadget *gadget); struct usb_gadget *gadget);
/* effective for B devices, ignored for A-peripheral */ /* effective for B devices, ignored for A-peripheral */
int (*set_power)(struct otg_transceiver *otg, int (*set_power)(struct usb_phy *x,
unsigned mA); unsigned mA);
/* effective for A-peripheral, ignored for B devices */ /* effective for A-peripheral, ignored for B devices */
int (*set_vbus)(struct otg_transceiver *otg, int (*set_vbus)(struct usb_phy *x,
bool enabled); bool enabled);
/* for non-OTG B devices: set transceiver into suspend mode */ /* for non-OTG B devices: set transceiver into suspend mode */
int (*set_suspend)(struct otg_transceiver *otg, int (*set_suspend)(struct usb_phy *x,
int suspend); int suspend);
/* for B devices only: start session with A-Host */ /* for B devices only: start session with A-Host */
int (*start_srp)(struct otg_transceiver *otg); int (*start_srp)(struct usb_phy *x);
/* start or continue HNP role switch */ /* start or continue HNP role switch */
int (*start_hnp)(struct otg_transceiver *otg); int (*start_hnp)(struct usb_phy *x);
}; };
/* for board-specific init logic */ /* for board-specific init logic */
extern int otg_set_transceiver(struct otg_transceiver *); extern int otg_set_transceiver(struct usb_phy *);
#if defined(CONFIG_NOP_USB_XCEIV) || (defined(CONFIG_NOP_USB_XCEIV_MODULE) && defined(MODULE)) #if defined(CONFIG_NOP_USB_XCEIV) || (defined(CONFIG_NOP_USB_XCEIV_MODULE) && defined(MODULE))
/* sometimes transceivers are accessed only through e.g. ULPI */ /* sometimes transceivers are accessed only through e.g. ULPI */
@ -132,50 +132,50 @@ static inline void usb_nop_xceiv_unregister(void)
#endif #endif
/* helpers for direct access thru low-level io interface */ /* helpers for direct access thru low-level io interface */
static inline int otg_io_read(struct otg_transceiver *otg, u32 reg) static inline int otg_io_read(struct usb_phy *x, u32 reg)
{ {
if (otg->io_ops && otg->io_ops->read) if (x->io_ops && x->io_ops->read)
return otg->io_ops->read(otg, reg); return x->io_ops->read(x, reg);
return -EINVAL; return -EINVAL;
} }
static inline int otg_io_write(struct otg_transceiver *otg, u32 val, u32 reg) static inline int otg_io_write(struct usb_phy *x, u32 val, u32 reg)
{ {
if (otg->io_ops && otg->io_ops->write) if (x->io_ops && x->io_ops->write)
return otg->io_ops->write(otg, val, reg); return x->io_ops->write(x, val, reg);
return -EINVAL; return -EINVAL;
} }
static inline int static inline int
otg_init(struct otg_transceiver *otg) otg_init(struct usb_phy *x)
{ {
if (otg->init) if (x->init)
return otg->init(otg); return x->init(x);
return 0; return 0;
} }
static inline void static inline void
otg_shutdown(struct otg_transceiver *otg) otg_shutdown(struct usb_phy *x)
{ {
if (otg->shutdown) if (x->shutdown)
otg->shutdown(otg); x->shutdown(x);
} }
/* for usb host and peripheral controller drivers */ /* for usb host and peripheral controller drivers */
#ifdef CONFIG_USB_OTG_UTILS #ifdef CONFIG_USB_OTG_UTILS
extern struct otg_transceiver *otg_get_transceiver(void); extern struct usb_phy *otg_get_transceiver(void);
extern void otg_put_transceiver(struct otg_transceiver *); extern void otg_put_transceiver(struct usb_phy *);
extern const char *otg_state_string(enum usb_otg_state state); extern const char *otg_state_string(enum usb_otg_state state);
#else #else
static inline struct otg_transceiver *otg_get_transceiver(void) static inline struct usb_phy *otg_get_transceiver(void)
{ {
return NULL; return NULL;
} }
static inline void otg_put_transceiver(struct otg_transceiver *x) static inline void otg_put_transceiver(struct usb_phy *x)
{ {
} }
@ -187,67 +187,67 @@ static inline const char *otg_state_string(enum usb_otg_state state)
/* Context: can sleep */ /* Context: can sleep */
static inline int static inline int
otg_start_hnp(struct otg_transceiver *otg) otg_start_hnp(struct usb_phy *x)
{ {
return otg->start_hnp(otg); return x->start_hnp(x);
} }
/* Context: can sleep */ /* Context: can sleep */
static inline int static inline int
otg_set_vbus(struct otg_transceiver *otg, bool enabled) otg_set_vbus(struct usb_phy *x, bool enabled)
{ {
return otg->set_vbus(otg, enabled); return x->set_vbus(x, enabled);
} }
/* for HCDs */ /* for HCDs */
static inline int static inline int
otg_set_host(struct otg_transceiver *otg, struct usb_bus *host) otg_set_host(struct usb_phy *x, struct usb_bus *host)
{ {
return otg->set_host(otg, host); return x->set_host(x, host);
} }
/* for usb peripheral controller drivers */ /* for usb peripheral controller drivers */
/* Context: can sleep */ /* Context: can sleep */
static inline int static inline int
otg_set_peripheral(struct otg_transceiver *otg, struct usb_gadget *periph) otg_set_peripheral(struct usb_phy *x, struct usb_gadget *periph)
{ {
return otg->set_peripheral(otg, periph); return x->set_peripheral(x, periph);
} }
static inline int static inline int
otg_set_power(struct otg_transceiver *otg, unsigned mA) otg_set_power(struct usb_phy *x, unsigned mA)
{ {
return otg->set_power(otg, mA); return x->set_power(x, mA);
} }
/* Context: can sleep */ /* Context: can sleep */
static inline int static inline int
otg_set_suspend(struct otg_transceiver *otg, int suspend) otg_set_suspend(struct usb_phy *x, int suspend)
{ {
if (otg->set_suspend != NULL) if (x->set_suspend != NULL)
return otg->set_suspend(otg, suspend); return x->set_suspend(x, suspend);
else else
return 0; return 0;
} }
static inline int static inline int
otg_start_srp(struct otg_transceiver *otg) otg_start_srp(struct usb_phy *x)
{ {
return otg->start_srp(otg); return x->start_srp(x);
} }
/* notifiers */ /* notifiers */
static inline int static inline int
otg_register_notifier(struct otg_transceiver *otg, struct notifier_block *nb) otg_register_notifier(struct usb_phy *x, struct notifier_block *nb)
{ {
return atomic_notifier_chain_register(&otg->notifier, nb); return atomic_notifier_chain_register(&x->notifier, nb);
} }
static inline void static inline void
otg_unregister_notifier(struct otg_transceiver *otg, struct notifier_block *nb) otg_unregister_notifier(struct usb_phy *x, struct notifier_block *nb)
{ {
atomic_notifier_chain_unregister(&otg->notifier, nb); atomic_notifier_chain_unregister(&x->notifier, nb);
} }
/* for OTG controller drivers (and maybe other stuff) */ /* for OTG controller drivers (and maybe other stuff) */

View File

@ -181,7 +181,7 @@
/*-------------------------------------------------------------------------*/ /*-------------------------------------------------------------------------*/
struct otg_transceiver *otg_ulpi_create(struct otg_io_access_ops *ops, struct usb_phy *otg_ulpi_create(struct otg_io_access_ops *ops,
unsigned int flags); unsigned int flags);
#ifdef CONFIG_USB_ULPI_VIEWPORT #ifdef CONFIG_USB_ULPI_VIEWPORT