1. 13 8月, 2013 29 次提交
  2. 03 8月, 2013 1 次提交
  3. 02 8月, 2013 3 次提交
    • B
      USB: ohci-at91: add usb_clk for transition to common clk framework · 6b0a1cf7
      Boris BREZILLON 提交于
      The AT91 PMC (Power Management Controller) provides an USB clock used by
      USB Full Speed host (ohci) and USB Full Speed device (udc).
      The usb drivers (ohci and udc) must configure this clock to 48Mhz.
      This configuration was formely done in mach-at91/clock.c, but this
      implementation will be removed when moving to common clk framework.
      
      This patch adds support for usb clock retrieval and configuration, and is
      backward compatible with the current at91 clk implementation (if usb clk
      is not found, it does not configure/enable it).
      
      Changes since v1:
       - use IS_ENABLED(CONFIG_COMMON_CLK) to isolate new at91 clk support
      Signed-off-by: NBoris BREZILLON <b.brezillon@overkiz.com>
      Acked-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      6b0a1cf7
    • A
      USB: EHCI: don't depend on hardware for tracking port resets and resumes · 6753f4cf
      Alan Stern 提交于
      In theory, an EHCI controller can turn off the PORT_RESUME or
      PORT_RESET bits in a port status register all by itself (and some
      controllers actually do this).  We shouldn't depend on these bits
      being set correctly.
      
      This patch rearranges the code in ehci-hcd that handles completion of
      port resets and resumes.  We guarantee that ehci->reset_done[portnum]
      is nonzero if a reset or resume is in progress, and that the portnum
      bit is set in ehci->resuming_ports if the operation is a resume.  (To
      help enforce this guarantee, the patch prevents suspended ports from
      being reset.)  Therefore it's not necessary to look at the port status
      bits to learn what's going on.
      
      The patch looks bigger than it really is, because it changes the
      indentation level of a sizeable region of code.  Most of what it
      actually does is interchange some tests.  The only functional changes
      are testing reset_done and resuming_ports rather than PORT_RESUME and
      PORT_RESET, removing a now-unnecessary check for spontaneous
      resets of the PORT_RESUME and PORT_RESET bits, and preventing a
      suspended or resuming port from being reset.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      6753f4cf
    • A
      USB: EHCI: keep better track of resuming ports · 3a20446f
      Alan Stern 提交于
      The ehci-hcd driver isn't as careful as it should be about the way it
      uses ehci->resuming_ports.  One of the omissions was fixed recently by
      commit 47a64a13 (USB: EHCI: Fix resume signalling on remote
      wakeup), but there are other places that need attention:
      
      	When a port's suspend feature is explicitly cleared, the
      	corresponding bit in resuming_ports should be set and the core
      	should be notified about the port resume.
      
      	We don't need to clear a resuming_ports bit when a reset
      	completes.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3a20446f
  4. 01 8月, 2013 7 次提交