arm: imx: Start using struct usb_otg
authorHeikki Krogerus <heikki.krogerus@linux.intel.com>
Mon, 13 Feb 2012 11:24:14 +0000 (13:24 +0200)
committerFelipe Balbi <balbi@ti.com>
Mon, 13 Feb 2012 11:36:03 +0000 (13:36 +0200)
Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Includes fixes from Sascha Hauer.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Tested-by: Philippe Rétornaz <philippe.retornaz@epfl.ch>
Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
Reviewed-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
arch/arm/mach-imx/mx31moboard-devboard.c
arch/arm/mach-imx/mx31moboard-marxbot.c

index 9cd4a97efa52415a100d628e1decd12c40f25946..cc285e50728601e9a7a83e369a27d9768a520c99 100644 (file)
@@ -177,7 +177,7 @@ static int devboard_isp1105_init(struct usb_phy *otg)
 }
 
 
-static int devboard_isp1105_set_vbus(struct usb_phy *otg, bool on)
+static int devboard_isp1105_set_vbus(struct usb_otg *otg, bool on)
 {
        if (on)
                gpio_set_value(USBH1_VBUSEN_B, 0);
@@ -194,18 +194,24 @@ static struct mxc_usbh_platform_data usbh1_pdata __initdata = {
 
 static int __init devboard_usbh1_init(void)
 {
-       struct usb_phy *otg;
+       struct usb_phy *phy;
        struct platform_device *pdev;
 
-       otg = kzalloc(sizeof(*otg), GFP_KERNEL);
-       if (!otg)
+       phy = kzalloc(sizeof(*phy), GFP_KERNEL);
+       if (!phy)
                return -ENOMEM;
 
-       otg->label      = "ISP1105";
-       otg->init       = devboard_isp1105_init;
-       otg->set_vbus   = devboard_isp1105_set_vbus;
+       phy->otg = kzalloc(sizeof(struct usb_otg), GFP_KERNEL);
+       if (!phy->otg) {
+               kfree(phy);
+               return -ENOMEM;
+       }
+
+       phy->label      = "ISP1105";
+       phy->init       = devboard_isp1105_init;
+       phy->otg->set_vbus      = devboard_isp1105_set_vbus;
 
-       usbh1_pdata.otg = otg;
+       usbh1_pdata.otg = phy;
 
        pdev = imx31_add_mxc_ehci_hs(1, &usbh1_pdata);
        if (IS_ERR(pdev))
index 2be769bbe05ed0542d45fce7532f190bbc5b17d2..135c90e3a45f15b4969d61d10b9ae60c7383e223 100644 (file)
@@ -291,7 +291,7 @@ static int marxbot_isp1105_init(struct usb_phy *otg)
 }
 
 
-static int marxbot_isp1105_set_vbus(struct usb_phy *otg, bool on)
+static int marxbot_isp1105_set_vbus(struct usb_otg *otg, bool on)
 {
        if (on)
                gpio_set_value(USBH1_VBUSEN_B, 0);
@@ -308,18 +308,24 @@ static struct mxc_usbh_platform_data usbh1_pdata __initdata = {
 
 static int __init marxbot_usbh1_init(void)
 {
-       struct usb_phy *otg;
+       struct usb_phy *phy;
        struct platform_device *pdev;
 
-       otg = kzalloc(sizeof(*otg), GFP_KERNEL);
-       if (!otg)
+       phy = kzalloc(sizeof(*phy), GFP_KERNEL);
+       if (!phy)
                return -ENOMEM;
 
-       otg->label      = "ISP1105";
-       otg->init       = marxbot_isp1105_init;
-       otg->set_vbus   = marxbot_isp1105_set_vbus;
+       phy->otg = kzalloc(sizeof(struct usb_otg), GFP_KERNEL);
+       if (!phy->otg) {
+               kfree(phy);
+               return -ENOMEM;
+       }
+
+       phy->label      = "ISP1105";
+       phy->init       = marxbot_isp1105_init;
+       phy->otg->set_vbus      = marxbot_isp1105_set_vbus;
 
-       usbh1_pdata.otg = otg;
+       usbh1_pdata.otg = phy;
 
        pdev = imx31_add_mxc_ehci_hs(1, &usbh1_pdata);
        if (IS_ERR(pdev))