25 Feb, 2012

1 commit

  • SuperH fixes for 3.3-rc5

    * tag 'sh-for-linus' of git://github.com/pmundt/linux-sh:
    sh: Fix sh2a build error for CONFIG_CACHE_WRITETHROUGH
    sh: modify a resource of sh_eth_giga1_resources in board-sh7757lcr
    arch/sh: remove references to cpu_*_map.
    sh: Fix typo in pci-sh7780.c
    sh: add platform_device for SPI1 in setup-sh7757
    sh: modify resource for SPI0 in setup-sh7757
    sh: se7724: fix compile breakage
    sh: clkfwk: bugfix: use clk_reparent() for div6 clocks
    sh: clock-sh7724: fixup sh_fsi clock settings
    sh: sh7757lcr: update to the new MMCIF DMA configuration
    sh: fix the sh_mmcif_plat_data in board-sh7757lcr
    video: pvr2fb: Fix up spurious section mismatch warnings.
    sh: Defer to asm-generic/device.h.

    Linus Torvalds
     

24 Feb, 2012

1 commit

  • BenH says:
    'Here are a few more powerpc bits for you. A stupid regression I
    introduced with my previous commit to "fix" program check exceptions
    (brown paper bag for me), fix the cpuidle default, a bug fix for
    something that isn't strictly speaking a regression but some upstream
    changes causes it to show in lockdep now while it didn't before, and
    finally a trivial one for rusty to make his life easier later on
    removing the old cpumask cruft. '

    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc: Fix various issues with return to userspace
    cpuidle: Default y on powerpc pSeries
    powerpc: Fix program check handling when lockdep is enabled
    powerpc: Remove references to cpu_*_map

    Linus Torvalds
     

23 Feb, 2012

2 commits

  • USB bugfixes for 3.3-rc4

    A number of new device ids, and a cleanup/fix for some of the option
    device ids that shouldn't have been added in the first place.

    There's also a few USB 3 fixes for problems that people have reported,
    and a usb-storage bugfix to round it out.

    Signed-off-by: Greg Kroah-Hartman

    * tag 'usb-3.3-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
    USB: Added Kamstrup VID/PIDs to cp210x serial driver.
    USB: Serial: ti_usb_3410_5052: Add Abbot Diabetes Care cable id
    usb-storage: fix freezing of the scanning thread
    xhci: Fix encoding for HS bulk/control NAK rate.
    USB: Set hub depth after USB3 hub reset
    USB: Fix handoff when BIOS disables host PCI device.
    USB: option: cleanup zte 3g-dongle's pid in option.c
    USB: Don't fail USB3 probe on missing legacy PCI IRQ.
    xhci: Fix oops caused by more USB2 ports than USB3 ports.
    USB: Remove duplicate USB 3.0 hub feature #defines.

    Linus Torvalds
     
  • Intel, radeon, exynos fixes.

    Intel: fixes a few Ivybridge hangs, along with fixing RC6 on SNB (still
    not on, but at least allows for distros to patch it on easily).

    radeon: oops reading some files in debugfs that weren't meant to appear,
    a fix that touches a lot of files, so looks worse than it is, it fixes
    an oops if a GPU reset fails and userspace keeps submitting more data,
    along with a minor BIOS fix for newer boards.

    exynos: a group of fixes for exynos, they've sent me a few more but
    these were all I got through, and its no hw vanilla kernel users see a
    lot off yet.

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    drm/radeon/kms/atom: dpms bios scratch reg updates
    drm/radeon/kms: properly set accel working flag and bailout when false
    drm/radeon: Only create additional ring debugfs files on Cayman or newer.
    drm/exynos: added postclose to release resource.
    drm/exynos: removed exynos_drm_fbdev_recreate function.
    drm/exynos: fixed page flip issue.
    drm/exynos: added possible_clones setup function.
    drm/exynos: removed pageflip_event_list init code when closed.
    drm/exynos: changed priority of mixer layers.
    drm/exynos: Fix typo in exynos_mixer.c
    drm/i915: do not enable RC6p on Sandy Bridge
    drm/i915: gen7: Disable the RHWO optimization as it can cause GPU hangs.
    drm/i915: gen7: work around a system hang on IVB
    drm/i915: gen7: Implement an L3 caching workaround.
    drm/i915: gen7: implement rczunit workaround

    Linus Torvalds
     

22 Feb, 2012

12 commits

  • dpms bits not used on DCE4+

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • If accel is not working many subsystem such as the ib pool might not be
    initialized properly that can lead to segfault inside kernel when cs
    ioctl is call with non working acceleration. To avoid this make sure
    the accel working flag is false when an error in GPU startup happen and
    return EBUSY from cs ioctl if accel is not working.

    Signed-off-by: Jerome Glisse
    Reviewed-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Jerome Glisse
     
  • Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=46274

    Tested with a Cayman card in a Llano system: The additional files are created
    and working for the Cayman card but not created for the CPU's built-in GPU.

    Signed-off-by: Michel Dänzer
    Reviewed-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Michel Dänzer
     
  • …jbarnes/drm-intel into drm-fixes

    * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/drm-intel:
    drm/i915: do not enable RC6p on Sandy Bridge
    drm/i915: gen7: Disable the RHWO optimization as it can cause GPU hangs.
    drm/i915: gen7: work around a system hang on IVB
    drm/i915: gen7: Implement an L3 caching workaround.
    drm/i915: gen7: implement rczunit workaround

    Dave Airlie
     
  • We moved all our pSeries idle loops to the cpu idle framework
    so we really want it to come up by default.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     
  • This provides unified readq()/writeq() helper functions for 32-bit
    drivers.

    For some cases, readq/writeq without atomicity is harmful, and order of
    io access has to be specified explicitly. So in this patch, new two
    header files which contain non-atomic readq/writeq are added.

    - provides non-atomic readq/
    writeq with the order of lower address -> higher address

    - provides non-atomic readq/
    writeq with reversed order

    This allows us to remove some readq()s that were added drivers when the
    default non-atomic ones were removed in commit dbee8a0affd5 ("x86:
    remove 32-bit versions of readq()/writeq()")

    The drivers which need readq/writeq but can do with the non-atomic ones
    must add the line:

    #include /* or hi-lo.h */

    But this will be nop in 64-bit environments, and no other #ifdefs are
    required. So I believe that this patch can solve the problem of
    1. driver-specific readq/writeq
    2. atomicity and order of io access

    This patch is tested with building allyesconfig and allmodconfig as
    ARCH=x86 and ARCH=i386 on top of tip/master.

    Cc: Kashyap Desai
    Cc: Len Brown
    Cc: Ravi Anand
    Cc: Vikas Chaudhary
    Cc: Matthew Garrett
    Cc: Jason Uhlenkott
    Cc: James Bottomley
    Cc: Thomas Gleixner
    Cc: "H. Peter Anvin"
    Cc: Roland Dreier
    Cc: James Bottomley
    Cc: Alan Cox
    Cc: Matthew Wilcox
    Cc: Andrew Morton
    Signed-off-by: Hitoshi Mitake
    Signed-off-by: Linus Torvalds

    Hitoshi Mitake
     
  • Signed-off-by: Bruno Thomsen
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Bruno Thomsen
     
  • This USB-serial cable with mini stereo jack enumerates as:
    Bus 001 Device 004: ID 1a61:3410 Abbott Diabetes Care

    It is a TI3410 inside.

    Signed-off-by: Andrew Lunn
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Andrew Lunn
     
  • This patch (as1521b) fixes the interaction between usb-storage's
    scanning thread and the freezer. The current implementation has a
    race: If the device is unplugged shortly after being plugged in and
    just as a system sleep begins, the scanning thread may get frozen
    before the khubd task. Khubd won't be able to freeze until the
    disconnect processing is complete, and the disconnect processing can't
    proceed until the scanning thread finishes, so the sleep transition
    will fail.

    The implementation in the 3.2 kernel suffers from an additional
    problem. There the scanning thread calls set_freezable_with_signal(),
    and the signals sent by the freezer will mess up the thread's I/O
    delays, which are all interruptible.

    The solution to both problems is the same: Replace the kernel thread
    used for scanning with a delayed-work routine on the system freezable
    work queue. Freezable work queues have the nice property that you can
    cancel a work item even while the work queue is frozen, and no signals
    are needed.

    The 3.2 version of this patch solves the problem in Bugzilla #42730.

    Signed-off-by: Alan Stern
    Acked-by: Seth Forshee
    CC: stable
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     
  • The xHCI 0.96 spec says that HS bulk and control endpoint NAK rate must
    be encoded as an exponent of two number of microframes. The endpoint
    descriptor has the NAK rate encoded in number of microframes. We were
    just copying the value from the endpoint descriptor into the endpoint
    context interval field, which was not correct. This lead to the VIA
    host rejecting the add of a bulk OUT endpoint from any USB 2.0 mass
    storage device.

    The fix is to use the correct encoding. Refactor the code to convert
    number of frames to an exponential number of microframes, and make sure
    we convert the number of microframes in HS bulk and control endpoints to
    an exponent.

    This should be back ported to kernels as old as 2.6.31, that contain the
    commit dfa49c4ad120a784ef1ff0717168aa79f55a483a "USB: xhci - fix math
    in xhci_get_endpoint_interval"

    Signed-off-by: Sarah Sharp
    Tested-by: Felipe Contreras
    Suggested-by: Andiry Xu
    Cc: stable@vger.kernel.org

    Sarah Sharp
     
  • The superspeed device attached to a USB 3.0 hub(such as VIA's)
    doesn't respond the address device command after resume. The
    root cause is the superspeed hub will miss the Hub Depth value
    that is used as an offset into the route string to locate the
    bits it uses to determine the downstream port number after
    reset, and all packets can't be routed to the device attached
    to the superspeed hub.

    Hub driver sends a Set Hub Depth request to the superspeed hub
    except for USB 3.0 root hub when the hub is initialized and
    doesn't send the request again after reset due to the resume
    process. So moving the code that sends the Set Hub Depth request
    to the superspeed hub from hub_configure() to hub_activate()
    is to cover those situations include initialization and reset.

    The patch should be backported to kernels as old as 2.6.39.

    Signed-off-by: Elric Fu
    Signed-off-by: Sarah Sharp
    Acked-by: Alan Stern
    Cc: stable@vger.kernel.org

    Elric Fu
     
  • On some systems with an Intel Panther Point xHCI host controller, the
    BIOS disables the xHCI PCI device during boot, and switches the xHCI
    ports over to EHCI. This allows the BIOS to access USB devices without
    having xHCI support.

    The downside is that the xHCI BIOS handoff mechanism will fail because
    memory mapped I/O is not enabled for the disabled PCI device.
    Jesse Barnes says this is expected behavior. The PCI core will enable
    BARs before quirks run, but it will leave it in an undefined state, and
    it may not have memory mapped I/O enabled.

    Make the generic USB quirk handler call pci_enable_device() to re-enable
    MMIO, and call pci_disable_device() once the host-specific BIOS handoff
    is finished. This will balance the ref counts in the PCI core. When
    the PCI probe function is called, usb_hcd_pci_probe() will call
    pci_enable_device() again.

    This should be back ported to kernels as old as 2.6.31. That was the
    first kernel with xHCI support, and no one has complained about BIOS
    handoffs failing due to memory mapped I/O being disabled on other hosts
    (EHCI, UHCI, or OHCI).

    Signed-off-by: Sarah Sharp
    Acked-by: Oliver Neukum
    Cc: Jesse Barnes
    Cc: stable@vger.kernel.org

    Sarah Sharp
     

21 Feb, 2012

1 commit


19 Feb, 2012

7 commits

  • These are the bug fixes that have accumulated since 3.3-rc3 in arm-soc.
    The majority of them are regression fixes for stuff that broke during
    the merge 3.3 window.

    The notable ones are:

    * The at91 ata drivers both broke because of an earlier cleanup patch that
    some other patches were based on. Jean-Christophe decided to remove
    the legacy at91_ide driver and fix the new-style at91-pata driver while
    keeping the cleanup patch. I almost rejected the patches for being too
    late and too big but in the end decided to accept them because they
    fix a regression.

    * A patch fixing build breakage from the sysdev-to-device conversion
    colliding with other changes touches a number of mach-s3c files.

    * b0654037 "ARM: orion: Fix Orion5x GPIO regression from MPP cleanup"
    is a mechanical change that unfortunately touches a lot of lines
    that should up in the diffstat.

    * tag 'fixes-3.3-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (28 commits)
    ARM: at91: drop ide driver in favor of the pata one
    pata/at91: use newly introduced SMC accessors
    ARM: at91: add accessor to manage SMC
    ARM: at91:rtc/rtc-at91sam9: ioremap register bank
    ARM: at91: USB AT91 gadget registration for module
    ep93xx: fix build of vision_ep93xx.c
    ARM: OMAP2xxx: PM: fix OMAP2xxx-specific UART idle bug in v3.3
    ARM: orion: Fix USB phy for orion5x.
    ARM: orion: Fix Orion5x GPIO regression from MPP cleanup
    ARM: EXYNOS: Add cpu-offset property in gic device tree node
    ARM: EXYNOS: Bring exynos4-dt up to date
    ARM: OMAP3: cm-t35: fix section mismatch warning
    ARM: OMAP2: Fix the OMAP2 only build break seen with 2011+ ARM tool-chains
    ARM: tegra: paz00: fix wrong UART port on mini-pcie plug
    ARM: tegra: paz00: fix wrong SD1 power gpio
    i2c: tegra: Add devexit_p() for remove
    ARM: EXYNOS: Correct M-5MOLS sensor clock frequency on Universal C210 board
    ARM: EXYNOS: Correct framebuffer window size on Nuri board
    ARM: SAMSUNG: Fix missing api-change from subsys_interface change
    ARM: EXYNOS: Fix "warning: initialization from incompatible pointer type"
    ...

    Linus Torvalds
     
  • 1) VETH_INFO_PEER netlink attribute needs to have it's size validated,
    from Thomas Graf.

    2) 'poll' module option of bnx2x driver crashes the machine, just remove
    it. From Michal Schmidt.

    3) ks8851_mll driver reads the irq number from two places, but only
    initializes one of them, oops. Use only one location and fix this
    problem, from Jan Weitzel.

    4) Fix buffer overrun and unicast sterring bugs in mellanox mlx4 driver,
    from Eugenia Emantayev.

    5) Swapped kcalloc() args in RxRPC and mlx4, from Axel Lin.

    6) PHY MDIO device name regression fixes from Florian Fainelli.

    7) If the wake event IRQ line is different from the netdevice one, we
    have to properly route it to the stmmac interrupt handler. From
    Francesco Virlinzi.

    8) Fix rwlock lock initialization ordering bug in mac80211, from
    Mohammed Shafi Shajakhan.

    9) TCP lost_cnt can get out of sync, and in fact go negative, in certain
    circumstances. Fix the way we specify what sequence range to operate
    on in tcp_sacktag_one() to fix this bug. From Neal Cardwell.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (27 commits)
    net/ethernet: ks8851_mll fix irq handling
    veth: Enforce minimum size of VETH_INFO_PEER
    stmmac: update the driver version to Feb 2012 (v2)
    stmmac: move hw init in the probe (v2)
    stmmac: request_irq when use an ext wake irq line (v2)
    stmmac: do not discard frame on dribbling bit assert
    ipheth: Add iPhone 4S
    mlx4: add unicast steering entries to resource_tracker
    mlx4: fix QP tree trashing
    mlx4: fix buffer overrun
    3c59x: shorten timer period for slave devices
    netpoll: netpoll_poll_dev() should access dev->flags
    RxRPC: Fix kcalloc parameters swapped
    bnx2x: remove the 'poll' module option
    tcp: fix tcp_shifted_skb() adjustment of lost_cnt_hint for FACK
    ks8851: Fix NOHZ local_softirq_pending 08 warning
    bnx2x: fix bnx2x_storm_stats_update() on big endian
    ixp4xx-eth: fix PHY name to match MDIO bus name
    octeon: fix PHY name to match MDIO bus name
    fec: fix PHY name to match fixed MDIO bus name
    ...

    Linus Torvalds
     
  • Fixes a bootstrapping issue for some registers when a less commonly used
    method for register cache initialisation is used. Only affects a fairly
    small proportion of users that both don't use explicit register defaults
    and do use the cache.

    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
    regmap: Fix cache defaults initialization from raw cache defaults

    Linus Torvalds
     
  • pinctrl fixes for v3.3

    * tag 'pinctrl-for-torvalds-20120216' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
    pinctrl: restore pin naming

    Linus Torvalds
     
  • Here are a few more fixes for powerpc. Some are regressions, the rest
    is simple/obvious/nasty enough that I deemed it good to go now.

    Here's also step one of deprecating legacy iSeries support: we are
    removing it from the main defconfig.

    Nobody seems to be using it anymore and the code is nasty to maintain,
    (involves horrible hacks in various low level areas of the kernel) so we
    plan to actually rip it out at some point. For now let's just avoid
    building it by default. Stephen will proceed to do the actual removal
    later (probably 3.4 or 3.5).

    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc/perf: power_pmu_start restores incorrect values, breaking frequency events
    powerpc/adb: Use set_current_state()
    powerpc: Disable interrupts early in Program Check
    powerpc: Remove legacy iSeries from ppc64_defconfig
    powerpc/fsl/pci: Fix PCIe fixup regression
    powerpc: Fix kernel log of oops/panic instruction dump

    Linus Torvalds
     
  • One regression fix for SR-IOV on PPC and a couple of misc fixes from
    Yinghai.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci:
    PCI: Fix pci cardbus removal
    PCI: set pci sriov page size before reading SRIOV BAR
    PCI: workaround hard-wired bus number V2

    Linus Torvalds
     
  • 3 radeon fixes, I have some exynos fixes to push later but I'll queue
    them separately once I've looked them over a bit.

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    drm/radeon/kms: fix MSI re-arm on rv370+
    drm/radeon/kms/atom: bios scratch reg handling updates
    drm/radeon/kms: drop lock in return path of radeon_fence_count_emitted.

    Linus Torvalds
     

17 Feb, 2012

1 commit

  • The 3215 driver calls tty_wakeup from irq context while holding the
    device spinlock. If printk is called by any function on the callchain
    starting from tty_wakeup the system deadlocks on the device spinlock.
    Using a tasklet to call tty_wakup solves the problem.

    Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     

16 Feb, 2012

15 commits