1. 01 Mar, 2011 11 commits
  2. 25 Feb, 2011 17 commits
  3. 21 Feb, 2011 1 commit
  4. 18 Feb, 2011 5 commits
    • Felipe Balbi's avatar
      usb: otg: notifier: switch to atomic notifier · cccad6d4
      Felipe Balbi authored
      most of our notifications, will be called from IRQ
      context, so an atomic notifier suits the job better.
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      cccad6d4
    • Hema HK's avatar
      usb: musb: OMAP4430: Fix usb device detection if connected during boot · 002eda13
      Hema HK authored
      OMAP4430 is embedded with UTMI PHY. This PHY does not support the
      OTG features like ID pin detection and VBUS detection. This function
      is exported to an external companion chip TWL6030. Software must retrieve
      the OTG HNP and SRP status from the TWL6030 and configure the bits inside
      the control module that drive the related USBOTGHS UTMI interface signals.
      It must also read back the UTMI signals needed to configure the TWL6030
      OTG module.
      
      Can find more details in the TRM[1].
      [1]:http://focus.ti.com/pdfs/wtbu/OMAP4430_ES2.0_Public_TRM_vJ.pdf
      
      In OMAP4430 musb driver VBUS and ID notifications are received from the
      transceiver driver. If the cable/device is connected during boot,
      notifications from transceiver driver will be missed till musb driver
      is loaded.
      Patch to configure the transceiver in the platform_enable/disable
      functions and enable the vbus in the gadget driver based on the
      last_event of the otg_transceiver.
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      002eda13
    • Hema HK's avatar
      usb: otg: TWL6030 Save the last event in otg_transceiver · 647b2d9c
      Hema HK authored
      Save the last event in the otg_transceiver so that it can used in the
      musb driver and gadget driver to configure the musb and enable the
      vbus for host mode and OTG mode, if the device is connected during boot.
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      647b2d9c
    • Hema HK's avatar
      usb: otg: TWL6030: Introduce the twl6030_phy_suspend function. · 070b8ed9
      Hema HK authored
      Introduce the twl6030_phy_suspend function and assign to otg.set_suspend
      function pointer.
      This function is used by the musb-omap2430 platform driver
      during suspend/resume.
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      070b8ed9
    • Hema HK's avatar
      usb: otg: OMAP4430: Introducing suspend function for power management · ee896e34
      Hema HK authored
      Introduced the suspend/resume function for the OMAP4430 internal PHY.
      This will be used by the twl6030-usb transceiver driver.
      Moved the clock enable/disable function calls and power on/off of the PHY
      code from power on/off functions to suspend/resume function.
      
      Pass the suspend function through board data for OMAP4430sdp and OMAP4panda.
      This will be used by the twl6030-usb transceiver driver.
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      ee896e34
  5. 17 Feb, 2011 6 commits
    • Hema HK's avatar
      usb: otg: OMAP4430: Add phy_suspend function pointer to twl4030_usb_data · d8692748
      Hema HK authored
      Declare the .phy_suspend function pointer to twl4030_usb_data structure.
      OMAP internal phy suspend function will be hooked though this function
      pointer to use in the transceiver driver.
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      d8692748
    • Hema HK's avatar
      usb: otg: Remove one unnecessary I2C read request. · 31e9992a
      Hema HK authored
      To get the ID status there was an I2C read transfer. Removed this I2C
      read transfer as this info can be used from existing variable(linkstat).
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      31e9992a
    • Hema HK's avatar
      usb: otg: enable regulator only on cable/device connect · 6dc2503b
      Hema HK authored
      Remove the regulator enable while driver loading and enable it only when
      the cable/device is connected and disable it when disconnected.
      
      Remove the configuration of config_state and config_trans register
      configuration as these registers are programmed when regulator
      enable/disable is called.
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      6dc2503b
    • Hema HK's avatar
      usb: musb: Using runtime pm APIs for musb. · 207b0e1f
      Hema HK authored
      Calling runtime pm APIs pm_runtime_put_sync() and pm_runtime_get_sync()
      for enabling/disabling the clocks, sysconfig settings.
      
      Enable clock, configure no-idle/standby when active and configure force idle/standby
      and disable clock when idled. This is taken care by the runtime framework when
      driver calls the pm_runtime_get_sync and pm_runtime_put_sync APIs.
      Need to configure MUSB into force standby and force idle mode when usb not used
      Signed-off-by: default avatarHema HK <hemahk@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      Cc: Cousson, Benoit <b-cousson@ti.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      207b0e1f
    • Felipe Balbi's avatar
      usb: musb: gadget: do not poke with gadget's list_head · ad1adb89
      Felipe Balbi authored
      struct usb_request's list_head is supposed to be
      used only by gadget drivers, but musb is abusing
      that. Give struct musb_request its own list_head
      and prevent musb from poking into other driver's
      business.
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      ad1adb89
    • Felipe Balbi's avatar
      usb: musb: gadget: beautify usb_gadget_probe_driver()/usb_gadget_unregister_driver · 63eed2b5
      Felipe Balbi authored
      Just a few cosmetic fixes to usb_gadget_probe_driver()
      and usb_gadget_unregister_driver().
      
      Decreased a few indentation levels with goto statements.
      
      While at that, also add the missing call to musb_stop().
      If we don't have OTG, there's no point of leaving
      MUSB prepared for operation if a gadget driver fails
      to probe. The same is valid for usb_gadget_unregister_driver(),
      since we are removing the gadget driver and we don't have
      OTG, we can completely unconfigure MUSB.
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      63eed2b5