15 Jan, 2012

1 commit

  • * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (119 commits)
    MIPS: Delete unused function add_temporary_entry.
    MIPS: Set default pci cache line size.
    MIPS: Flush huge TLB
    MIPS: Octeon: Remove SYS_SUPPORTS_HIGHMEM.
    MIPS: Octeon: Add support for OCTEON II PCIe
    MIPS: Octeon: Update PCI Latency timer and enable more error reporting.
    MIPS: Alchemy: Update cpu-feature-overrides
    MIPS: Alchemy: db1200: Improve PB1200 detection.
    MIPS: Alchemy: merge Au1000 and Au1300-style IRQ controller code.
    MIPS: Alchemy: chain IRQ controllers to MIPS IRQ controller
    MIPS: Alchemy: irq: register pm at irq init time
    MIPS: Alchemy: Touchscreen support on DB1100
    MIPS: Alchemy: Hook up IrDA on DB1000/DB1100
    net/irda: convert au1k_ir to platform driver.
    MIPS: Alchemy: remove unused board headers
    MTD: nand: make au1550nd.c a platform_driver
    MIPS: Netlogic: Mark Netlogic chips as SMT capable
    MIPS: Netlogic: Add support for XLP 3XX cores
    MIPS: Netlogic: Merge some of XLR/XLP wakup code
    MIPS: Netlogic: Add default XLP config.
    ...

    Fix up trivial conflicts in arch/mips/kernel/{perf_event_mipsxx.c,
    traps.c} and drivers/tty/serial/Makefile

    Linus Torvalds
     

13 Jan, 2012

1 commit


11 Jan, 2012

1 commit


10 Jan, 2012

6 commits

  • Driver specific changes

    Again, a lot of platforms have changes in here: pxa, samsung, omap,
    at91, imx, ...

    * tag 'drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (54 commits)
    ARM: sa1100: clean up of the clock support
    ARM: pxa: add dummy clock for sa1100-rtc
    RTC: sa1100: support sa1100, pxa and mmp soc families
    RTC: sa1100: remove redundant code of setting alarm
    RTC: sa1100: Clean out ost register
    Input: zylonite-wm97xx - replace IRQ_GPIO() with gpio_to_irq()
    pcmcia: pxa: replace IRQ_GPIO() with gpio_to_irq()
    ARM: EXYNOS: Modified files for SPI consolidation work
    ARM: S5P64X0: Enable SDHCI support
    ARM: S5P64X0: Add lookup of sdhci-s3c clocks using generic names
    ARM: S5P64X0: Add HSMMC setup for host Controller
    ARM: EXYNOS: Add USB OHCI support to ORIGEN board
    USB: Add Samsung Exynos OHCI diver
    ARM: EXYNOS: Add USB OHCI support to SMDKV310 board
    ARM: EXYNOS: Add USB OHCI device
    net: macb: fix build break with !CONFIG_OF
    i2c: tegra: Support DVC controller in device tree
    i2c: tegra: Add __devinit/exit to probe/remove
    net/at91_ether: use gpio_is_valid for phy IRQ line
    ARM: at91/net: add macb ethernet controller in 9g45/9g20 DT
    ...

    Linus Torvalds
     
  • New feature development

    This adds support for new features, and contains stuff from most
    platforms. A number of these patches could have fit into other
    branches, too, but were small enough not to cause too much
    confusion here.

    * tag 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (28 commits)
    mfd/db8500-prcmu: remove support for early silicon revisions
    ARM: ux500: fix the smp_twd clock calculation
    ARM: ux500: remove support for early silicon revisions
    ARM: ux500: update register files
    ARM: ux500: register DB5500 PMU dynamically
    ARM: ux500: update ASIC detection for U5500
    ARM: ux500: support DB8520
    ARM: picoxcell: implement watchdog restart
    ARM: OMAP3+: hwmod data: Add the default clockactivity for I2C
    ARM: OMAP3: hwmod data: disable multiblock reads on MMC1/2 on OMAP34xx/35xx <= ES2.1
    ARM: OMAP: USB: EHCI and OHCI hwmod structures for OMAP4
    ARM: OMAP: USB: EHCI and OHCI hwmod structures for OMAP3
    ARM: OMAP: hwmod data: Add support for AM35xx UART4/ttyO3
    ARM: Orion: Remove address map info from all platform data structures
    ARM: Orion: Get address map from plat-orion instead of via platform_data
    ARM: Orion: mbus_dram_info consolidation
    ARM: Orion: Consolidate the address map setup
    ARM: Kirkwood: Add configuration for MPP12 as GPIO
    ARM: Kirkwood: Recognize A1 revision of 6282 chip
    ARM: ux500: update the MOP500 GPIO assignments
    ...

    Linus Torvalds
     
  • Device tree conversions for samsung and tegra

    Both platforms had some initial device tree support, but this adds
    much more to actually make it usable.

    * tag 'dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (45 commits)
    ARM: dts: Add intial dts file for EXYNOS4210 SoC, SMDKV310 and ORIGEN
    ARM: EXYNOS: Add Exynos4 device tree enabled board file
    rtc: rtc-s3c: Add device tree support
    input: samsung-keypad: Add device tree support
    ARM: S5PV210: Modify platform data for pl330 driver
    ARM: S5PC100: Modify platform data for pl330 driver
    ARM: S5P64x0: Modify platform data for pl330 driver
    ARM: EXYNOS: Add a alias for pdma clocks
    ARM: EXYNOS: Limit usage of pl330 device instance to non-dt build
    ARM: SAMSUNG: Add device tree support for pl330 dma engine wrappers
    DMA: PL330: Add device tree support
    ARM: EXYNOS: Modify platform data for pl330 driver
    DMA: PL330: Infer transfer direction from transfer request instead of platform data
    DMA: PL330: move filter function into driver
    serial: samsung: Fix build for non-Exynos4210 devices
    serial: samsung: add device tree support
    serial: samsung: merge probe() function from all SoC specific extensions
    serial: samsung: merge all SoC specific port reset functions
    ARM: SAMSUNG: register uart clocks to clock lookup list
    serial: samsung: remove all uses of get_clksrc and set_clksrc
    ...

    Fix up fairly trivial conflicts in arch/arm/mach-s3c2440/clock.c and
    drivers/tty/serial/Kconfig both due to just adding code close to
    changes.

    Linus Torvalds
     
  • Cleanups on various subarchitectures

    Cleanup patches for various ARM platforms and some of their associated
    drivers, the bulk of these is for mach-91.

    Arnd ended up pulling in the restart branch from Russell in order to
    fix up some simple but annoying merge conflicts.

    * tag 'cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (44 commits)
    arm/at91: fix build of stamp9g20
    ARM: u300: delete memory.h
    MAINTAINERS: add maintainer entry for Picochip picoxcell
    ARM: picoxcell: move io mappings to common.c
    ARM: picoxcell: don't reserve irq_descs
    ARM: picoxcell: remove mach/memory.h
    ARM: at91: delete the pcontrol_g20_defconfig
    arm/tegra: Remove code that's ifndef CONFIG_ARM_GIC
    arm/tegra: remove unused defines
    arm/tegra: fix variable formatting in makefile
    ARM: davinci: vpif: move code to driver core header from platform
    ARM: at91/gpio: fix display of number of irq setuped
    ARM: at91/gpio: drop PIN_BASE
    ARM: at91/udc: use gpio_is_valid to check the gpio
    ARM: at91/ohci: use gpio_is_valid to check the gpio
    ARM: at91/nand: use gpio_is_valid to check the gpio
    ARM: at91/mmc: use gpio_is_valid to check the gpio
    ARM: at91/ide: use gpio_is_valid to check the gpio
    ARM: at91/pata: use gpio_is_valid to check the gpio
    ARM: at91/soc: use gpio_is_valid to check the gpio
    ...

    Linus Torvalds
     
  • * 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (232 commits)
    USB: Add USB-ID for Multiplex RC serial adapter to cp210x.c
    xhci: Clean up 32-bit build warnings.
    USB: update documentation for usbmon
    usb: usb-storage doesn't support dynamic id currently, the patch disables the feature to fix an oops
    drivers/usb/class/cdc-acm.c: clear dangling pointer
    drivers/usb/dwc3/dwc3-pci.c: introduce missing kfree
    drivers/usb/host/isp1760-if.c: introduce missing kfree
    usb: option: add ZD Incorporated HSPA modem
    usb: ch9: fix up MaxStreams helper
    USB: usb-skeleton.c: cleanup open_count
    USB: usb-skeleton.c: fix open/disconnect race
    xhci: Properly handle COMP_2ND_BW_ERR
    USB: remove dead code from suspend/resume path
    USB: add quirk for another camera
    drivers: usb: wusbcore: Fix dependency for USB_WUSB
    xhci: Better debugging for critical host errors.
    xhci: Be less verbose during URB cancellation.
    xhci: Remove debugging about ring structure allocation.
    xhci: Remove debugging about toggling cycle bits.
    xhci: Remove debugging for individual transfers.
    ...

    Linus Torvalds
     
  • Conflicts:
    arch/arm/mach-mxs/include/mach/common.h

    Pull in previous samsung conflict merges and do a trivial
    merge of an mxs double-add conflict.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

09 Jan, 2012

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (53 commits)
    Kconfig: acpi: Fix typo in comment.
    misc latin1 to utf8 conversions
    devres: Fix a typo in devm_kfree comment
    btrfs: free-space-cache.c: remove extra semicolon.
    fat: Spelling s/obsolate/obsolete/g
    SCSI, pmcraid: Fix spelling error in a pmcraid_err() call
    tools/power turbostat: update fields in manpage
    mac80211: drop spelling fix
    types.h: fix comment spelling for 'architectures'
    typo fixes: aera -> area, exntension -> extension
    devices.txt: Fix typo of 'VMware'.
    sis900: Fix enum typo 'sis900_rx_bufer_status'
    decompress_bunzip2: remove invalid vi modeline
    treewide: Fix comment and string typo 'bufer'
    hyper-v: Update MAINTAINERS
    treewide: Fix typos in various parts of the kernel, and fix some comments.
    clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR
    gpio: Kconfig: drop unknown symbol 'CS5535_GPIO'
    leds: Kconfig: Fix typo 'D2NET_V2'
    sound: Kconfig: drop unknown symbol ARCH_CLPS7500
    ...

    Fix up trivial conflicts in arch/powerpc/platforms/40x/Kconfig (some new
    kconfig additions, close to removed commented-out old ones)

    Linus Torvalds
     

08 Jan, 2012

1 commit

  • * samsung/dt: (3 commit)
    Merge branch 'depends/rmk/for-linus' into samsung/dt
    Merge branch 'depends/rmk/restart' into next/cleanup
    Merge branch 'next/cleanup' into samsung/dt

    Conflicts:
    arch/arm/mach-tegra/board-dt.c
    arch/arm/mach-tegra/include/mach/entry-macro.S

    The latest version of the samsung/dt branch resolves
    all sorts of conflicts with the latest upstream, no functional
    changes that are not already there.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

07 Jan, 2012

2 commits

  • Conflicts:
    arch/arm/mach-at91/at91cap9.c
    arch/arm/mach-at91/at91sam9260.c
    arch/arm/mach-at91/at91sam9261.c
    arch/arm/mach-at91/at91sam9263.c
    arch/arm/mach-at91/at91sam9g45.c
    arch/arm/mach-at91/at91sam9rl.c
    arch/arm/mach-exynos/cpu.c
    arch/arm/mach-shmobile/board-kota2.c

    This resolves a bunch of conflicts between the arm-soc tree
    and changes from the arm tree that have gone upstream.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • This resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file,
    and it fixes the build error in the arch/x86/kernel/microcode_core.c
    file, that the merge did not catch.

    The microcode_core.c patch was provided by Stephen Rothwell
    who was invaluable in the merge issues involved
    with the large sysdev removal process in the driver-core tree.

    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

05 Jan, 2012

5 commits

  • …ah/xhci into usb-next

    * 'for-usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci:
    xhci: Clean up 32-bit build warnings.
    xhci: Properly handle COMP_2ND_BW_ERR

    Greg Kroah-Hartman
     
  • Randy Dunlap points out that commit 9258c0b2 "xhci: Better debugging for
    critical host errors." introduces some new build warnings on 32-bit
    builds:

    drivers/usb/host/xhci-ring.c:1936:3: warning: format '%016llx' expects type 'long long unsigned int', but argument 3 has type 'dma_addr_t'
    drivers/usb/host/xhci-ring.c:1958:3: warning: format '%016llx' expects type 'long long unsigned int', but argument 3 has type 'dma_addr_t'

    Cast the results of xhci_trb_virt_to_dma() from a dma_addr_t to an
    unsigned long long.

    Signed-off-by: Sarah Sharp
    Reported-by: Randy Dunlap

    Sarah Sharp
     
  • drvdata needds to be freed before leaving the function in an error case.

    A simplified version of the semantic match that finds the problem is as
    follows: (http://coccinelle.lip6.fr)

    //
    @r exists@
    local idexpression x;
    statement S;
    identifier f1;
    position p1,p2;
    expression *ptr != NULL;
    @@

    x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...);
    ...
    if (x == NULL) S
    }
    x->f1
    ...>
    (
    return \(0\|\|ptr\);
    |
    return@p2 ...;
    )

    @script:python@
    p1 << r.p1;
    p2 << r.p2;
    @@

    print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Greg Kroah-Hartman

    Julia Lawall
     
  • According to USB 3.0 Specification Table 9-22, if
    bmAttributes [4:0] are set to zero, it means "no
    streams supported", but the way this helper was
    defined on Linux, we will *always* have one stream
    which might cause several problems.

    For example on DWC3, we would tell the controller
    endpoint has streams enabled and yet start transfers
    with Stream ID set to 0, which would goof up the host
    side.

    While doing that, convert the macro to an inline
    function due to the different checks we now need.

    Signed-off-by: Felipe Balbi
    Signed-off-by: Sarah Sharp
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Felipe Balbi
     
  • I encountered a result of COMP_2ND_BW_ERR while improving how the pwc
    webcam driver handles not having the full usb1 bandwidth available to
    itself.

    I created the following test setup, a NEC xhci controller with a
    single TT USB 2 hub plugged into it, with a usb keyboard and a pwc webcam
    plugged into the usb2 hub. This caused the following to show up in dmesg
    when trying to stream from the pwc camera at its highest alt setting:

    xhci_hcd 0000:01:00.0: ERROR: unexpected command completion code 0x23.
    usb 6-2.1: Not enough bandwidth for altsetting 9

    And usb_set_interface returned -EINVAL, which caused my pwc code to not
    do the right thing as it expected -ENOSPC.

    This patch makes the xhci driver properly handle COMP_2ND_BW_ERR and makes
    usb_set_interface return -ENOSPC as expected.

    This should be backported to stable kernels as old as 2.6.32.

    Signed-off-by: Hans de Goede
    Signed-off-by: Sarah Sharp
    Cc: stable@vger.kernel.org

    Hans de Goede
     

03 Jan, 2012

1 commit

  • When a host controller gives a bad event TRB, we should print out the
    contents of the TRB as a warning so that users don't have to recompile
    their kernel to get information about what went wrong. Also, print out
    the event ring if they have xHCI debugging turned on, since previous
    events can often explain what happened before the bad TRB occurred.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     

28 Dec, 2011

2 commits

  • * samsung/ohci:
    ARM: EXYNOS: Add USB OHCI support to ORIGEN board
    USB: Add Samsung Exynos OHCI diver
    ARM: EXYNOS: Add USB OHCI support to SMDKV310 board
    ARM: EXYNOS: Add USB OHCI device

    Arnd Bergmann
     
  • * tegra/dt:
    arm/tegra: Seaboard: Add GPIO key device tree nodes
    arm/dt: Add ADT7461 to Seaboard
    arm/dt: tegra: Use new compatible value for DVC I2C controller
    arm/tegra: initial device tree for tegra30
    arm/tegra: convert tegra20 to GIC devicetree binding
    arm/dt: tegra: Fix SDHCI nodes to match board files
    arm/dt: tegra: Fix serial nodes to match board files
    arm/dt: tegra: Fix I2C nodes to match board files
    arm/dt: tegra: Remove /chosen node
    arm/dt: tegra: Remove /memreserve/ from device-tree files
    arm/tegra: board-dt: Enable audio-related clocks
    arm/tegra: board-dt: Fix AUXDATA typo
    arm/dt: tegra: add dts file for paz00
    arm/tegra: Add device-tree support for TrimSlice board
    arm/dt: tegra: Clean up I2S and DAS nodes
    USB: ehci-tegra: add probing through device tree
    arm/dt: add basic usb nodes to tegra device trees
    arm/tegra: fix variable formatting in makefile

    Conflicts:
    arch/arm/mach-tegra/Makefile

    Arnd Bergmann
     

23 Dec, 2011

10 commits

  • This patch adds USB OHCI driver for Samsung EXYNOS SoCs.

    Signed-off-by: Jingoo Han
    Acked-by: Greg Kroah-Hartman
    Signed-off-by: Kukjin Kim

    Jingoo Han
     
  • With devices that can need up to 128 segments (with 64 TRBs per
    segment), we can't afford to print out the entire endpoint ring every
    time an URB is canceled. Instead, print the offset of the TRB, along
    with device pathname and endpoint number.

    Only print DMA addresses, since virtual addresses of internal structures
    are not useful. Change the cancellation code to be more clear about
    what steps of the cancellation it is in the process of doing (queueing
    the request, handling the stop endpoint command, turning the TDs into
    no-ops, or moving the dequeue pointers).

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • Debuggers only really care what the xHCI driver sets the ring dequeue
    pointer to, so make the driver stop babbling about the memory addresses
    of internal ring structures. This makes wading through the output of
    allocating and freeing 256 stream rings much easier by reducing the
    number of output lines per ring from 9 to 1.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • The code for toggling the cycle bits when the ring wraps around has
    worked for years. The print statement alone is not enough to indicate
    there's something wrong with that code. Now that full transfer tracing
    has been ripped out, the print statement or lack thereof won't help
    without context of where the enqueue pointer is.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • Users can trace the submission of URBs through USBmon, so it makes no
    sense to have duplicate debugging in the xHCI driver.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • Remove verbose debugging about scatter-gather lists, as we haven't had
    an issue with scatter gather list math for about a year now. The
    debugging didn't help before, and just clutters up the log file when
    trying to debug other issues.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • xHCI host controllers may not be capable of MSI, but they should be able
    to be used in legacy PCI interrupt mode. Similarly, some xHCI host
    controllers will have MSI support but not MSI-X support. Lower the
    dmesg log level from an error to debug. The message won't appear unless
    CONFIG_USB_XHCI_HCD_DEBUGGING is turned on.

    If we need to find out whether the device can support MSI or MSI-X and
    it's not being enabled by the driver, it's easy to ask the user to run
    lspci.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • Getting a short packet or a babble error is usually a recoverable error,
    so stop scaring users with warnings in dmesg when xHCI debugging is turned
    off.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • The xHCI driver will create an xhci_hcd structure, not an ehci_hci
    structure.

    Signed-off-by: Sarah Sharp

    Sarah Sharp
     
  • …balbi/usb into usb-next

    * 'for-gadget/next' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb: (24 commits)
    usb: dwc3: gadget: add support for SG lists
    usb: dwc3: gadget: don't force 'LST' always
    usb: dwc3: gadget: don't return anything on prepare trbs
    usb: dwc3: gadget: re-factor dwc3_prepare_trbs()
    usb: gadget: introduce support for sg lists
    usb: renesas: pipe: convert a long if into a XOR operation
    usb: gadget: remove useless depends on Kconfig
    usb: gadget: s3c-hsudc: remove the_controller global
    usb: gadget: s3c-hsudc: use release_mem_region instead of release_resource
    usb: gadget: s3c-hsudc: Add regulator handling
    usb: gadget: s3c-hsudc: use udc_start and udc_stop functions
    usb: gadget: s3c-hsudc: move device registration to probe
    usb: gadget: s3c-hsudc: add missing otg_put_transceiver in probe
    usb: gadget: s3c-hsudc: add __devinit to probe function
    usb: gadget: s3c-hsudc: move platform_data struct to global header
    USB: EHCI: Add Marvell Host Controller driver
    USB: OTG: add Marvell usb OTG driver support
    usb: gadget: mv_udc: drop ARCH dependency
    usb: gadget: mv_udc: fix bug in ep_dequeue
    usb: gadget: enlarge maxburst bit width.
    ...

    Greg Kroah-Hartman
     

22 Dec, 2011

1 commit

  • 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
     

20 Dec, 2011

1 commit


16 Dec, 2011

2 commits


14 Dec, 2011

1 commit


13 Dec, 2011

1 commit

  • …lbi/usb into usb-next

    * 'for-next/dwc3' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb: (392 commits)
    usb: dwc3: ep0: fix for possible early delayed_status
    usb: dwc3: gadget: fix stream enable bit
    usb: dwc3: ep0: fix GetStatus handling (again)
    usb: dwc3: ep0: use dwc3_request for ep0 requsts instead of usb_request
    usb: dwc3: use correct hwparam register for power mgm check
    usb: dwc3: omap: move to module_platform_driver
    usb: dwc3: workaround: missing disconnect event
    usb: dwc3: workaround: missing USB3 Reset event
    usb: dwc3: workaround: U1/U2 -> U0 transiton
    usb: dwc3: gadget: return early in dwc3_cleanup_done_reqs()
    usb: dwc3: ep0: handle delayed_status again
    usb: dwc3: ep0: push ep0state into xfernotready processing
    usb: dwc3: fix sparse errors
    usb: dwc3: fix few coding style problems
    usb: dwc3: move generic dwc3 code from gadget into core
    usb: dwc3: use a helper function for operation mode setting
    usb: dwc3: ep0: don't use ep0in for transfers
    usb: dwc3: ep0: use proper endianess in SetFeature for wIndex
    usb: dwc3: core: drop DWC3_EVENT_BUFFERS_MAX
    usb: dwc3: omap: add multiple instances support to OMAP
    ...

    Greg Kroah-Hartman
     

10 Dec, 2011

3 commits

  • After commit c430131a02d677aa708f56342c1565edfdacb3c0 (Support
    controllers with big endian capability regs), HC_LENGTH takes
    two arguments. This patch fixes following compilation error:

    In file included from drivers/usb/host/ehci-hcd.c:1323:
    drivers/usb/host/ehci-pxa168.c:302:54: error: macro "HC_LENGTH" requires 2 arguments, but only 1 given
    In file included from drivers/usb/host/ehci-hcd.c:1323:
    drivers/usb/host/ehci-pxa168.c: In function 'ehci_pxa168_drv_probe':
    drivers/usb/host/ehci-pxa168.c:302: error: 'HC_LENGTH' undeclared (first use in this function)
    drivers/usb/host/ehci-pxa168.c:302: error: (Each undeclared identifier is reported only once
    drivers/usb/host/ehci-pxa168.c:302: error: for each function it appears in.)

    Signed-off-by: Tanmay Upadhyay
    Cc: stable
    Acked-by: Alan Stern
    Signed-off-by: Greg Kroah-Hartman

    Tanmay Upadhyay
     
  • Add a new field num_mapped_sgs to struct urb so that we have a place to
    store the number of mapped entries and can also retain the original
    value of entries in num_sgs. Previously, usb_hcd_map_urb_for_dma()
    would overwrite this with the number of mapped entries, which would
    break dma_unmap_sg() because it requires the original number of entries.

    This fixes warnings like the following when using USB storage devices:
    ------------[ cut here ]------------
    WARNING: at lib/dma-debug.c:902 check_unmap+0x4e4/0x695()
    ehci_hcd 0000:00:12.2: DMA-API: device driver frees DMA sg list with different entry count [map count=4] [unmap count=1]
    Modules linked in: ohci_hcd ehci_hcd
    Pid: 0, comm: kworker/0:1 Not tainted 3.2.0-rc2+ #319
    Call Trace:
    [] warn_slowpath_common+0x80/0x98
    [] warn_slowpath_fmt+0x41/0x43
    [] check_unmap+0x4e4/0x695
    [] ? trace_hardirqs_off+0xd/0xf
    [] ? _raw_spin_unlock_irqrestore+0x33/0x50
    [] debug_dma_unmap_sg+0xeb/0x117
    [] usb_hcd_unmap_urb_for_dma+0x71/0x188
    [] unmap_urb_for_dma+0x20/0x22
    [] usb_hcd_giveback_urb+0x5d/0xc0
    [] ehci_urb_done+0xf7/0x10c [ehci_hcd]
    [] qh_completions+0x429/0x4bd [ehci_hcd]
    [] ehci_work+0x95/0x9c0 [ehci_hcd]
    ...
    ---[ end trace f29ac88a5a48c580 ]---
    Mapped at:
    [] debug_dma_map_sg+0x45/0x139
    [] usb_hcd_map_urb_for_dma+0x22e/0x478
    [] usb_hcd_submit_urb+0x63f/0x6fa
    [] usb_submit_urb+0x2c7/0x2de
    [] usb_sg_wait+0x55/0x161

    Signed-off-by: Clemens Ladisch
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Clemens Ladisch
     
  • Data read direct from device tree properties will be in the device
    tree's native endianness (i.e., big-endian).

    This patch uses of_property_read_u32() to read the bus-width
    property in host byte order instead.

    Signed-off-by: Dave Martin
    Acked-by: Pawel Moll
    Signed-off-by: Greg Kroah-Hartman

    Dave Martin