17 Jan, 2015

1 commit

  • The arm-cci driver completes the probe sequence even if the cci node is
    marked as disabled. Add a check in the driver to honour the cci status
    in the device tree.

    Signed-off-by: Abhilash Kesavan
    Acked-by: Sudeep Holla
    Acked-by: Nicolas Pitre
    Tested-by: Sudeep Holla
    Tested-by: Kevin Hilman
    Signed-off-by: Olof Johansson

    Abhilash Kesavan
     

15 Dec, 2014

1 commit

  • Pull driver core update from Greg KH:
    "Here's the set of driver core patches for 3.19-rc1.

    They are dominated by the removal of the .owner field in platform
    drivers. They touch a lot of files, but they are "simple" changes,
    just removing a line in a structure.

    Other than that, a few minor driver core and debugfs changes. There
    are some ath9k patches coming in through this tree that have been
    acked by the wireless maintainers as they relied on the debugfs
    changes.

    Everything has been in linux-next for a while"

    * tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
    Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
    fs: debugfs: add forward declaration for struct device type
    firmware class: Deletion of an unnecessary check before the function call "vunmap"
    firmware loader: fix hung task warning dump
    devcoredump: provide a one-way disable function
    device: Add dev__once variants
    ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
    ath: use seq_file api for ath9k debugfs files
    debugfs: add helper function to create device related seq_file
    drivers/base: cacheinfo: remove noisy error boot message
    Revert "core: platform: add warning if driver has no owner"
    drivers: base: support cpu cache information interface to userspace via sysfs
    drivers: base: add cpu_device_create to support per-cpu devices
    topology: replace custom attribute macros with standard DEVICE_ATTR*
    cpumask: factor out show_cpumap into separate helper function
    driver core: Fix unbalanced device reference in drivers_probe
    driver core: fix race with userland in device_add()
    sysfs/kernfs: make read requests on pre-alloc files use the buffer.
    sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
    fs: sysfs: return EGBIG on write if offset is larger than file size
    ...

    Linus Torvalds
     

10 Dec, 2014

2 commits

  • Pull ARM SoC driver updates from Arnd Bergmann:
    "These are changes for drivers that are intimately tied to some SoC and
    for some reason could not get merged through the respective subsystem
    maintainer tree.

    The largest single change here this time around is the Tegra
    iommu/memory controller driver, which gets updated to the new iommu DT
    binding. More drivers like this are likely to follow for the
    following merge window, but we should be able to do those through the
    iommu maintainer.

    Other notable changes are:
    - reset controller drivers from the reset maintainer (socfpga, sti,
    berlin)
    - fixes for the keystone navigator driver merged last time
    - at91 rtc driver changes related to the at91 cleanups
    - ARM perf driver changes from Will Deacon
    - updates for the brcmstb_gisb driver"

    * tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (53 commits)
    clocksource: arch_timer: Allow the device tree to specify uninitialized timer registers
    clocksource: arch_timer: Fix code to use physical timers when requested
    memory: Add NVIDIA Tegra memory controller support
    bus: brcmstb_gisb: Add register offset tables for older chips
    bus: brcmstb_gisb: Look up register offsets in a table
    bus: brcmstb_gisb: Introduce wrapper functions for MMIO accesses
    bus: brcmstb_gisb: Make the driver buildable on MIPS
    of: Add NVIDIA Tegra memory controller binding
    ARM: tegra: Move AHB Kconfig to drivers/amba
    amba: Add Kconfig file
    clk: tegra: Implement memory-controller clock
    serial: samsung: Fix serial config dependencies for exynos7
    bus: brcmstb_gisb: resolve section mismatch
    ARM: common: edma: edma_pm_resume may be unused
    ARM: common: edma: add suspend resume hook
    powerpc/iommu: Rename iommu_[un]map_sg functions
    rtc: at91sam9: add DT bindings documentation
    rtc: at91sam9: use clk API instead of relying on AT91_SLOW_CLOCK
    ARM: at91: add clk_lookup entry for RTT devices
    rtc: at91sam9: rework the Kconfig description
    ...

    Linus Torvalds
     
  • Pull ARM SoC platform changes from Arnd Bergmann:
    "New and updated SoC support, notable changes include:

    - bcm:
    brcmstb SMP support
    initial iproc/cygnus support
    - exynos:
    Exynos4415 SoC support
    PMU and suspend support for Exynos5420
    PMU support for Exynos3250
    pm related maintenance
    - imx:
    new LS1021A SoC support
    vybrid 610 global timer support
    - integrator:
    convert to using multiplatform configuration
    - mediatek:
    earlyprintk support for mt8127/mt8135
    - meson:
    meson8 soc and l2 cache controller support
    - mvebu:
    Armada 38x CPU hotplug support
    drop support for prerelease Armada 375 Z1 stepping
    extended suspend support, now works on Armada 370/XP
    - omap:
    hwmod related maintenance
    prcm cleanup
    - pxa:
    initial pxa27x DT handling
    - rockchip:
    SMP support for rk3288
    add cpu frequency scaling support
    - shmobile:
    r8a7740 power domain support
    various small restart, timer, pci apmu changes
    - sunxi:
    Allwinner A80 (sun9i) earlyprintk support
    - ux500:
    power domain support

    Overall, a significant chunk of changes, coming mostly from the usual
    suspects: omap, shmobile, samsung and mvebu, all of which already
    contain a lot of platform specific code in arch/arm"

    * tag 'soc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (187 commits)
    ARM: mvebu: use the cpufreq-dt platform_data for independent clocks
    soc: integrator: Add terminating entry for integrator_cm_match
    ARM: mvebu: add SDRAM controller description for Armada XP
    ARM: mvebu: adjust mbus controller description on Armada 370/XP
    ARM: mvebu: add suspend/resume DT information for Armada XP GP
    ARM: mvebu: synchronize secondary CPU clocks on resume
    ARM: mvebu: make sure MMU is disabled in armada_370_xp_cpu_resume
    ARM: mvebu: Armada XP GP specific suspend/resume code
    ARM: mvebu: reserve the first 10 KB of each memory bank for suspend/resume
    ARM: mvebu: implement suspend/resume support for Armada XP
    clk: mvebu: add suspend/resume for gatable clocks
    bus: mvebu-mbus: provide a mechanism to save SDRAM window configuration
    bus: mvebu-mbus: suspend/resume support
    clocksource: time-armada-370-xp: add suspend/resume support
    irqchip: armada-370-xp: Add suspend/resume support
    ARM: add lolevel debug support for asm9260
    ARM: add mach-asm9260
    ARM: EXYNOS: use u8 for val[] in struct exynos_pmu_conf
    power: reset: imx-snvs-poweroff: add power off driver for i.mx6
    ARM: imx: temporarily remove CONFIG_SOC_FSL from LS1021A
    ...

    Linus Torvalds
     

09 Dec, 2014

1 commit

  • This resolves a nonobvious merge conflict that I got wrong the
    first time.

    * brcm/stb-smp-uart:
    bus: brcmstb_gisb: save and restore GISB timeout
    bus: brcmstb_gisb: register the fault code hook
    ARM: brcmstb: Kconfig: drop unneeded symbol selections
    ARM: brcmstb: reintroduce SMP support
    ARM: brcmstb: add debug UART for earlyprintk support

    Conflicts:
    drivers/bus/brcmstb_gisb.c

    Signed-off-by: Arnd Bergmann
    Reported-by: Florian Fainelli

    Arnd Bergmann
     

04 Dec, 2014

2 commits

  • Pull "mvebu SoC suspend changes for v3.19" from Jason Cooper:

    - Armada 370/XP suspend/resume support

    - mvebu SoC driver suspend/resume support
    - irqchip
    - clocksource
    - mbus
    - clk

    * tag 'mvebu-soc-suspend-3.19' of git://git.infradead.org/linux-mvebu:
    ARM: mvebu: add SDRAM controller description for Armada XP
    ARM: mvebu: adjust mbus controller description on Armada 370/XP
    ARM: mvebu: add suspend/resume DT information for Armada XP GP
    ARM: mvebu: synchronize secondary CPU clocks on resume
    ARM: mvebu: make sure MMU is disabled in armada_370_xp_cpu_resume
    ARM: mvebu: Armada XP GP specific suspend/resume code
    ARM: mvebu: reserve the first 10 KB of each memory bank for suspend/resume
    ARM: mvebu: implement suspend/resume support for Armada XP
    clk: mvebu: add suspend/resume for gatable clocks
    bus: mvebu-mbus: provide a mechanism to save SDRAM window configuration
    bus: mvebu-mbus: suspend/resume support
    clocksource: time-armada-370-xp: add suspend/resume support
    irqchip: armada-370-xp: Add suspend/resume support
    Documentation: dt-bindings: minimal documentation for MVEBU SDRAM controller

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • This pull request contains the following changes to the Broadcom GISB bus
    arbiter from Kevin Cernekee:

    - Extend brcmstb GISB bus driver to work on MIPS (currently ARM-only) and support
    65nm and 40nm MIPS-based chips such as: BCM7038, BCM7400 and BCM7435

    * tag 'arm-soc/for-3.19/brcmstb-drivers' of https://github.com/brcm/linux:
    bus: brcmstb_gisb: Add register offset tables for older chips
    bus: brcmstb_gisb: Look up register offsets in a table
    bus: brcmstb_gisb: Introduce wrapper functions for MMIO accesses
    bus: brcmstb_gisb: Make the driver buildable on MIPS

    Conflicts:
    drivers/bus/brcmstb_gisb.c

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

01 Dec, 2014

2 commits

  • On Marvell EBU platforms, when doing suspend/resume, the SDRAM window
    configuration must be saved on suspend, and restored on
    resume. However, it needs to be restored on resume *before*
    re-entering the kernel, because the SDRAM window configuration defines
    the layout of the memory. For this reason, it cannot simply be done in
    the ->suspend() and ->resume() hooks of the mvebu-mbus driver.

    Instead, it needs to be restored by the bootloader "boot info"
    mechanism used when resuming. This mechanism allows the kernel to
    define a list of (address, value) pairs when suspending, that the
    bootloader will restore on resume before jumping back into the kernel.

    This commit therefore adds a new function to the mvebu-mbus driver,
    called mvebu_mbus_save_cpu_target(), which will be called by the
    platform code to make the mvebu-mbus driver save the SDRAM window
    configuration in a way that can be understood by the bootloader "boot
    info" mechanism.

    Signed-off-by: Thomas Petazzoni
    Reviewed-by: Gregory CLEMENT
    Link: https://lkml.kernel.org/r/1416585613-2113-8-git-send-email-thomas.petazzoni@free-electrons.com
    Signed-off-by: Jason Cooper

    Thomas Petazzoni
     
  • This commit extends the mvebu-mbus driver to provide suspend/resume
    support. Since mvebu-mbus is not a platform_driver, the syscore_ops
    mechanism is used to get ->suspend() and ->resume() hooks called into
    the driver.

    In those hooks, we save and restore the MBus windows state, to make
    sure after resume all Mbus windows are properly restored. Note that
    while the state of some windows could be gathered by looking again at
    the Device Tree (for statically described windows), it is not the case
    of dynamically described windows such as the PCIe memory and I/O
    windows. Therefore, we take the simple approach of saving and
    restoring the registers for all MBus windows.

    In addition, the commit extends the Device Tree binding of the MBus
    controller, to control the MBus bridge registers (which define which
    parts of the physical address space is routed to MBus windows
    vs. normal RAM memory). Those registers must be saved and restored
    during suspend/resume. The Device Tree binding extension is made is a
    backward compatible fashion, but of course, suspend/resume will not
    work without the Device Tree update.

    Signed-off-by: Thomas Petazzoni
    Link: https://lkml.kernel.org/r/1416585613-2113-7-git-send-email-thomas.petazzoni@free-electrons.com
    Signed-off-by: Jason Cooper

    Thomas Petazzoni
     

29 Nov, 2014

4 commits


21 Nov, 2014

1 commit

  • Commit f1bee783dd37 moved the call to hook_fault_code in
    brcmstb_gisb_arb_probe() which now calls a function annotated with __init, so
    this one must also be annotated with __init.

    In order to avoid introducing another section mismatch, call
    platform_driver_probe() manually and remove the .probe assignment from
    brcmstb_gisb_arb_driver, this is very similar to what
    drivers/pci/host/pci-imx6.c does since we basically have the same constraints
    here.

    Fixes: f1bee783dd37 ("bus: brcmstb_gisb: register the fault code hook")
    Signed-off-by: Florian Fainelli
    Signed-off-by: Arnd Bergmann

    Florian Fainelli
     

20 Nov, 2014

1 commit

  • …linux into next/drivers

    Pull "ARM: perf: updates for 3.19" from Will Deacon:

    This patch series takes us slightly further on the road to big.LITTLE
    support in perf. The main change enabling this is moving the CCI PMU
    driver away from the arm-pmu abstraction, allowing the arch code to
    focus specifically on support for CPU PMUs.

    * tag 'arm-perf-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux:
    arm: perf: fold hotplug notifier into arm_pmu
    arm: perf: dynamically allocate cpu hardware data
    arm: perf: fold percpu_pmu into pmu_hw_events
    arm: perf: kill get_hw_events()
    arm: perf: limit size of accounting data
    arm: perf: use IDR types for CPU PMUs
    arm: perf: make PMU probing data-driven
    arm: perf: add missing pr_info newlines
    arm: perf: factor out callchain code
    ARM: perf: use pr_* instead of printk
    ARM: perf: remove useless return and check of idx in counter handling
    bus: cci: move away from arm_pmu framework

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     

12 Nov, 2014

2 commits

  • Correct returning IRQ_HANDLED unconditionally in the irq handler.
    Return IRQ_NONE for some interrupt which we do not expect to be
    handled in this handler. This prevents kernel stalling with back
    to back spurious interrupts.

    Fixes: 2722e56de6 ("OMAP4: l3: Introduce l3-interconnect error handling driver")
    Acked-by: Nishanth Menon
    Signed-off-by: Keerthy
    Signed-off-by: Tony Lindgren

    Keerthy
     
  • On certain SoCs such as AM437x SoC, L3_noc error registers are
    maintained in power domain such as per domain which looses context as part
    of low power state such as RTC+DDR mode. On these platforms when we
    mask interrupts which we cannot handle, the source of these interrupts
    still remain on resume, however, the flag mux registers now contain
    their reset value (unmasked) - this breaks the system with infinite
    interrupts since we do not these interrupts to take place ever again.

    To handle this: restore the masking of interrupts which we have
    already recorded in the system as ones we cannot handle.

    Fixes: 2100b595b7 ("bus: omap_l3_noc: ignore masked out unclearable targets")
    Acked-by: Nishanth Menon
    Signed-off-by: Keerthy
    Signed-off-by: Tony Lindgren

    Keerthy
     

06 Nov, 2014

1 commit

  • When booting omap3 in device tree mode, we're currently getting
    the following errors:

    omap_l3_smx omap_l3_smx.0: couldn't request debug irq
    omap_l3_smx: probe of omap_l3_smx.0 failed with error -22

    This is because we don't have handling in the driver for the
    compatible property and instead assume platform data being
    passed.

    Note that this binding is already documented, and implemented
    for the related omap_l3_noc driver for omap4 and later. Looks
    like the binding somehow never got never implemented for this
    omap_l3_smx driver though.

    Let's also remove __exit_p to allow binding and unbinding
    of the driver while at it.

    Reported-by: Pavel Machek
    Reported-by: Russell King
    Acked-by: Santosh Shilimkar
    Signed-off-by: Tony Lindgren

    Tony Lindgren
     

30 Oct, 2014

1 commit

  • The ARM CPU PMUs and the ARM CCI PMU are using the same framework
    despite being substantially different in programming model, which makes
    it difficult to handle either particularly well.

    This patch migrates the ARM CCI PMU driver away from the arm_pmu
    framework, matching the style of the CCN PMU driver and other 'uncore'
    PMU drivers. This will enable refactoring of the arm_pmu framework to
    better support CPU PMUs. Event context migration on hotplug is not yet
    added due to a race on event->ctx in the core perf code.

    Signed-off-by: Mark Rutland
    Acked-by: Punit Agrawal
    Cc: Pawel Moll
    Cc: Will Deacon
    [will: fix whitespace issues]
    Signed-off-by: Will Deacon

    Mark Rutland
     

21 Oct, 2014

2 commits

  • When the system enters S3, we will lose the GISB timeout value we have
    configured, make sure that we do save this timeout value, and restore
    this timeout value prior to re-enabling interrupts such that the GISB
    timeout interrupt will fire with the expected timeout.

    Signed-off-by: Florian Fainelli

    Florian Fainelli
     
  • Commit 44127b771d9c31 ("bus: add Broadcom GISB bus arbiter timeout/error
    handler") added everything that is required to register an ARM fault
    handler for imprecise external aborts, except that there is nothing
    calling this currently.

    We do not need to export that specific function and have to update
    arch/arm/mach-bcm/brcmstb.c to call it, simply, register the fault
    handler during the probe() function of the driver.

    Signed-off-by: Florian Fainelli

    Florian Fainelli
     

20 Oct, 2014

1 commit


09 Oct, 2014

2 commits

  • Pull ARM SoC driver updates from Arnd Bergmann:
    "These are changes for drivers that are intimately tied to some SoC and
    for some reason could not get merged through the respective subsystem
    maintainer tree.

    Most of the new code is for the Keystone Navigator driver, which is
    new base support that is going to be needed for their hardware
    accelerated network driver and other units.

    Most of the commits are for moving old code around from at91 and omap
    for things that are done in device drivers nowadays.

    - at91: move reset, poweroff, memory and clocksource code into
    drivers directories
    - socfpga: add edac driver (through arm-soc, as requested by Boris)
    - omap: move omap-intc code to drivers/irqchip
    - sunxi: added an RTC driver for sun6i
    - omap: mailbox driver related changes
    - keystone: support for the "Navigator" component
    - versatile: new reboot, led and soc drivers"

    * tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (92 commits)
    bus: arm-ccn: Fix spurious warning message
    leds: add device tree bindings for register bit LEDs
    soc: add driver for the ARM RealView
    power: reset: driver for the Versatile syscon reboot
    leds: add a driver for syscon-based LEDs
    drivers/soc: ti: fix build break with modules
    MAINTAINERS: Add Keystone Multicore Navigator drivers entry
    soc: ti: add Keystone Navigator DMA support
    Documentation: dt: soc: add Keystone Navigator DMA bindings
    soc: ti: add Keystone Navigator QMSS driver
    Documentation: dt: soc: add Keystone Navigator QMSS bindings
    rtc: sunxi: Depend on platforms sun4i/sun7i that actually have the rtc
    rtc: sun6i: Add sun6i RTC driver
    irqchip: omap-intc: remove unnecessary comments
    irqchip: omap-intc: correct maximum number or MIR registers
    irqchip: omap-intc: enable TURBO idle mode
    irqchip: omap-intc: enable IP protection
    irqchip: omap-intc: remove unnecesary of_address_to_resource() call
    irqchip: omap-intc: comment style cleanup
    irqchip: omap-intc: minor improvement to omap_irq_pending()
    ...

    Linus Torvalds
     
  • Because CCN's cycle counter always runs, it will generate
    an interrupt on overflow even if the relevant perf event
    was not requested, causing a spurious warning message.

    Fixed now by warning on only normal counter unwanted
    overflows. Also cleaning the overflow mask at init now,
    not to warn on event previously requested by firmware.

    Signed-off-by: Pawel Moll
    Signed-off-by: Olof Johansson
    Signed-off-by: Arnd Bergmann

    Pawel Moll
     

12 Sep, 2014

1 commit

  • Commit d4d8819e205854c ("bus: omap_l3_noc: fix masterid detection")
    did the right thing in dropping the LSB 2 bits which is not part
    of the ConnID for NTTP master address. However, as part of that
    change, we should also have ensured that existing list of OMAP4 connID
    codes are also shifted by 2 bits to ensure that connIDs map to "Table
    13-18. ConnID Values" as provided in Technical Reference Manuals for
    OMAP4430(Rev AP, April 2014, SWPU220AP) and OMAP4460(Rev AB, April
    2014, SWPU234AB)

    Fixes: d4d8819e205854c ("bus: omap_l3_noc: fix masterid detection")
    Reported-by: Kristian Otnes
    Signed-off-by: Nishanth Menon
    Signed-off-by: Tony Lindgren

    Nishanth Menon
     

06 Sep, 2014

1 commit

  • The function cleaning up an initialized event
    was called from the "event_del" handler, instead
    of being used as the "destroy" callback. In case of
    events group allocation this caused NULL pointer
    dereference (as events are added and deleted
    multiple times then). Fixed now.

    Signed-off-by: Pawel Moll
    Signed-off-by: Kevin Hilman

    Pawel Moll
     

25 Aug, 2014

1 commit


09 Aug, 2014

3 commits

  • Pull ARM SoC driver changes from Olof Johansson:
    "A handful of driver-related changes. We've had a bunch of them going
    in through other branches as well, so it's only a part of what we
    really have this release.

    Larger pieces are:

    - Removal of a now unused PWM driver for atmel
    [ This includes AVR32 changes that have been appropriately acked ]
    - Performance counter support for the arm CCN interconnect
    - OMAP mailbox driver cleanups and consolidation
    - PCI and SATA PHY drivers for SPEAr 13xx platforms
    - Redefinition (with backwards compatibility!) of PCI DT bindings for
    Tegra to better model regulators/power"

    Note: this merge also fixes up the semantic conflict with the new
    calling convention for devm_phy_create(), see commit f0ed817638b5 ("phy:
    core: Let node ptr of PHY point to PHY and not of PHY provider") that
    came in through Greg's USB tree.

    Semantic merge patch by Stephen Rothwell through
    the next tree.

    * tag 'drivers-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (38 commits)
    bus: arm-ccn: Fix error handling at event allocation
    mailbox/omap: add a parent structure for every IP instance
    mailbox/omap: remove the private mailbox structure
    mailbox/omap: consolidate OMAP mailbox driver
    mailbox/omap: simplify the fifo assignment by using macros
    mailbox/omap: remove omap_mbox_type_t from mailbox ops
    mailbox/omap: remove OMAP1 mailbox driver
    mailbox/omap: use devm_* interfaces
    bus: ARM CCN: add PERF_EVENTS dependency
    bus: ARM CCN PMU driver
    PCI: spear: Remove spear13xx_pcie_remove()
    PCI: spear: Fix Section mismatch compilation warning for probe()
    ARM: tegra: Remove legacy PCIe power supply properties
    PCI: tegra: Remove deprecated power supply properties
    PCI: tegra: Implement accurate power supply scheme
    ARM: SPEAr13xx: Update defconfigs
    ARM: SPEAr13xx: Add pcie and miphy DT nodes
    ARM: SPEAr13xx: Add bindings and dt node for misc block
    ARM: SPEAr13xx: Fix static mapping table
    phy: Add drivers for PCIe and SATA phy on SPEAr13xx
    ...

    Linus Torvalds
     
  • Pull ARM SoC platform changes from Olof Johansson:
    "This is the bulk of new SoC enablement and other platform changes for
    3.17:

    - Samsung S5PV210 has been converted to DT and multiplatform
    - Clock drivers and bindings for some of the lower-end i.MX 1/2
    platforms
    - Kirkwood, one of the popular Marvell platforms, is folded into the
    mvebu platform code, removing mach-kirkwood
    - Hwmod data for TI AM43xx and DRA7 platforms
    - More additions of Renesas shmobile platform support
    - Removal of plat-samsung contents that can be removed with S5PV210
    being multiplatform/DT-enabled and the other two old platforms
    being removed

    New platforms (most with only basic support right now):

    - Hisilicon X5HD2 settop box chipset is introduced
    - Mediatek MT6589 (mobile chipset) is introduced
    - Broadcom BCM7xxx settop box chipset is introduced

    + as usual a lot other pieces all over the platform code"

    * tag 'soc-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (240 commits)
    ARM: hisi: remove smp from machine descriptor
    power: reset: move hisilicon reboot code
    ARM: dts: Add hix5hd2-dkb dts file.
    ARM: debug: Rename Hi3716 to HIX5HD2
    ARM: hisi: enable hix5hd2 SoC
    ARM: hisi: add ARCH_HISI
    MAINTAINERS: add entry for Broadcom ARM STB architecture
    ARM: brcmstb: select GISB arbiter and interrupt drivers
    ARM: brcmstb: add infrastructure for ARM-based Broadcom STB SoCs
    ARM: configs: enable SMP in bcm_defconfig
    ARM: add SMP support for Broadcom mobile SoCs
    Documentation: arm: misc updates to Marvell EBU SoC status
    Documentation: arm: add URLs to public datasheets for the Marvell Armada XP SoC
    ARM: mvebu: fix build without platforms selected
    ARM: mvebu: add cpuidle support for Armada 38x
    ARM: mvebu: add cpuidle support for Armada 370
    cpuidle: mvebu: add Armada 38x support
    cpuidle: mvebu: add Armada 370 support
    cpuidle: mvebu: rename the driver from armada-370-xp to mvebu-v7
    ARM: mvebu: export the SCU address
    ...

    Linus Torvalds
     
  • Pull ARM SoC cleanups from Olof Johansson:
    "This merge window brings a good size of cleanups on various platforms.
    Among the bigger ones:

    - Removal of Samsung s5pc100 and s5p64xx platforms. Both of these
    have lacked active support for quite a while, and after asking
    around nobody showed interest in keeping them around. If needed,
    they could be resurrected in the future but it's more likely that
    we would prefer reintroduction of them as DT and
    multiplatform-enabled platforms instead.

    - OMAP4 controller code register define diet. They defined a lot of
    registers that were never actually used, etc.

    - Move of some of the Tegra platform code (PMC, APBIO, fuse,
    powergate) to drivers/soc so it can be shared with 64-bit code.
    This also converts them over to traditional driver models where
    possible.

    - Removal of legacy gpio-samsung driver, since the last users have
    been removed (moved to pinctrl)

    Plus a bunch of smaller changes for various platforms that sort of
    dissapear in the diffstat for the above. clps711x cleanups, shmobile
    header file refactoring/moves for multiplatform friendliness, some
    misc cleanups, etc"

    * tag 'cleanup-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (117 commits)
    drivers: CCI: Correct use of ! and &
    video: clcd-versatile: Depend on ARM
    video: fix up versatile CLCD helper move
    MAINTAINERS: Add sdhci-st file to ARCH/STI architecture
    ARM: EXYNOS: Fix build breakge with PM_SLEEP=n
    MAINTAINERS: Remove Kirkwood
    ARM: tegra: Convert PMC to a driver
    soc/tegra: fuse: Set up in early initcall
    ARM: tegra: Always lock the CPU reset vector
    ARM: tegra: Setup CPU hotplug in a pure initcall
    soc/tegra: Implement runtime check for Tegra SoCs
    soc/tegra: fuse: fix dummy functions
    soc/tegra: fuse: move APB DMA into Tegra20 fuse driver
    soc/tegra: Add efuse and apbmisc bindings
    soc/tegra: Add efuse driver for Tegra
    ARM: tegra: move fuse exports to soc/tegra/fuse.h
    ARM: tegra: export apb dma readl/writel
    ARM: tegra: Use a function to get the chip ID
    ARM: tegra: Sort includes alphabetically
    ARM: tegra: Move includes to include/soc/tegra
    ...

    Linus Torvalds
     

01 Aug, 2014

1 commit

  • The bitfield allocation function returns error condition
    as a negative value, but in two cases its result
    was assigned to an unsigned member of the hw_perf_event
    structure, thus the error would not be ever detected.

    Fixed by using an intermediate, signed variable.

    Reported-by: Dan Carpenter
    Signed-off-by: Pawel Moll
    Signed-off-by: Olof Johansson

    Pawel Moll
     

31 Jul, 2014

1 commit

  • In commit ae91d60ba88ef0bdb1b5e9b2363bd52fc45d2af7, a bug was fixed that
    involved converting !x & y to !(x & y). The code below shows the same
    pattern, and thus should perhaps be fixed in the same way.

    The Coccinelle semantic patch that makes this change is as follows:

    //
    @@ expression E1,E2; @@
    (
    !E1 & !E2
    |
    - !E1 & E2
    + !(E1 & E2)
    )
    //

    Signed-off-by: Himangi Saraogi
    Acked-by: Julia Lawall
    Acked-by: Punit Agrawal
    Signed-off-by: Olof Johansson

    Himangi Saraogi
     

24 Jul, 2014

2 commits

  • The CCN driver makes no sense without PERF_EVENTS, and trying to
    build it when that option is disabled results in compile errors,
    so it's best to just add a strong Kconfig dependency.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • Driver providing perf backend for ARM Cache Coherent Network
    interconnect. Supports counting all hardware events and crosspoint
    watchpoints.

    Currently works with CCN-504 only, although there should be
    no changes required for CCN-508 (just impossible to test it now).

    Signed-off-by: Pawel Moll
    Signed-off-by: Arnd Bergmann

    Pawel Moll
     

18 Jul, 2014

1 commit

  • There could be some memory map devices located in
    a certain chip select region of the i.MX WEIM.
    The devices could be attached to a simple bus(for
    example, a AXI bus) whose root node is one child
    device tree node of the i.MX WEIM device tree node.
    There should be a bridge(very likely, software
    transparent) bewteen the i.MX WEIM and the simple bus.
    This patch makes the i.MX WEIM driver possible to
    populate devices on a simple bus. In this way, people
    may try various IPs(in a FPGA, maybe) outside of i.MX
    chips with the i.MX WEIM embedded.

    Signed-off-by: Liu Ying
    Signed-off-by: Shawn Guo

    Liu Ying
     

04 Jul, 2014

1 commit

  • … into driver-core-next

    Russell writes:

    These updates fix one bug in the component helper where the matched
    components are not properly cleaned up when the master fails to bind.
    I'll provide a version of this for stable trees if it's deemed that
    we need to backport it.

    The second patch causes the component helper to ignore duplicate
    matches when adding components - this is something that was originally
    needed for imx-drm, but since that has now been updated, we no longer
    need to skip over a component which has already been matched.

    The final patch starts the process of updating the component helper
    API to achieve two goals: to allow the API to be more efficient when
    deferred probing occurs, and to allow for future improvements to the
    component helper without having a major impact on the users.

    This represents groundwork for some other changes; once this has been
    merged, I will then send two further pull requests (one for the staging
    tree, and one for the DRM tree) to update the drivers to the new API.
    This will result in these three commits being shared with those trees.

    Greg Kroah-Hartman
     

20 Jun, 2014

1 commit

  • devm_request_and_ioremap() was obsoleted by the commit 7509657
    ("lib: devres: Introduce devm_ioremap_resource()") and has been
    deprecated for a long time. So, let's remove this function.
    In addition, all usages of devm_request_and_ioremap() are also
    removed.

    Signed-off-by: Jingoo Han
    Signed-off-by: Greg Kroah-Hartman

    Jingoo Han
     

17 Jun, 2014

1 commit

  • The arm-cci code uses device tree helpers for initialization
    that don't work on kernels built without CONFIG_OF. Further,
    it contains an inline assembly in cci_enable_port_for_self()
    that uses ARMv7 instructions and fails to build when targetting
    other ARM instruction set versions.

    This works around both issues by limiting the scope of the
    Kconfig symbol to platforms that can actually build this driver
    cleanly.

    Signed-off-by: Arnd Bergmann
    Acked-by: Lorenzo Pieralisi
    Cc: Shawn Guo

    Arnd Bergmann
     

03 Jun, 2014

2 commits

  • Pull ARM SoC driver changes from Olof Johansson:
    "SoC-near driver changes that we're merging through our tree. Mostly
    because they depend on other changes we have staged, but in some cases
    because the driver maintainers preferred that we did it this way.

    This contains a largeish cleanup series of the omap_l3_noc bus driver,
    cpuidle rework for Exynos, some reset driver conversions and a long
    branch of TI EDMA fixes and cleanups, with more to come next release.

    The TI EDMA cleanups is a shared branch with the dmaengine tree, with
    a handful of Davinci-specific fixes on top.

    After discussion at last year's KS (and some more on the mailing
    lists), we are here adding a drivers/soc directory. The purpose of
    this is to keep per-vendor shared code that's needed by different
    drivers but that doesn't fit into the MFD (nor drivers/platform)
    model. We expect to keep merging contents for this hierarchy through
    arm-soc so we can keep an eye on what the vendors keep adding here and
    not making it a free-for-all to shove in crazy stuff"

    * tag 'drivers-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (101 commits)
    cpufreq: exynos: Fix driver compilation with ARCH_MULTIPLATFORM
    tty: serial: msm: Remove direct access to GSBI
    power: reset: keystone-reset: introduce keystone reset driver
    Documentation: dt: add bindings for keystone pll control controller
    Documentation: dt: add bindings for keystone reset driver
    soc: qcom: fix of_device_id table
    ARM: EXYNOS: Fix kernel panic when unplugging CPU1 on exynos
    ARM: EXYNOS: Move the driver to drivers/cpuidle directory
    ARM: EXYNOS: Cleanup all unneeded headers from cpuidle.c
    ARM: EXYNOS: Pass the AFTR callback to the platform_data
    ARM: EXYNOS: Move S5P_CHECK_SLEEP into pm.c
    ARM: EXYNOS: Move the power sequence call in the cpu_pm notifier
    ARM: EXYNOS: Move the AFTR state function into pm.c
    ARM: EXYNOS: Encapsulate the AFTR code into a function
    ARM: EXYNOS: Disable cpuidle for exynos5440
    ARM: EXYNOS: Encapsulate boot vector code into a function for cpuidle
    ARM: EXYNOS: Pass wakeup mask parameter to function for cpuidle
    ARM: EXYNOS: Remove ifdef for scu_enable in pm
    ARM: EXYNOS: Move scu_enable in the cpu_pm notifier
    ARM: EXYNOS: Use the cpu_pm notifier for pm
    ...

    Linus Torvalds
     
  • Pull part one of ARM SoC updates from Olof Johansson:
    "A quite large set of SoC updates this cycle. In no particular order:

    - Multi-cluster power management for Samsung Exynos, adding support
    for big.LITTLE CPU switching on EXYNOS5

    - SMP support for Marvell Armada 375 and 38x

    - SMP rework on Allwinner A31

    - Xilinx Zynq support for SOC_BUS, big endian

    - Marvell orion5x platform cleanup, modernizing the implementation
    and moving to DT.

    - _Finally_ moving Samsung Exynos over to support MULTIPLATFORM, so
    that their platform can be enabled in the same kernel binary as
    most of the other v7 platforms in the tree. \o/

    The work isn't quite complete, there's some driver fixes still
    needed, but the basics now work.

    New SoC support added:

    - Freescale i.MX6SX

    - LSI Axxia AXM55xx SoCs

    - Samsung EXYNOS 3250, 5260, 5410, 5420 and 5800

    - STi STIH407

    plus a large set of various smaller updates for different platforms.
    I'm probably missing some important one here"

    * tag 'soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (281 commits)
    ARM: exynos: don't run exynos4 l2x0 setup on other platforms
    ARM: exynos: Fix "allmodconfig" build errors in mcpm and hotplug
    ARM: EXYNOS: mcpm rename the power_down_finish
    ARM: EXYNOS: Enable mcpm for dual-cluster exynos5800 SoC
    ARM: EXYNOS: Enable multi-platform build support
    ARM: EXYNOS: Consolidate Kconfig entries
    ARM: EXYNOS: Add support for EXYNOS5410 SoC
    ARM: EXYNOS: Support secondary CPU boot of Exynos3250
    ARM: EXYNOS: Add Exynos3250 SoC ID
    ARM: EXYNOS: Add 5800 SoC support
    ARM: EXYNOS: initial board support for exynos5260 SoC
    clk: exynos5410: register clocks using common clock framework
    ARM: debug: qcom: add UART addresses to Kconfig help for APQ8084
    ARM: sunxi: allow building without reset controller
    Documentation: devicetree: arm: sort enable-method entries
    ARM: rockchip: convert smp bringup to CPU_METHOD_OF_DECLARE
    clk: exynos5250: Add missing sysmmu clocks for DISP and ISP blocks
    ARM: dts: axxia: Add reset controller
    power: reset: Add Axxia system reset driver
    ARM: axxia: Adding defconfig for AXM55xx
    ...

    Linus Torvalds