/* ------------------------------------------------------------------------- */
  
 -      sysfs_notify(&gadget->dev.kobj, NULL, "status");
+ static void usb_gadget_state_work(struct work_struct *work)
+ {
+       struct usb_gadget       *gadget = work_to_gadget(work);
+ 
++      sysfs_notify(&gadget->dev.kobj, NULL, "state");
+ }
+ 
  void usb_gadget_set_state(struct usb_gadget *gadget,
                enum usb_device_state state)
  {
 
  
  static int omap2430_probe(struct platform_device *pdev)
  {
 -      struct resource                 musb_resources[2];
 +      struct resource                 musb_resources[3];
-       struct musb_hdrc_platform_data  *pdata = pdev->dev.platform_data;
+       struct musb_hdrc_platform_data  *pdata = dev_get_platdata(&pdev->dev);
        struct omap_musb_board_data     *data;
        struct platform_device          *musb;
        struct omap2430_glue            *glue;
 
  
  static int tusb_probe(struct platform_device *pdev)
  {
 -      struct resource musb_resources[2];
 +      struct resource musb_resources[3];
-       struct musb_hdrc_platform_data  *pdata = pdev->dev.platform_data;
+       struct musb_hdrc_platform_data  *pdata = dev_get_platdata(&pdev->dev);
        struct platform_device          *musb;
        struct tusb6010_glue            *glue;
  
 
  
  config OMAP_USB3
        tristate "OMAP USB3 PHY Driver"
 +      depends on ARCH_OMAP2PLUS || COMPILE_TEST
        select OMAP_CONTROL_USB
+       select USB_PHY
        help
          Enable this to support the USB3 PHY that is part of SOC. This
          driver takes care of all the PHY functionality apart from comparator.