27 Aug, 2013

2 commits


30 Jul, 2013

1 commit

  • When power cycling the hub ports, a misbehaving port will prevent all ports
    from being powered on because we quit at the first sign of trouble.

    Skip problematic ports instead of failing the entire power on.

    Cc: Marek Vasut
    Cc: Igor Grinberg
    Signed-off-by: Nikita Kiryanov

    Nikita Kiryanov
     

24 Jul, 2013

1 commit


13 Jun, 2013

2 commits

  • 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: Kuo-Jung Su
    CC: Marek Vasut

    Kuo-Jung Su
     
  • This patch makes the minimum power-on delay for USB HUB
    become configurable. The original design waits at least
    100 msec here, but some EHCI controlers(e.g. Faraday EHCI)
    are known to require much longer delay interval.

    Signed-off-by: Kuo-Jung Su
    CC: Marek Vasut

    Kuo-Jung Su
     

06 May, 2013

6 commits


17 Dec, 2012

2 commits

  • If probe of a newly connected device fails for some reason, clean up
    the allocated entry in usb_dev array.

    Signed-off-by: Milind Choudhary
    Signed-off-by: Simon Glass

    Milind Choudhary
     
  • The current logic reads the port status just once after usb_hub_power_on and
    expects the portstatus and portchange to report the connection status
    immediately and correctly.

    Few pen drives are not able to report both of them immediately ie. those pens
    report the connection change but not the connected state after the first read.
    This opportunity once lost is gone for ever because the u-boot, unlike linux or
    any other OS, works in polling mode.

    This patch modifies the logic to read the port status continuously until the
    portstatus and portchange both report a connection change as well as a connected
    state or no connection change and no connection. This logic is placed in a
    timeout of 10 sec. At the end of it, the pen drive would have either reported a
    ONE or a ZERO in bit 1 of portstatus as well as portchange.

    It enhances the set of pen drives which can eventually be detected by u-boot

    Note: This 10 second timeout is based purely on several experiments done with
    the broken pen drives

    Signed-off-by: Vipin Kumar
    Acked-by: Igor Grinberg

    Vipin Kumar
     

16 Oct, 2012

1 commit


21 Sep, 2012

1 commit

  • usb_hub_descriptor has to be packed as it's used for
    communication with the device. Member wHubCharacteristics
    violates the natural alignment rules.

    Use explicit unaligned access functions for this member.
    Fixes ARMv7 traping while using USB.

    v2: fix typo found by Thomas Langer

    v3: rebased on top of u-boot-usb/master

    Signed-off-by: Lucas Stach

    Lucas Stach
     

20 May, 2012

1 commit

  • This avoids cache-alignment warnings shown in console
    when a usb command is entered.

    Whenever X bytes of unaligned buffer is invalidated, arm core
    invalidates X + Y bytes as per the cache line size and throws
    these warnings.

    Signed-off-by: Puneet Saxena
    Signed-off-by: Marek Vasut

    Puneet Saxena
     

19 Mar, 2012

1 commit

  • Common code has a mdelay() func, so use that instead of the usb-specific
    wait_ms() func. This also fixes the build errors:

    ohci-hcd.c: In function 'submit_common_msg':
    /usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
    ohci-hcd.c:1519:9: sorry, unimplemented: called from here
    /usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
    ohci-hcd.c:1816:10: sorry, unimplemented: called from here
    /usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
    ohci-hcd.c:1827:10: sorry, unimplemented: called from here
    /usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
    ohci-hcd.c:1844:10: sorry, unimplemented: called from here
    /usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
    ohci-hcd.c:1563:11: sorry, unimplemented: called from here
    /usr/local/src/u-boot/blackfin/include/usb.h:202:44: sorry, unimplemented: inlining failed in call to 'wait_ms': function body not available
    ohci-hcd.c:1583:9: sorry, unimplemented: called from here
    make[1]: *** [ohci-hcd.o] Error 1

    Signed-off-by: Mike Frysinger
    Acked-by: Marek Vasut

    Mike Frysinger
     

03 Mar, 2012

2 commits