29 Nov, 2012

5 commits


11 Nov, 2012

1 commit

  • Pull sparc fixes from David Miller:
    "Several build/bug fixes for sparc, including:

    1) Configuring a mix of static vs. modular sparc64 crypto modules
    didn't work, remove an ill-conceived attempt to only have to build
    the device match table for these drivers once to fix the problem.

    Reported by Meelis Roos.

    2) Make the montgomery multiple/square and mpmul instructions actually
    usable in 32-bit tasks. Essentially this involves providing 32-bit
    userspace with a way to use a 64-bit stack when it needs to.

    3) Our sparc64 atomic backoffs don't yield cpu strands properly on
    Niagara chips. Use pause instruction when available to achieve
    this, otherwise use a benign instruction we know blocks the strand
    for some time.

    4) Wire up kcmp

    5) Fix the build of various drivers by removing the unnecessary
    blocking of OF_GPIO when SPARC.

    6) Fix unintended regression wherein of_address_to_resource stopped
    being provided. Fix from Andreas Larsson.

    7) Fix NULL dereference in leon_handle_ext_irq(), also from Andreas
    Larsson."

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc64: Fix build with mix of modular vs. non-modular crypto drivers.
    sparc: Support atomic64_dec_if_positive properly.
    of/address: sparc: Declare of_address_to_resource() as an extern function for sparc again
    sparc32, leon: Check for existent irq_map entry in leon_handle_ext_irq
    sparc: Add sparc support for platform_get_irq()
    sparc: Allow OF_GPIO on sparc.
    qlogicpti: Fix build warning.
    sparc: Wire up sys_kcmp.
    sparc64: Improvde documentation and readability of atomic backoff code.
    sparc64: Use pause instruction when available.
    sparc64: Fix cpu strand yielding.
    sparc64: Make montmul/montsqr/mpmul usable in 32-bit threads.

    Linus Torvalds
     

07 Nov, 2012

1 commit


31 Oct, 2012

2 commits

  • Pull GPIO fixes from Linus Walleij:
    - Fix a potential bit wrap issue in the Timberdale driver
    - Fix up the buffer allocation size in the 74x164 driver
    - Set the value in direction_output() right in the mvebu driver
    - Return proper error codes for invalid GPIOs
    - Fix an off-mode bug for the OMAP
    - Don't initialize the mask_cach on the mvebu driver

    * tag 'gpio-fixes-v3.7-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
    GPIO: mvebu-gpio: Don't initialize the mask_cache
    gpio/omap: fix off-mode bug: clear debounce settings on free/reset
    gpiolib: Don't return -EPROBE_DEFER to sysfs, or for invalid gpios
    gpio: mvebu: correctly set the value in direction_output()
    gpio-74x164: Fix buffer allocation size
    gpio-timberdale: fix a potential wrapping issue

    Linus Torvalds
     
  • Due to the SMP nature of some of the chips, which have per CPU
    registers, the driver does not use the generic irq_gc_mask_set_bit() &
    irq_gc_mask_clr_bit() functions, which only support a single register.
    The driver has its own implementation of these functions, which can
    pick the correct register depending on the CPU being used. The
    functions do however use the gc->mask_cache value.

    The call to irq_setup_generic_chip() was passing
    IRQ_GC_INIT_MASK_CACHE, which caused the gc->mask_cache to be
    initialized to the contents of some random register. This resulted in
    unexpected interrupts been delivered from random GPIO lines.

    Signed-off-by: Andrew Lunn
    Tested-by: Jamie Lentin
    Acked-by: Thomas Petazzoni
    Tested-by: Michael Walle
    Signed-off-by: Linus Walleij

    Andrew Lunn
     

28 Oct, 2012

1 commit

  • This change was originally titled "gpio/omap: fix off-mode bug: clear debounce
    clock enable mask on free/reset". The title has been updated slightly to
    reflect (what should be) the final fix.

    When a GPIO is freed or shutdown, we need to ensure that any debounce settings
    are cleared and if the GPIO is the only GPIO in the bank that is currently
    using debounce, then disable the debounce clock as well to save power.

    Currently, the debounce settings are not cleared on a GPIO free or shutdown and
    so during a context restore on subsequent off-mode transition, the previous
    debounce values are restored from the shadow copies (bank->context.debounce*)
    leading to mismatch state between driver state and hardware state.

    This was discovered when board code was doing

    gpio_request_one()
    gpio_set_debounce()
    gpio_free()

    which was leaving the GPIO debounce settings in a confused state. If that GPIO
    bank is subsequently used with off-mode enabled, bogus state would be restored,
    leaving GPIO debounce enabled which then prevented the CORE powerdomain from
    transitioning.

    To fix this, introduce a new function called _clear_gpio_debounce() to clear
    any debounce settings when the GPIO is freed or shutdown. If this GPIO is the
    last debounce-enabled GPIO in the bank, the debounce will also be cut.

    Please note that we cannot use _gpio_dbck_disable() to disable the debounce
    clock because this has been specifically created for the gpio suspend path
    and is intended to shutdown the debounce clock while debounce is enabled.

    Special thanks to Kevin Hilman for root causing the bug. This fix is a
    collaborative effort with inputs from Kevin Hilman, Grazvydas Ignotas and
    Santosh Shilimkar.

    Testing:
    - This has been unit tested on an OMAP3430 Beagle board, by requesting a gpio,
    enabling debounce and then freeing the gpio and checking the register
    contents, the saved register context and the debounce clock state.
    - Kevin Hilman tested on 37xx/EVM board which configures GPIO debounce for the
    ads7846 touchscreen in its board file using the above sequence, and so was
    failing off-mode tests in dynamic idle. Verified that off-mode tests are
    passing with this patch.

    V5 changes:
    - Corrected author

    Reported-by: Paul Walmsley
    Cc: Igor Grinberg
    Cc: Grazvydas Ignotas
    Cc: Jon Hunter
    Signed-off-by: Jon Hunter
    Reviewed-by: Kevin Hilman
    Tested-by: Kevin Hilman
    Acked-by: Santosh Shilimkar
    Signed-off-by: Linus Walleij

    Jon Hunter
     

26 Oct, 2012

1 commit


24 Oct, 2012

1 commit

  • The ->direction_output() operation of gpio_chip is supposed to set the
    direction to output but also to set the GPIO to an initial
    value. Unfortunately, this last part was not done until now, causing
    for example the LEDs to not be properly set to their default initial
    value. This patch fixes this by calling the mvebu_gpio_set() function
    from mvebu_gpio_direction_output() before configuring the GPIO as an
    output GPIO.

    Signed-off-by: Thomas Petazzoni
    Signed-off-by: Linus Walleij

    Thomas Petazzoni
     

18 Oct, 2012

1 commit


17 Oct, 2012

1 commit


16 Oct, 2012

1 commit


09 Oct, 2012

1 commit

  • Pull MIPS update from Ralf Baechle:
    "This is the MIPS update for 3.7.

    A fair chunk of them are platform updates to the Cavium Octeon SOC
    (which involves machine generated header files of considerable size),
    Atheros ATH79xx, RMI aka Netlogic aka Broadcom XLP, Broadcom BCM63xx
    platforms.

    Support for the commercial MIPS simulator MIPSsim has been removed as
    MIPS Technologies is shifting away from this product and Qemu is
    offering various more powerful platforms. The generic MIPS code can
    now also probe for no-execute / write-only TLB features implemented
    without the full SmartMIPS extension as permitted by the latest MIPS
    processor architecture. Lots of small changes to generic code."

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (78 commits)
    MIPS: ath79: Fix CPU/DDR frequency calculation for SRIF PLLs
    MIPS: ath79: use correct fractional dividers for {CPU,DDR}_PLL on AR934x
    MIPS: BCM63XX: Properly handle mac address octet overflow
    MIPS: Kconfig: Avoid build errors by hiding USE_OF from the user.
    MIPS: Replace `-' in defconfig filename wth `_' for consistency.
    MIPS: Wire kcmp syscall.
    MIPS: MIPSsim: Remove the MIPSsim platform.
    MIPS: NOTIFY_RESUME is not needed in TIF masks
    MIPS: Merge the identical "return from syscall" per-ABI code
    MIPS: Unobfuscate _TIF..._MASK
    MIPS: Prevent hitting do_notify_resume() with !user_mode(regs).
    MIPS: Replace 'kernel_uses_smartmips_rixi' with 'cpu_has_rixi'.
    MIPS: Add base architecture support for RI and XI.
    MIPS: Optimise TLB handlers for MIPS32/64 R2 cores.
    MIPS: uasm: Add INS and EXT instructions.
    MIPS: Avoid pipeline stalls on some MIPS32R2 cores.
    MIPS: Make VPE count to be one-based.
    MIPS: Add new end of interrupt functionality for GIC.
    MIPS: Add EIC support for GIC.
    MIPS: Code clean-ups for the GIC.
    ...

    Linus Torvalds
     

07 Oct, 2012

2 commits

  • Pull late ARM soc platform updates from Olof Johansson:
    "This branch contains updates to OMAP and Marvell platforms (kirkwood,
    dove, mvebu) that came in after we had done the big multiplatform
    merges, so they were kept separate from the rest, and not separated
    into the traditional topics of cleanup/driver/platform features.

    For OMAP, the updates are:
    - Runtime PM conversions for the GPMC and RNG IP blocks
    - Preparation patches for the OMAP common clock framework conversion
    - clkdev alias additions required by other drivers
    - Performance Monitoring Unit (PMU) support for OMAP2, 3, and
    non-4430 OMAP4
    - OMAP hwmod code and data improvements
    - Preparation patches for the IOMMU runtime PM conversion
    - Preparation patches for OMAP4 full-chip retention support

    For Kirkwood/Dove/mvebu:
    - New driver for "address decoder controller" for mvebu, which is a
    piece of hardware that configures addressable devices and
    peripherals. First user is the boot rom aperture on armada XP
    since it is needed for SMP support.
    - New device tree bindings for peripherals such as gpio-fan, iconnect
    nand, mv_cesa and the above address decoder controller.
    - Some defconfig updates, mostly to enable new DT boards and a few
    drivers.
    - New drivers using the pincontrol subsystem for dove, kirkwood and
    mvebu
    - New clean gpio driver for mvebu"

    * tag 'soc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (98 commits)
    ARM: mvebu: fix build breaks from multi-platform conversion
    ARM: OMAP4460/4470: PMU: Enable PMU for OMAP4460/70
    ARM: OMAP2+: PMU: Add runtime PM support
    ARM: OMAP4430: PMU: prepare to create PMU device via HWMOD
    ARM: OMAP2+: PMU: Convert OMAP2/3 devices to use HWMOD
    ARM: OMAP3: hwmod data: Add debugss HWMOD data
    ARM: OMAP2+: clockdomain/hwmod: add workaround for EMU clockdomain idle problems
    ARM: OMAP: Add a timer attribute for timers that can interrupt the DSP
    hwrng: OMAP: remove SoC restrictions from driver registration
    ARM: OMAP: split OMAP1, OMAP2+ RNG device registration
    hwrng: OMAP: convert to use runtime PM
    hwrng: OMAP: store per-device data in per-device variables, not file statics
    ARM: OMAP2xxx: hwmod/CM: add RNG integration data
    ARM: OMAP2+: gpmc: minimal driver support
    ARM: OMAP2+: gpmc: Adapt to HWMOD
    ARM: OMAP2/3: hwmod data: add gpmc
    ARM: OMAP4: hwmod data: add mmu hwmod for ipu and dsp
    ARM: OMAP3: hwmod data: add mmu data for iva and isp
    ARM: OMAP: iommu: fix including iommu.h without IOMMU_API selected
    ARM: OMAP4: hwmod data: add missing HWMOD_NO_IDLEST flags to some PRCM IP blocks
    ...

    Linus Torvalds
     
  • Pull media updates from Mauro Carvalho Chehab:
    "The first part of the media updates for Kernel 3.7.

    This series contain:

    - A major tree renaming patch series: now, drivers are organized
    internally by their used bus, instead of by V4L2 and/or DVB API,
    providing a cleaner driver location for hybrid drivers that
    implement both APIs, and allowing to cleanup the Kconfig items and
    make them more intuitive for the end user;

    - Media Kernel developers are typically very lazy with their duties
    of keeping the MAINTAINERS entries for their drivers updated. As
    now the tree is more organized, we're doing an effort to add/update
    those entries for the drivers that aren't currently orphan;

    - Several DVB USB drivers got moved to a new DVB USB v2 core; the new
    core fixes several bugs (as the existing one that got bitroted).
    Now, suspend/resume finally started to work fine (at least with
    some devices - we should expect more work with regards to it);

    - added multistream support for DVB-T2, and unified the API for
    DVB-S2 and ISDB-S. Backward binary support is preserved;

    - as usual, a few new drivers, some V4L2 core improvements and lots
    of drivers improvements and fixes.

    There are some points to notice on this series:

    1) you should expect a trivial merge conflict on your tree, with the
    removal of Documentation/feature-removal-schedule.txt: this series
    would be adding two additional entries there. I opted to not
    rebase it due to this recent change;

    2) With regards to the PCTV 520e udev-related breakage, I opted to
    fix it in a way that the patches can be backported to 3.5 even
    without your firmware fix patch. This way, Greg doesn't need to
    rush backporting your patch (as there are still the firmware cache
    and firmware path customization issues to be addressed there).

    I'll send later a patch (likely after the end of the merge window)
    reverting the rest of the DRX-K async firmware request, fully
    restoring its original behaviour to allow media drivers to
    initialize everything serialized as before for 3.7 and upper.

    3) I'm planning to work on this weekend to test the DMABUF patches
    for V4L2. The patches are on my queue for several Kernel cycles,
    but, up to now, there is/was no way to test the series locally.

    I have some concerns about this particular changeset with regards
    to security issues, and with regards to the replacement of the old
    VIDIOC_OVERLAY ioctl's that is broken on modern systems, due to
    GPU drivers change. The Overlay API allows direct PCI2PCI
    transfers from a media capture card into the GPU framebuffer, but
    its API is crappy. Also, the only existing X11 driver that
    implements it requires a XV extension that is not available
    anymore on modern drivers. The DMABUF can do the same thing, but
    with it is promising to be a properly-designed API. If I can
    successfully test this series and be happy with it, I should be
    asking you to pull them next week."

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (717 commits)
    em28xx: regression fix: use DRX-K sync firmware requests on em28xx
    drxk: allow loading firmware synchrousnously
    em28xx: Make all em28xx extensions to be initialized asynchronously
    [media] tda18271: properly report read errors in tda18271_get_id
    [media] tda18271: delay IR & RF calibration until init() if delay_cal is set
    [media] MAINTAINERS: add Michael Krufky as tda827x maintainer
    [media] MAINTAINERS: add Michael Krufky as tda8290 maintainer
    [media] MAINTAINERS: add Michael Krufky as cxusb maintainer
    [media] MAINTAINERS: add Michael Krufky as lg2160 maintainer
    [media] MAINTAINERS: add Michael Krufky as lgdt3305 maintainer
    [media] MAINTAINERS: add Michael Krufky as mxl111sf maintainer
    [media] MAINTAINERS: add Michael Krufky as mxl5007t maintainer
    [media] MAINTAINERS: add Michael Krufky as tda18271 maintainer
    [media] s5p-tv: Report only multi-plane capabilities in vidioc_querycap
    [media] s5p-mfc: Fix misplaced return statement in s5p_mfc_suspend()
    [media] exynos-gsc: Add missing static storage class specifiers
    [media] exynos-gsc: Remove header file inclusion
    [media] s5p-fimc: Fix incorrect condition in fimc_lite_reqbufs()
    [media] s5p-tv: Fix potential NULL pointer dereference error
    [media] s5k6aa: Fix possible NULL pointer dereference
    ...

    Linus Torvalds
     

05 Oct, 2012

1 commit

  • Pull MFD changes from Samuel Ortiz:
    "MFD bits for the 3.7 merge window.

    As usual we have a few new drivers:

    - TI LP8788
    - TI OMAP USB TLL
    - Maxim MAX8907
    - SMSC ECE1099
    - Dialog Semiconductor DA9055
    - A simpler syscon driver that allow us to get rid of the anatop one.

    Drivers are also gradually getting Device Tree and IRQ domain support.

    The following drivers got DT support:
    - palmas, 88pm860x, tc3589x and twl4030-audio

    And those ones now use the IRQ domain APIs:
    - 88pm860x, tc3589x, db8500_prcmu

    Also some other interesting changes:
    - Intel's ICH LPC now supports Lynx Point
    - TI's twl4030-audio added a GPO child
    - tps6527 enabled its backlight subdevice
    - The twl6030 pwm driver moved to the new PWM subsystem

    And finally a bunch of cleanup and casual fixes for mc13xxx, 88pm860x,
    palmas, ab8500, wm8994, wm5110, max8907 and the tps65xxx family."

    Fix up various annoying conflicts: the DT and IRQ domain support came in
    twice and was already in 3.6. And then it was apparently rebased.

    Guys, DON'T REBASE!

    * tag 'mfd-3.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (89 commits)
    ARM: dts: Enable 88pm860x pmic
    mfd: 88pm860x: Move gpadc init into touch
    mfd: 88pm860x: Device tree support
    mfd: 88pm860x: Use irqdomain
    mfd: smsc: Add support for smsc gpio io/keypad driver
    backlight: tps65217_bl: Add missing platform_set_drvdata in tps65217_bl_probe
    mfd: DA9055 core driver
    mfd: tps65910: Add alarm interrupt of TPS65910 RTC to mfd device list
    mfd: wm5110: Add register patches for revision B
    mfd: wm5110: Disable control interface error report for WM5110 rev B
    mfd: max8907: Remove regulator-compatible from DT docs
    backlight: Add TPS65217 WLED driver
    mfd: Add backlight as subdevice to the tps65217
    mfd: Provide the PRCMU with its own IRQ domain
    mfd: Fix max8907 sparse warning
    mfd: Add lp8788 mfd driver
    mfd: dbx500: Provide a more accurate smp_twd clock
    mfd: rc5t583: Fix warning messages
    regulator: palmas: Add DT support
    mfd: palmas: Change regulator defns to better suite DT
    ...

    Linus Torvalds
     

03 Oct, 2012

1 commit

  • Pull GPIO changes from Linus Walleij:
    "So this is the LW GPIO patch stack for v3.7:
    - refactoring from Thierry Redding at Arnd Bergmann's request to use
    the seq_file iterator interface in gpiolib.
    - A new driver for Avionic Design's N-bit GPIO expander.
    - Two instances of mutexes replaced by spinlocks from Axel Lin to
    code that is supposed to be fastpath compliant.
    - IRQ demuxer and gpio_to_irq() support for pcf857x by Kuninori
    Morimoto.
    - Dynamic GPIO numbers, device tree support, daisy chaining and some
    other fixes for the 74x164 driver by Maxime Ripard.
    - IRQ domain and device tree support for the tc3589x driver by Lee
    Jones.
    - Some conversion to use managed resources devm_* code.
    - Some instances of clk_prepare() or clk_prepare_enable() added to
    support the new, stricter common clock framework.
    - Some for_each_set_bit() simplifications.
    - Then a lot of fixes as we fixed up all of the above tripping over
    our own shoelaces and that kind of thing."

    * tag 'gpio-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (34 commits)
    gpio: pcf857x: select IRQ_DOMAIN
    gpio: Document device_node's det_debounce
    gpio-lpc32xx: Add GPI_28
    gpio: adnp: dt: Reference generic interrupt binding
    gpio: Add Avionic Design N-bit GPIO expander support
    gpio: pxa: using for_each_set_bit to simplify the code
    gpio_msm: using for_each_set_bit to simplify the code
    gpio: Enable the tc3298x GPIO expander driver for Device Tree
    gpio: Provide the tc3589x GPIO expander driver with an IRQ domain
    ARM: shmobile: kzm9g: use gpio-keys instead of gpio-keys-polled
    gpio: pcf857x: fixup smatch WARNING
    gpio: 74x164: Add support for the daisy-chaining
    gpio: 74x164: dts: Add documentation for the dt binding
    dt: Fix incorrect reference in gpio-led documentation
    gpio: 74x164: Add device tree support
    gpio: 74x164: Use dynamic gpio number assignment if no pdata is present
    gpio: 74x164: Use devm_kzalloc
    gpio: 74x164: Use module_spi_driver boiler plate function
    gpio: sx150x: Use irq_data_get_irq_chip_data() at appropriate places
    gpio: em: Use irq_data_get_irq_chip_data() at appropriate places
    ...

    Linus Torvalds
     

02 Oct, 2012

6 commits

  • Pull ARM soc driver specific changes from Olof Johansson:
    - A long-coming conversion of various platforms to a common LED
    infrastructure
    - AT91 is moved over to use the newer MCI driver for MMC
    - Pincontrol conversions for samsung platforms
    - DT bindings for gscaler on samsung
    - i2c driver fixes for tegra, acked by i2c maintainer

    Fix up conflicts as per Olof.

    * tag 'drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (48 commits)
    drivers: bus: omap_l3: use resources instead of hardcoded irqs
    pinctrl: exynos: Fix wakeup IRQ domain registration check
    pinctrl: samsung: Uninline samsung_pinctrl_get_soc_data
    pinctrl: exynos: Correct the detection of wakeup-eint node
    pinctrl: exynos: Mark exynos_irq_demux_eint as inline
    pinctrl: exynos: Handle only unmasked wakeup interrupts
    pinctrl: exynos: Fix typos in gpio/wkup _irq_mask
    pinctrl: exynos: Set pin function to EINT in irq_set_type of GPIO EINTa
    drivers: bus: Move the OMAP interconnect driver to drivers/bus/
    i2c: tegra: dynamically control fast clk
    i2c: tegra: I2_M_NOSTART functionality not supported in Tegra20
    ARM: tegra: clock: remove unused clock entry for i2c
    ARM: tegra: clock: add connection name in i2c clock entry
    i2c: tegra: pass proper name for getting clock
    ARM: tegra: clock: add i2c fast clock entry in clock table
    ARM: EXYNOS: Adds G-Scaler device from Device Tree
    ARM: EXYNOS: Add clock support for G-Scaler
    ARM: EXYNOS: Enable pinctrl driver support for EXYNOS4 device tree enabled platform
    ARM: dts: Add pinctrl node entries for SAMSUNG EXYNOS4210 SoC
    ARM: EXYNOS: skip wakeup interrupt setup if pinctrl driver is used
    ...

    Linus Torvalds
     
  • Pull ARM soc-specific updates, take 2 from Olof Johansson:
    "This branch converts the MXS Freescale platform to use irqdomains and
    sparse IRQ, in preparation for DT probing and multiplatform kernels."

    * tag 'soc2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: mxs: remove mach/irqs.h
    ARM: mxs: select SPARSE_IRQ
    ARM: mxs: adopt irq_domain support for icoll driver
    ARM: mxs: select MULTI_IRQ_HANDLER
    ARM: mxs: retrieve timer irq from device tree
    gpio/mxs: adopt irq_domain support for mxs gpio driver

    Linus Torvalds
     
  • Pull ARM soc device tree updates from Olof Johansson:
    "Device tree conversion and enablement branch. Mostly a bunch of new
    bindings and setup for various platforms, but the Via/Winchip VT8500
    platform is also converted over from being 100% legacy to now use
    device tree for probing. More of that will come for 3.8."

    Trivial conflicts due to removal of vt8500 files, and one documentation
    file that was added with slightly different contents both here and in
    the USb tree.

    * tag 'dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (212 commits)
    arm: vt8500: Fixup for missing gpio.h
    ARM: LPC32xx: LED fix in PHY3250 DTS file
    ARM: dt: mmp-dma: add binding file
    arm: vt8500: Update arch-vt8500 to devicetree support.
    arm: vt8500: gpio: Devicetree support for arch-vt8500
    arm: vt8500: doc: Add device tree bindings for arch-vt8500 devices
    arm: vt8500: clk: Add Common Clock Framework support
    video: vt8500: Add devicetree support for vt8500-fb and wm8505-fb
    serial: vt8500: Add devicetree support for vt8500-serial
    rtc: vt8500: Add devicetree support for vt8500-rtc
    arm: vt8500: Add device tree files for VIA/Wondermedia SoC's
    ARM: tegra: Add Avionic Design Tamonten Evaluation Carrier support
    ARM: tegra: Add Avionic Design Medcom-Wide support
    ARM: tegra: Add Avionic Design Plutux support
    ARM: tegra: Add Avionic Design Tamonten support
    ARM: tegra: dts: Add pwm label
    ARM: ux500: Fix SSP register address format
    ARM: ux500: Apply tc3589x's GPIO/IRQ properties to HREF's DT
    ARM: ux500: Remove redundant #gpio-cell properties from Snowball DT
    ARM: ux500: Add all encompassing sound node to the HREF Device Tree
    ...

    Linus Torvalds
     
  • Pull ARM soc general cleanups from Olof Johansson:
    "This is a large branch that contains a handful of different cleanups:

    - Fixing up the I/O space remapping on PCI on ARM. This is a series
    from Rob Herring that restructures how all pci devices allocate I/O
    space, and it's part of the work to allow multiplatform kernels.
    - A number of cleanup series for OMAP, moving and removing some
    headers, sparse irq rework and in general preparation for
    multiplatform.
    - Final removal of all non-DT boards for Tegra, it is now
    device-tree-only!
    - Removal of a stale platform, nxp4008. It's an old mobile chipset
    that is no longer in use, and was very likely never really used
    with a mainline kernel. We have not been able to find anyone
    interested in keeping it around in the kernel.
    - Removal of the legacy dmaengine driver on tegra

    + A handful of other things that I haven't described above."

    Fix up some conflicts with the staging tree (and because nxp4008 was
    removed)

    * tag 'cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (184 commits)
    ARM: OMAP2+: serial: Change MAX_HSUART_PORTS to 6
    ARM: OMAP4: twl-common: Support for additional devices on i2c1 bus
    ARM: mmp: using for_each_set_bit to simplify the code
    ARM: tegra: harmony: fix ldo7 regulator-name
    ARM: OMAP2+: Make omap4-keypad.h local
    ARM: OMAP2+: Make l4_3xxx.h local
    ARM: OMAP2+: Make l4_2xxx.h local
    ARM: OMAP2+: Make l3_3xxx.h local
    ARM: OMAP2+: Make l3_2xxx.h local
    ARM: OMAP1: Move irda.h from plat to mach
    ARM: OMAP2+: Make hdq1w.h local
    ARM: OMAP2+: Make gpmc-smsc911x.h local
    ARM: OMAP2+: Make gpmc-smc91x.h local
    ARM: OMAP1: Move flash.h from plat to mach
    ARM: OMAP2+: Make debug-devices.h local
    ARM: OMAP1: Move board-voiceblue.h from plat to mach
    ARM: OMAP1: Move board-sx1.h from plat to mach
    ARM: OMAP2+: Make omap-wakeupgen.h local
    ARM: OMAP2+: Make omap-secure.h local
    ARM: OMAP2+: Make ctrl_module_wkup_44xx.h local
    ...

    Linus Torvalds
     
  • Pull non-critical ARM soc bug fixes from Olof Johansson:
    "These were submitted as bug fixes before v3.6 but not considered
    important enough to be included in it. Some of them cross over to
    cleanup territory as well, and aren't strictly bugfixes."

    * tag 'fixes-non-critical' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (48 commits)
    ARM: nomadik: remove NAND_NO_READRDY use
    ARM: pxa: fix return value check in pxa2xx_drv_pcmcia_probe()
    ARM: SAMSUNG: Add missing variable declaration in s3c64xx_spi1_set_platdata()
    ARM: S3C24XX: removes unnecessary semicolon
    ARM: S3C24xx: delete double assignment
    ARM: EXYNOS: fix address for EXYNOS4 MDMA1
    ARM: EXYNOS: fixed SYSMMU setup definition to mate parameter name
    ARM: ep93xx: Move ts72xx.h out of include/mach
    ARM: ep93xx: use __iomem pointers for MMIO
    ARM: msm: Fix early debug uart mapping on some memory configs
    ARM: msm: io: Change the default static iomappings to be shared
    ARM: msm: io: Remove 7x30 iomap region from 7x00
    ARM: msm: Remove call to missing FPGA init on 8660
    ARM: OMAP4: wakeupgen: remove duplicate AUXCOREBOOT* read/write
    ARM: OMAP4: wakeupgen: Fix the typo in AUXCOREBOOT register save
    dma: tegra: make data used as *of_device_id.data const
    can: mpc5xxx_can: make data used as *of_device_id.data const
    macintosh/mediabay: make data used as *of_device_id.data const
    i2c/mpc: make data used as *of_device_id.data const
    mfd/da9052: make i2c_device_id array const
    ...

    Linus Torvalds
     
  • Linux 3.6

    * tag 'v3.6': (562 commits)
    Linux 3.6
    vfs: dcache: fix deadlock in tree traversal
    mtdchar: fix offset overflow detection
    thp: avoid VM_BUG_ON page_count(page) false positives in __collapse_huge_page_copy
    iommu/amd: Fix wrong assumption in iommu-group specific code
    netdev: octeon: fix return value check in octeon_mgmt_init_phy()
    ALSA: snd-usb: fix next_packet_size calls for pause case
    inetpeer: fix token initialization
    qlcnic: Fix scheduling while atomic bug
    bnx2: Clean up remaining iounmap
    trivial select_parent documentation fix
    net: phy: smsc: Implement PHY config_init for LAN87xx
    smsc75xx: fix resume after device reset
    um: Preinclude include/linux/kern_levels.h
    um: Fix IPC on um
    netdev: pasemi: fix return value check in pasemi_mac_phy_init()
    team: fix return value check
    l2tp: fix return value check
    USB: Fix race condition when removing host controllers
    USB: ohci-at91: fix null pointer in ohci_hcd_at91_overcurrent_irq
    ...

    Mauro Carvalho Chehab
     

01 Oct, 2012

1 commit

  • Patch 6e20a0a4 "gpio: pcf857x: enable gpio_to_irq() support"
    added IRQ domain support to the pcf857x driver, but some configurations
    (e.g. davinci_all_defconfig) don't already enable CONFIG_IRQ_DOMAIN.

    Always selecting it from the Kconfig in this case is what other
    such drivers do as well, and avoids these build errors:

    Without this patch, building davinci_all_defconfig results in:

    drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_to_irq':
    drivers/gpio/gpio-pcf857x.c:167:2: error: implicit declaration of function 'irq_create_mapping'
    drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_irq_demux_work':
    drivers/gpio/gpio-pcf857x.c:183:3: error: implicit declaration of function 'irq_find_mapping'
    drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_irq_domain_cleanup':
    drivers/gpio/gpio-pcf857x.c:218:3: error: implicit declaration of function 'irq_domain_remove'
    drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_irq_domain_init':
    drivers/gpio/gpio-pcf857x.c:230:2: error: implicit declaration of function 'irq_domain_add_linear'

    Signed-off-by: Arnd Bergmann
    Cc: Kuninori Morimoto
    Cc: Linus Walleij
    Signed-off-by: Linus Walleij

    Arnd Bergmann
     

30 Sep, 2012

1 commit

  • This patch adds the missing gpi28 to the list of GPIOs in the GPI P3 "chip".

    NOTE: This patch depends on incrementing LPC32XX_GPI_P3_MAX. When applied
    without the respective mach-lpc32xx patch (merged via arm-soc.git), gcc will
    give a warning about "excess elements in array initializer" but this doesn't
    harm.

    Signed-off-by: Roland Stigge
    Signed-off-by: Linus Walleij

    Roland Stigge
     

25 Sep, 2012

1 commit


24 Sep, 2012

1 commit

  • From Tony Prisk:

    Update arch-vt8500 and drivers to device tree and
    remove existing non-dt code.

    * tag 'vt8500-for-next' of git://git.code.sf.net/p/linuxwmt/code:
    arm: vt8500: Update arch-vt8500 to devicetree support.
    arm: vt8500: gpio: Devicetree support for arch-vt8500
    arm: vt8500: doc: Add device tree bindings for arch-vt8500 devices
    arm: vt8500: clk: Add Common Clock Framework support
    video: vt8500: Add devicetree support for vt8500-fb and wm8505-fb
    serial: vt8500: Add devicetree support for vt8500-serial
    rtc: vt8500: Add devicetree support for vt8500-rtc
    arm: vt8500: Add device tree files for VIA/Wondermedia SoC's

    Resolved add/change conflict in drivers/clk/Makefile.

    Signed-off-by: Olof Johansson

    Olof Johansson
     

23 Sep, 2012

1 commit

  • From Jason Cooper:

    New drivers:
    - pinctrl (dove, kirkwood, mvebu)
    - gpio (mvebu)

    * 'kirkwood/drivers' of git://git.infradead.org/users/jcooper/linux:
    arm: mvebu: add gpio support in defconfig
    arm: mvebu: add DT information for GPIO banks on Armada 370 and XP
    arm: mvebu: use GPIO support now that a driver is available
    Documentation: add description of DT binding for the gpio-mvebu driver
    gpio: introduce gpio-mvebu driver for Marvell SoCs
    arm: mvebu: select the pinctrl drivers for Armada 370 and Armada XP platforms
    arm: mvebu: split Kconfig options for Armada 370 and XP
    ARM: mvebu: adjust Armada XP evaluation board DTS
    ARM: mvebu: Add pinctrl support to Armada 370 SoC
    ARM: mvebu: Add pinctrl support to Armada XP SoCs
    pinctrl: mvebu: add pinctrl driver for Armada XP
    pinctrl: mvebu: add pinctrl driver for Armada 370
    pinctrl: mvebu: kirkwood pinctrl driver
    pinctrl: mvebu: dove pinctrl driver
    pinctrl: mvebu: pinctrl driver core

    Signed-off-by: Olof Johansson

    Olof Johansson
     

22 Sep, 2012

1 commit

  • This driver aims at replacing the arch/arm/plat-orion/gpio.c driver,
    and is designed to be compatible with all Marvell EBU SoCs: Orion,
    Kirkwood, Dove, Armada 370/XP and Discovery.

    It has been successfully tested on Dove and Armada XP at the moment.

    Compared to the plat-orion driver, this new driver has the following
    added benefits:

    *) Support for Armada 370 and Armada XP
    *) It is integrated with the mvebu pinctrl driver so that GPIO pins
    are properly muxed, and the GPIO driver knows which GPIO pins are
    output-only or input-only.
    *) Properly placed in drivers/gpio
    *) More extensible mechanism to support platform differences. The
    plat-orion driver uses a simple mask-offset DT property, which
    works fine for Discovery MV78200 but not for Armada XP. The new
    driver uses different compatible strings to identify the different
    variants of the GPIO controllers.

    Signed-off-by: Thomas Petazzoni
    Cc: Grant Likely
    Cc: Linus Walleij
    Cc: Andrew Lunn
    Cc: Jason Cooper
    Cc: Gregory Clement
    Tested-by: Sebastian Hesselbarth
    Reviewed-by: Linus Walleij
    Tested-by: Andrew Lunn
    Acked-by: Arnd Bergmann
    Signed-off-by: Jason Cooper

    Thomas Petazzoni
     

21 Sep, 2012

5 commits

  • Converted the existing arch-vt8500 gpio to a platform_device.
    Added support for WM8505 and WM8650 GPIO controllers.
    Replaced existing readl/writel calls with _relaxed variants.
    Replaced existing unsigned variables with u32 to match register size.

    Signed-off-by: Tony Prisk
    Reviewed-by: Linus Walleij

    Tony Prisk
     
  • * next/dt: (182 commits)
    ARM: tegra: Add Avionic Design Tamonten Evaluation Carrier support
    ARM: tegra: Add Avionic Design Medcom-Wide support
    ARM: tegra: Add Avionic Design Plutux support
    ARM: tegra: Add Avionic Design Tamonten support
    ARM: tegra: dts: Add pwm label
    ARM: dt: tegra: whistler: configure power off
    ARM: mxs: m28evk: Disable OCOTP OUI loading
    ARM: imx6q: use pll2_pfd2_396m as the enfc_sel's parent
    ARM: dts: imx6q-sabrelite: add usbotg pinctrl support
    ARM: dts: imx23-olinuxino: Add USB host support
    ARM: dts: imx6q-sabrelite: add usbmisc device
    ARM: dts: mx23: Add USB resources
    ARM: dts: mxs: Add ethernetX to macX aliases
    ARM: msm: Remove non-DT targets from 8960
    ARM: msm: Add DT support for 8960
    ARM: msm: Move io mapping prototypes to common.h
    ARM: msm: Rename board-msm8x60 to signify its DT only status
    ARM: msm: Make 8660 a DT only target
    ARM: msm: Move 8660 to DT timer
    ARM: msm: Add DT support to msm_timer
    ...

    Olof Johansson
     
  • …t/kgene/linux-samsung into next/dt

    From Kukjin Kim:

    Since there are many changes for gpio-samsung in my tree, this has been
    included in my tree with Linus' agreement.

    * 'next/gpio-samsung' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    gpio: samsung: add devicetree init for s3c24xx arches

    Olof Johansson
     
  • From Kukjin Kim:

    Here, there are cleanup patches for Samsung v3.7 and most of them are
    related to cleanup Samsung specific gpio API.

    * samsung/cleanup:
    gpio: samsung: Update documentation
    ARM: S3C24XX: Use module_platform_driver macro in mach-osiris-dvs.c
    ARM: S3C24XX: Use module_platform_driver macro in h1940-bluetooth.c
    gpio-samsung: Remove now unused s3c2410_gpio* API
    ARM: S3C24XX: Remove obsolete GPIO API declarations
    ARM: S3C24XX: Convert users of s3c2410_gpio_setpin to gpiolib API
    ARM: EXYNOS: cleanup unused code related to GPS

    Olof Johansson
     
  • …kernel/git/tmlind/linux-omap into next/dt

    Device tree related changes for omaps.

    Note that this branch is based on omap-cleanup-sparseirq-for-v3.7
    to avoid merge conflicts with the sparseirq changes for gpio-twl4030
    driver.

    * tag 'omap-devel-dt-merged-for-v3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    arm/dts: Mux uart pins for omap4-sdp
    ARM: OMAP2+: select PINCTRL in Kconfig
    arm/dts: Add pinctrl driver entries for omap2/3/4
    arm/dts: Add omap36xx.dtsi file and rename omap3-beagle to omap3-beagle-xm
    ARM: dts: omap3-overo: Add support for the blue LED
    Documentation: dt: Update the OMAP documentation with Overo/Toby
    ARM: dts: OMAP3: Add support for Gumstix Overo with Tobi expansion board
    ARM: dts: OMAP4: Add reg and interrupts for every nodes
    ARM: dts: AM33XX: Specify reg and interrupt property for all nodes
    ARM: dts: AM33XX: Convert all hex numbers to lower-case
    ARM: dts: omap3-beagle: Enable audio support
    ARM: dts: omap5: Add McPDM and DMIC section to the dtsi file
    ARM: dts: omap5: Add McBSP entries
    ARM: dts: omap4: Add reg-names for McPDM and DMIC
    ARM: dts: omap4: Add McBSP entries
    ARM: dts: omap3: Add McBSP entries
    ARM: dts: omap2420-h4: Include omap2420.dtsi file instead the common omap2
    ARM: dts: omap2: Add McBSP entries for OMAP2420 and OMAP2430 SoC
    ARM: dts: omap3-beagle: Add heartbeat and mmc LEDs support
    ARM: dts: omap3: Add gpio-twl4030 properties for BeagleBoard and omap3-EVM
    ...

    Olof Johansson
     

19 Sep, 2012

3 commits

  • TWL6040 provides GPO lines to be used for controlling external devices.The number
    of lines different between versions: twl6040 have 3 GPO while TWL6041 have 1.

    Signed-off-by: Sergio Aguirre
    Signed-off-by: Peter Ujfalusi
    Acked-by: Linus Walleij
    Signed-off-by: Samuel Ortiz

    Peter Ujfalusi
     
  • This commit adds a driver for the Avionic Design N-bit GPIO expander.
    The expander provides a variable number of GPIO pins with interrupt
    support.

    Changes in v2:
    - allow building the driver as a module
    - assign of_node unconditionally
    - use linear mapping IRQ domain
    - properly cleanup IRQ domain
    - add OF device table and annotate device tables
    - emulate rising and falling edge triggers
    - increase #gpio-cells to 2
    - drop support for !OF
    - use IS_ENABLED to conditionalize DEBUG_FS code

    Changes in v3:
    - make IRQ support runtime configurable (interrupt-controller property)
    - drop interrupt-controller and #interrupt-cells from DT binding
    - add inline to_adnp() function to wrap container_of() macro
    - consistently use adnp as name for struct adnp variables
    - remove irq_mask_cur and rename irq_mask to irq_enable
    - fix a subtle deadlock in adnp_gpio_direction_output()
    - remove dynamic allocations from debugfs code
    - rename regs to num_regs to avoid confusion
    - annotate non-trivial code with comments
    - don't acquire mutex in adnp_gpio_get()
    - assume NO_IRQ == 0

    Cc: Grant Likely
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: Linus Walleij
    Cc: linux-kernel@vger.kernel.org
    Acked-by: Rob Herring
    Signed-off-by: Thierry Reding
    Signed-off-by: Linus Walleij

    Thierry Reding
     
  • Using for_each_set_bit() to simplify the code.

    spatch with a semantic match is used to found this.
    (http://coccinelle.lip6.fr/)

    Signed-off-by: Wei Yongjun
    Acked-by: Haojian Zhuang
    Acked-by: Eric Miao
    Signed-off-by: Linus Walleij

    Wei Yongjun