22 Dec, 2011

2 commits

  • * 'for-greg' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb:
    usb: gadget: epautoconf: do not change number of streams
    usb: dwc3: core: fix cached revision on our structure
    usb: musb: fix reset issue with full speed device

    Greg Kroah-Hartman
     
  • This commit:

    commit 8f5d621543cb064d2989fc223d3c2bc61a43981e
    Author: Joachim Foerster
    Date: Mon Oct 10 18:06:54 2011 +0200

    usb/isp1760: Let OF bindings depend on general CONFIG_OF instead of PPC_OF .

    To be able to use the driver on other OF-aware architectures, too.
    And add necessary OF related #includes to fix compilation error.

    Signed-off-by: Joachim Foerster
    Signed-off-by: Greg Kroah-Hartman

    enabled the build on all CONFIG_OF architectures, but it cannot do
    this.

    This driver depends upon CONFIG_OF_IRQ but not all CONFIG_OF platforms
    support that infrastructure, in particular Sparc does not so the
    build fails.

    Please push a patch like the following to Linus so that this code only
    gets built where it actually should.

    --------------------
    usb/isp1760: Add missing CONFIG_OF_IRQ dependency on OF code.

    Signed-off-by: David S. Miller
    Signed-off-by: Greg Kroah-Hartman

    David Miller
     

19 Dec, 2011

1 commit

  • We should not change gadget driver's descriptors just
    because we think it's right to do so.

    There are several of reasons which would support this
    statement but it suffices to say that this was probably
    never tested because it updates bmAttributes without
    asking the driver if it's ok to do so.

    This means that e.g. on UASP gadget it would enable
    stream support even for the command endpoint which must
    not have stream support enabled.

    In fact, this change is fixing the bug introduced by
    commit a59d6b9 (usb: gadget: add streams support to
    the gadget framework) which was caught when testing
    UASP gadget with dwc3 driver.

    Cc: Tatyana Brokhman
    Signed-off-by: Felipe Balbi

    Felipe Balbi
     

15 Dec, 2011

1 commit


14 Dec, 2011

2 commits

  • TXMAXP register is not getting programmed correctly for a full speed device
    as can_bulk_split() have been removed by
    "0662481: usb: musb: disable double buffering when it's broken" patch.

    Adding back the case for can_bulk_split() to fix the reset message seen with
    a full speed stick.

    Signed-off-by: Ajay Kumar Gupta
    Signed-off-by: Felipe Balbi

    Ajay Kumar Gupta
     
  • Huawei use the product code HUAWEI_PRODUCT_E353 (0x1506) for a
    number of different devices, which each can appear with a number
    of different descriptor sets. Different types of interfaces
    can be identified by looking at the subclass and protocol fields

    Subclass 1 protocol 8 is actually the data interface of a CDC
    ECM set, with subclass 1 protocol 9 as the control interface.
    Neither support serial data communcation, and cannot therefore
    be supported by this driver.

    At the same time, add a few other sets which appear if the
    device is configured in "Windows mode" using this modeswitch
    message:
    55534243000000000000000000000011060000000100000000000000000000

    Signed-off-by: Bjørn Mork
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Bjørn Mork
     

13 Dec, 2011

2 commits


12 Dec, 2011

3 commits


02 Dec, 2011

4 commits

  • …rah/xhci into usb-linus

    * 'for-usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci:
    Revert "xHCI: reset-on-resume quirk for NEC uPD720200"
    xHCI: fix bug in xhci_clear_command_ring()

    Greg Kroah-Hartman
     
  • Signed-off-by: Marcin Kościelnicki
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Marcin Kościelnicki
     
  • This reverts commit df711fc9962b9491af2b92bd0d21ecbfefe4e5fa.

    The commit added a reset-on-resume quirk because the NEC chipset stopped
    responding to commands about 30 minutes after a system resume from
    suspend. We thought it was a chipset issue, but it turns out that the
    xHCI driver was zeroing out the link TRB after a successful context
    restore during resume. The host controller would fall off the command
    ring sometime later, causing it to not respond to new commands.

    The link TRB issue has been fixed with commit
    158886cd2cf4599e04f9b7e10cb767f5f39b14f1 "xHCI: fix bug in
    xhci_clear_command_ring()", so revert the reset-on-resume quirk, as it's
    not necessary.

    Commit df711fc9962b9491af2b92bd0d21ecbfefe4e5fa was marked for stable
    trees back to 2.6.37, but according to my mail, it has not made it into
    Linus' tree or the stable trees yet.

    Signed-off-by: Sarah Sharp
    Tested-by: Julian Sikorski
    Cc: Andiry Xu

    Sarah Sharp
     
  • When system enters suspend, xHCI driver clears command ring by writing zero
    to all the TRBs. However, this also writes zero to the Link TRB, and the ring
    is mangled. This may cause driver accesses wrong memory address and the
    result is unpredicted.

    When clear the command ring, keep the last Link TRB intact, only clear its
    cycle bit. This should fix the "command ring full" issue reported by Oliver
    Neukum.

    This should be backported to stable kernels as old as 2.6.37, since the
    commit 89821320 "xhci: Fix command ring replay after resume" is merged.

    Signed-off-by: Andiry Xu
    Signed-off-by: Sarah Sharp
    Reported-by: Oliver Neukum

    Andiry Xu
     

29 Nov, 2011

13 commits

  • The original implementation of dequeuing a request in progress
    is not correct. Change to use a correct process and also clean
    up the related functions a little bit.

    Signed-off-by: Li Yang
    Acked-by: Peter Chen
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Li Yang
     
  • In order to support multiple SoC kernel image, compile-time dependency
    on a specific SoC type should be avoided.

    fsl_udc_clk_finalize is already protected by cpu_is_mx35(), so remove
    the compile-time check for CONFIG_SOC_IMX35.

    Signed-off-by: Fabio Estevam
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Fabio Estevam
     
  • Fix the following build error:

    CC [M] drivers/usb/gadget/fsl_mxc_udc.o
    drivers/usb/gadget/fsl_mxc_udc.c: In function 'fsl_udc_clk_finalize':
    drivers/usb/gadget/fsl_mxc_udc.c:98: error: implicit declaration of function 'readl'
    drivers/usb/gadget/fsl_mxc_udc.c:100: error: implicit declaration of function 'writel'

    This error is caused by the follwing commit:
    (16fcb63: arm/imx: remove mx31_setup_weimcs( ) from mx31.h)

    ,which removed '#include ' from mx31.h.

    fsl_mxc_udc.c includes , which in turns includes mx31.h, so
    that's the reason fsl_mxc_udc.c built fine previously.

    Instead of relying on the indirect inclusion of the linux/io.h header file,
    include it directly in fsl_mxc_udc.c.

    Signed-off-by: Fabio Estevam
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Fabio Estevam
     
  • Some ISO gadgets, like audio, has SYNC attribute as well as
    USB_ENDPOINT_XFER_ISOC for their bmAttributes at ISO endpoint
    descriptor. So, it needs to use usb_endpoint_xfer_isoc to judge
    ISO XFER.

    Signed-off-by: Peter Chen
    Acked-by: Michal Nazarewicz
    Acked-by: Li Yang
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Peter Chen
     
  • Several UDC drivers had a gadget driver's speed sanity check of the
    form of:

    driver->speed != USB_SPEED_HIGH

    or:

    driver->speed != USB_SPEED_HIGH && driver->speed != USB_SPEED_FULL

    As more and more gadget drivers support USB SuperSpeed, driver->speed
    may be set to USB_SPEED_SUPER and UDC driver should handle such gadget
    correctly. The above checks however fail to recognise USB_SPEED_SUPER
    as a valid speed.

    This commit changes the two checks to:

    driver->speed < USB_SPEED_HIGH

    or:

    driver->speed < USB_SPEED_FULL

    respectively.

    Signed-off-by: Michal Nazarewicz
    Reported-by: Alan Stern
    Tested-by: Heiko Stuebner
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Michal Nazarewicz
     
  • Commit "usb: gadget: use config_ep_by_speed() instead of
    ep_choose()" broke g_serial in "non ACM nor OBEX"
    mode. Apply a trivial fix on usb endpoints discovery.

    Signed-off-by: Robert Jarzmik
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Robert Jarzmik
     
  • This patch cares latest USB_SPEED_SUPER support.
    renesas_usbhs can not use super-speed, but can use full/high speed.

    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Kuninori Morimoto
     
  • current renesas_usbhs is using new style udc_start/stop from
    af1d7056a5c1e5eaaf807ddd1423101db84668d0
    (usb: gadget: renesas: convert to new style).

    But current renesas_usbhs driver didn't care about gadget.dev.driver
    when udc_stop. it cause rmmod oops.
    This patch care it.

    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Kuninori Morimoto
     
  • current renesas_usbhs is using new style udc_start/stop from
    af1d7056a5c1e5eaaf807ddd1423101db84668d0
    (usb: gadget: renesas: convert to new style).

    cable disconnected signal was needed.
    This patch fixup it.

    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Kuninori Morimoto
     
  • current renesas_usbhs is using new style udc_start/stop from
    af1d7056a5c1e5eaaf807ddd1423101db84668d0
    (usb: gadget: renesas: convert to new style).

    But bind() function will fail if it was called before
    device_register() (or device_add()).
    This patch modifies this issue.

    Signed-off-by: Kuninori Morimoto
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Kuninori Morimoto
     
  • Currently the driver tries to save context in the suspend path, but
    will cause an abort if the device is already runtime suspended. This
    happens, for example, if MUSB loaded/compiled-in, in host mode, but no
    USB devices are attached. MUSB will be runtime suspended, but then
    attempting a system suspend will crash due to the context save
    being attempted while the device is disabled.

    On OMAP, as of v3.1, the driver's ->runtime_suspend() callback will be
    called late in the suspend path (by the PM domain layer) if the driver
    is not already runtime suspended, ensuring a full shutdown.

    Therefore, the context save is not needed in the ->suspend() method
    since it will be called in the ->runtime_suspend() method anyways
    (similarily for resume.)

    NOTE: this leaves the suspend/resume methods basically empty (with
    some FIXMEs and comments, but I'll leave it to the maintainers
    to decide whether to remove them.

    Cc: stable@vger.kernel.org
    Signed-off-by: Kevin Hilman
    Signed-off-by: Felipe Balbi
    Signed-off-by: Greg Kroah-Hartman

    Kevin Hilman
     
  • Fix a regression that was introduced by commit
    811c926c538f7e8d3c08b630dd5844efd7e000f6 (USB: EHCI: fix HUB TT scheduling
    issue with iso transfer).

    We detect an error if next == start, but this means uframe 0 can't be allocated
    anymore for iso transfer...

    Reported-by: Sander Eikelenboom
    Signed-off-by: Matthieu CASTET
    Acked-by: Alan Stern
    Signed-off-by: Greg Kroah-Hartman

    Matthieu CASTET
     
  • Julian Sikorski reports NEC uPD720200 does not work stable after suspend
    and resume. Re-initialize the host in xhci_resume().

    This should be backported to stable kernels as old as 2.6.37. The
    kernel will need to include
    commit c877b3b2ad5cb9d4fe523c5496185cc328ff3ae9
    "xhci: Add reset on resume quirk for asrock p67 host"
    for this patch to work.

    Signed-off-by: Andiry Xu
    Reported-by: Julian Sikorski
    Tested-by: Julian Sikorski
    Signed-off-by: Sarah Sharp

    Andiry Xu
     

27 Nov, 2011

4 commits


22 Nov, 2011

1 commit

  • * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (48 commits)
    USB: Fix Corruption issue in USB ftdi driver ftdi_sio.c
    USB: option: add PID of Huawei E173s 3G modem
    OHCI: final fix for NVIDIA problems (I hope)
    USB: option: release new PID for ZTE 3G modem
    usb: Netlogic: Fix HC_LENGTH call in ehci-xls.c
    USB: storage: ene_ub6250: fix compile warnings
    USB: option: add id for 3G dongle Model VT1000 of Viettel
    USB: serial: pl2303: rm duplicate id
    USB: pch_udc: Change company name OKI SEMICONDUCTOR to LAPIS Semiconductor
    USB: pch_udc: Support new device LAPIS Semiconductor ML7831 IOH
    usb-storage: Accept 8020i-protocol commands longer than 12 bytes
    USB: quirks: adding more quirky webcams to avoid squeaky audio
    powerpc/usb: fix type cast for address of ioremap to compatible with 64-bit
    USB: at91: at91-ohci: fix set/get power
    USB: cdc-acm: Fix disconnect() vs close() race
    USB: add quirk for Logitech C600 web cam
    USB: EHCI: fix HUB TT scheduling issue with iso transfer
    USB: XHCI: resume root hubs when the controller resumes
    USB: workaround for bug in old version of GCC
    USB: ark3116 initialisation fix
    ...

    Linus Torvalds
     

21 Nov, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (86 commits)
    ipv4: fix redirect handling
    ping: dont increment ICMP_MIB_INERRORS
    sky2: fix hang in napi_disable
    sky2: enforce minimum ring size
    bonding: Don't allow mode change via sysfs with slaves present
    f_phonet: fix page offset of first received fragment
    stmmac: fix pm functions avoiding sleep on spinlock
    stmmac: remove spin_lock in stmmac_ioctl.
    stmmac: parameters auto-tuning through HW cap reg
    stmmac: fix advertising 1000Base capabilties for non GMII iface
    stmmac: use mdelay on timeout of sw reset
    sky2: version 1.30
    sky2: used fixed RSS key
    sky2: reduce default Tx ring size
    sky2: rename up/down functions
    sky2: pci posting issues
    sky2: fix hang on shutdown (and other irq issues)
    r6040: fix check against MCRO_HASHEN bit in r6040_multicast_list
    MAINTAINERS: change email address for shemminger
    pch_gbe: Move #include of module.h
    ...

    Linus Torvalds
     

19 Nov, 2011

5 commits

  • Fix for ftdi_set_termios() glitching output

    ftdi_set_termios() is constantly setting the baud rate, data bits and parity
    unnecessarily on every call, . When called while characters are being
    transmitted can cause the FTDI chip to corrupt the serial port bit stream
    output by stalling the output half a bit during the output of a character.
    Simple fix by skipping this setting if the baud rate/data bits/parity are
    unchanged.

    Signed-off-by: Andrew Worsley
    Cc: stable
    ----

    I had a brief run with strace on the getty and it was doing ioctl()s on
    each call but it didn't look relavant to the problem. I think the issue is
    that XON/XOFF flow control was being implmented via hardware - for the ixoff
    to allow the user to use XON/XOFF to control output. Unfortunately it would
    send 3 Control URBs updating all of the settings after each piece of input

    I am trying to work around the issue of gmail messing with the tab/spacing
    by submitting via SMTP via gmail which I believe should fix the issue.

    The patch is against v3.2-rc2 and compiles - but no additional testing in
    this kernel has been done.

    Thanks

    Andrew
    Signed-off-by: Greg Kroah-Hartman

    Andrew Worsley
     
  • Signed-off-by: Ferenc Wagner
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Ferenc Wagner
     
  • Problems with NVIDIA's OHCI host controllers persist. After looking
    carefully through the spec, I finally realized that when a controller
    is reset it then automatically goes into a SUSPEND state in which it
    is completely quiescent (no DMA and no IRQs) and from which it will
    not awaken until the system puts it into the OPERATIONAL state.

    Therefore there's no need to worry about controllers being in the
    RESET state for extended periods, or remaining in the OPERATIONAL
    state during system shutdown. The proper action for device
    initialization is to put the controller into the RESET state (if it's
    not there already) and then to issue a software reset. Similarly, the
    proper action for device shutdown is simply to do a software reset.

    This patch (as1499) implements such an approach. It simplifies
    initialization and shutdown, and allows the NVIDIA shutdown-quirk code
    to be removed.

    Signed-off-by: Alan Stern
    Tested-by: Andre "Osku" Schmidt
    Tested-by: Arno Augustin
    Cc: stable [after tested in 3.2 for a while]
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     
  • This patch adds new PIDs for ZTE 3G modem, after we confirm it and tested.
    Thanks for Dan's work at kernel option devier.

    Signed-off-by: Alvin.Zheng
    Signed-off-by: wsalvin
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    zheng.zhijian@zte.com.cn
     
  • Fix compile error, HC_LENGTH now takes two parameters and ehci
    needs to be passed as the first parameter.

    Signed-off-by: Jayachandran C
    Signed-off-by: Greg Kroah-Hartman

    Jayachandran C
     

18 Nov, 2011

1 commit