1. 24 Jul, 2013 1 commit
  2. 11 Jul, 2013 1 commit
  3. 10 Jul, 2013 2 commits
  4. 02 Jul, 2013 1 commit
    • Michael Trimarchi's avatar
      usb: omap: ulpi: fix ulpi transceiver access · b0857c45
      Michael Trimarchi authored
      
      
      This patch fix the omap access to the transceiver
      configuration registers using the ulpi bus. As reported by
      the documentation the bit31 is used only to check if the
      transaction is done or still running and the reading and
      writing operation have different offset and have different
      values. What we need to do at the end of a transaction is
      leave the bus in done state. Anyway an error using the ulpi
      omap register is not recoverable so any error give out the
      usage of this interface.
      
      Tested on a custom OMAP5430 board with a TUSB1210 ULPI PHY
      on USBB1.
      Signed-off-by: default avatarMichael Trimarchi <michael@amarulasolutions.com>
      Acked-by: default avatarIgor Grinberg <grinberg@compulab.co.il>
      Tested-by: default avatarLubomir Popov <lpopov@mm-sol.com>
      Cc: Stefano Babic <sbabic@denx.de>
      Cc: Marek Vasut <marex@denx.de>
      Cc: Tom Rini <trini@ti.com>
      b0857c45
  5. 30 Jun, 2013 7 commits
  6. 26 Jun, 2013 1 commit
  7. 12 Jun, 2013 9 commits
    • Heiko Schocher's avatar
      usb, composite: after unregister gadget driver set composite to NULL · c67b0e42
      Heiko Schocher authored
      
      
      Without this, second usb_composite_register() call fails always
      with -EINVAL.
      Signed-off-by: default avatarHeiko Schocher <hs@denx.de>
      Cc: Lukasz Majewski <l.majewski@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Marek Vasut <marex@denx.de>
      c67b0e42
    • Stephen Warren's avatar
      usb: ehci: add missing cache managment · d3e07478
      Stephen Warren authored
      Commit 8f62ca64
      
       "usb: ehci: Support interrupt transfers via periodic list"
      didn't include any cache management in the new interrupt transfer path.
      It also added an extra write to or_asynclistaddr in usb_lowlevel_init(),
      without having flushed out the data there.
      
      Add the missing cache management calls, so that the code works again.
      
      This allows the USB keyboard on Tegra's Seaboard/Springbank boards to
      work.
      
      Cc: Patrick Georgi <patrick@georgi-clan.de>
      Cc: Vincent Palatin <vpalatin@chromium.org>
      Cc: Julius Werner <jwerner@chromium.org>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Marek Vasut <marex@denx.de>
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      d3e07478
    • Kuo-Jung Su's avatar
      usb: gadget: add Faraday FOTG210 USB gadget support · 64cfd3f9
      Kuo-Jung Su authored
      
      
      The Faraday FOTG210 is an OTG chip which could operate
      as either an EHCI Host or a USB Device at a time.
      Signed-off-by: default avatarKuo-Jung Su <dantesu@faraday-tech.com>
      CC: Marek Vasut <marex@denx.de>
      64cfd3f9
    • Kuo-Jung Su's avatar
      usb: ehci: add Faraday USB 2.0 EHCI support · e82a316d
      Kuo-Jung Su authored
      
      
      This patch adds support to both Faraday FUSBH200 and FOTG210,
      the differences between Faraday EHCI and standard EHCI are
      listed bellow:
      
      1. The PORTSC starts at 0x30 instead of 0x44.
      2. The CONFIGFLAG(0x40) is not only un-implemented, and
         also has its address space removed.
      3. Faraday EHCI is a TDI design, but it doesn't
         compatible with the general TDI implementation
         found at both U-Boot and Linux.
      4. The ISOC descriptors differ from standard EHCI in
         several ways. But since U-boot doesn't support ISOC,
         we don't have to worry about that.
      Signed-off-by: default avatarKuo-Jung Su <dantesu@faraday-tech.com>
      CC: Marek Vasut <marex@denx.de>
      e82a316d
    • Kuo-Jung Su's avatar
      usb: ehci: add weak-aliased function for PORTSC · 1dde1423
      Kuo-Jung Su authored
      
      
      There is at least one non-EHCI compliant controller (i.e. Faraday EHCI)
      not only leave RESERVED and CONFIGFLAG registers un-implemented
      but also has their address spaces removed.
      
      As an result, the PORTSC register of Faraday EHCI always
      starts from 0x30 instead of 0x44 in standard EHCI.
      
      So that we'll need a weak-aliased function for abstraction.
      Signed-off-by: default avatarKuo-Jung Su <dantesu@faraday-tech.com>
      CC: Marek Vasut <marex@denx.de>
      1dde1423
    • Kuo-Jung Su's avatar
      usb: ehci: prevent bad PORTSC register access · 9c6a9d7c
      Kuo-Jung Su authored
      
      
      1. The 'index' of ehci_submit_root() is not always > 0.
      
         e.g.
         While it gets invoked from usb_get_descriptor(),
         the 'index' is always a '0'. (See ch.9 of USB2.0)
      
      2. The PORTSC register is not always required, and thus it
         should only report a port error when necessary.
         It would cause a port scan failure if the ehci_submit_root()
         always gets terminated by a port error.
      Signed-off-by: default avatarKuo-Jung Su <dantesu@faraday-tech.com>
      CC: Marek Vasut <marex@denx.de>
      9c6a9d7c
    • Vivek Gautam's avatar
      usb: gadget: Use unaligned access for wMaxPacketSize · f6664ba4
      Vivek Gautam authored
      
      
      Use get_unaligned() while fetching wMaxPacketSize to avoid
      voilating any alignment rules.
      Signed-off-by: default avatarVivek Gautam <gautam.vivek@samsung.com>
      Cc: Lukasz Majewski <l.majewski@samsung.com>
      Cc: Piotr Wilczek <p.wilczek@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Lukasz Dalek <luk0104@gmail.com>
      Cc: Marek Vasut <marex@denx.de>
      f6664ba4
    • Julius Werner's avatar
      usb: asix: Move software resets to basic_init · 4edcf0a3
      Julius Werner authored
      
      
      The ASIX driver calls a basic_init() function during get_info(), so that
      not all initialization tasks need to be redone on every init().
      Unfortunately, the most important one is still triggered too often: the
      driver does a full port and MII reset on every asix_init(), requiring up
      to several seconds to reestablish the link.
      
      This patch confines that software reset into the asix_basic_init()
      function so that it will only be executed once. This saves about a
      second of boot time on systems using BOOTP.
      
      Note: this patch was previously submitted many moons ago as:
      
         usb: usbeth: asix: Do a fast init if link already established
      
      That patch seens to have been lost or forgotten, so this is a rebased
      version. It is tested on snow with a Asix USB dongle (Cisco).
      Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
      Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Reviewed-by: default avatarVadim Bendebury <vbendeb@chromium.org>
      4edcf0a3
    • Simon Glass's avatar
      usb: Correct CLEAR_FEATURE code in ehci-hcd · ed10e66a
      Simon Glass authored
      This commit broke USB2 on link (Chromebook Pixel):
      
        020bbcb7
      
       usb: hub: Power-cycle on root-hub ports
      
      However the root cause seems to be a missing mask and missing 'break'
      in ehci-hcd.c. This patch fixes both.
      
      On link, 'usb start' with a USB keyboard and memory stick inserted now
      finds both. The keyboard works as expected. Also ext2ls shows a directory
      listing from the memory stick.
      Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
      ed10e66a
  8. 10 Jun, 2013 1 commit
  9. 21 May, 2013 1 commit
  10. 14 May, 2013 3 commits
  11. 10 May, 2013 2 commits
  12. 06 May, 2013 1 commit
  13. 05 May, 2013 5 commits
  14. 12 Apr, 2013 1 commit
  15. 08 Apr, 2013 2 commits
    • Bin Liu's avatar
      musb: set MUSB speed based on CONFIG · 76b09b85
      Bin Liu authored
      
      
      Do not config MUSB to highspeed mode if CONFIG_USB_GADGET_DUALSPEED
      is not set, in which case Ether gadget only operates in fullspeed.
      Reviewed-by: default avatarTom Rini <trini@ti.com>
      Signed-off-by: default avatarBin Liu <b-liu@ti.com>
      76b09b85
    • Bin Liu's avatar
      musb: am335x: disable bulk split-combine feature · 4de602f2
      Bin Liu authored
      
      
      On TI AM335x devices, MUSB has bulk split/combine feature enabled
      in the ConfigData register, but the current MUSB driver does not
      support it yet. Therefore, disable the feature for now, until the
      driver adds the support.
      
      One usecase which is broken because of this feature is that Ether
      gadget stops working in Fullspeed mode (by un-defining
      CONFIG_USB_GADGET_DUALSPEED)
      
      After desabled this feature, MUSB driver send packets in proper size
      (no more than 64 bytes) in Fullspeed mode.
      
      This has been validated with Ether gadget in Fullspeed mode on AM335x
      EVM.
      Signed-off-by: default avatarBin Liu <b-liu@ti.com>
      4de602f2
  16. 01 Apr, 2013 1 commit
    • York Sun's avatar
      Consolidate bool type · 472d5460
      York Sun authored
      
      
      'bool' is defined in random places. This patch consolidates them into a
      single header file include/linux/types.h, using stdbool.h introduced in C99.
      
      All other #define, typedef and enum are removed. They are all consistent with
      true = 1, false = 0.
      
      Replace FALSE, False with false. Replace TRUE, True with true.
      Skip *.py, *.php, lib/* files.
      Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
      472d5460
  17. 18 Mar, 2013 1 commit