summaryrefslogtreecommitdiffstats
path: root/arch/arm
AgeCommit message (Collapse)Author
2015-02-02Merge branch 'at91-3.19-fixes' into at91-3.20-socNicolas Ferre
2015-02-01Merge tag 'armsoc-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc Pull ARM SoC fixes from Olof Johansson: "One more week's worth of fixes. Worth pointing out here are: - A patch fixing detaching of iommu registrations when a device is removed -- earlier the ops pointer wasn't managed properly - Another set of Renesas boards get the same GIC setup fixup as others have in previous -rcs - Serial port aliases fixups for sunxi. We did the same to tegra but we caught that in time before the merge window due to more machines being affected. Here it took longer for anyone to notice. - A couple more DT tweaks on sunxi - A follow-up patch for the mvebu coherency disabling in last -rc batch" * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: arm: dma-mapping: Set DMA IOMMU ops in arm_iommu_attach_device() ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds ARM: mvebu: don't set the PL310 in I/O coherency mode when I/O coherency is disabled ARM: sunxi: dt: Fix aliases ARM: dts: sun4i: Add simplefb node with de_fe0-de_be0-lcd0-hdmi pipeline ARM: dts: sun6i: ippo-q8h-v5: Fix serial0 alias ARM: dts: sunxi: Fix usb-phy support for sun4i/sun5i
2015-02-01Merge tag 'renesas-soc-fixes3-for-v3.19' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes Merge "Third Round of Renesas ARM Based SoC Fixes for v3.19" from Simon Horman: * Instantiate GIC from C board code in legacy builds on r8a7790 and r8a73a4 * tag 'renesas-soc-fixes3-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-30net: davinci_emac: Get device MAC on 3517Tony Lindgren
Looks like on 3517 davinci_emac MAC address registers have a different layout compared to dm816x and am33xx. Let's add a function to get the 3517 MAC address. Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-01-30ARM: dts: am57xx-beagle-x15: Fix USB2 modeRoger Quadros
On this board USB2 is meant to be used as peripheral only. The ID pin for USB2 is hardwired HIGH. Signed-off-by: Roger Quadros <rogerq@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30ARM: dts: am57xx-beagle-x15: Add extcon nodes for USBRoger Quadros
On this EVM, the USB cable state has to be determined via the ID pin tied to a GPIO line. We use the gpio-usb-extcon driver to read the ID pin and the extcon framework to forward the USB cable state information to the USB driver so the controller can be configured in the right mode (host/peripheral). NOTE: the ports on this board cannot switch roles. They are configured either host or peripheral by hardwiring the respective ID pins. Signed-off-by: Roger Quadros <rogerq@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30ARM: dts: dra72-evm: Add extcon nodes for USBRoger Quadros
On this EVM, the USB cable state has to be determined via the ID pin tied to a GPIO line. We use the gpio-usb-extcon driver to read the ID pin and the extcon framework to forward the USB cable state information to the USB driver so the controller can be configured in the right mode (host/peripheral). Gets USB peripheral mode to work on this EVM. Signed-off-by: Roger Quadros <rogerq@ti.com> Reviewed-by: Felipe Balbi <balbi@ti.com> Acked-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30ARM: dts: dra7-evm: Add extcon nodes for USBRoger Quadros
On this EVM, the USB cable state has to be determined via the ID pin tied to a GPIO line. We use the gpio-usb-extcon driver to read the ID pin and the extcon framework to forward the USB cable state information to the USB driver so the controller can be configured in the right mode (host/peripheral). Gets USB peripheral mode to work on this EVM. Signed-off-by: Roger Quadros <rogerq@ti.com> Reviewed-by: Felipe Balbi <balbi@ti.com> Acked-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-01-30ARM: ks8695: Convert PCI to use generic config accessorsRob Herring
Convert the ks8695 PCI driver to use the generic config access functions. This changes accesses from __raw_readX/__raw_writeX to readX/writeX variants. Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Greg Ungerer <gerg@uclinux.org> CC: Russell King <linux@arm.linux.org.uk> CC: linux-arm-kernel@lists.infradead.org
2015-01-30ARM: sa1100: Convert PCI to use generic config accessorsRob Herring
Convert the sa1100 nanoengine PCI driver to use the generic config access functions. Change accesses from __raw_readX/__raw_writeX to readX/writeX variants. This removes the spinlock because it is unnecessary. The config read and write functions are already protected with a spinlock. Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> CC: Russell King <linux@arm.linux.org.uk> CC: linux-arm-kernel@lists.infradead.org
2015-01-30ARM: OMAP3: remove legacy clock dataTero Kristo
This is no longer used for anything, thus it can be removed. Signed-off-by: Tero Kristo <t-kristo@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-30ARM: OMAP3: use clock data from TI clock driver for legacy bootTero Kristo
As the clock data is now available for the legacy boot also from the clock driver, use this rather than the data under the mach folder. This allows us to get rid of the old clock data completely. Signed-off-by: Tero Kristo <t-kristo@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-30ARM: OMAP3: PRM: add support for legacy iomapping initTero Kristo
As the legacy clock data is being moved under clock driver, the clock data will be using the same low level infrastructure for register accesses. This requires the clk_memmaps to be initialized properly. This patch adds a support hook to the PRM driver to initialize the mappings. Signed-off-by: Tero Kristo <t-kristo@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-30Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvmLinus Torvalds
Pull KVM fixes from Paolo Bonzini: "The ARM changes are largish, but not too scary. And a simple fix for x86 (bug introduced in 3.19)" (Paolo sayus these are the "Final" fixes. We'll see). * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: x86: check LAPIC presence when building apic_map arm/arm64: KVM: Use kernel mapping to perform invalidation on page fault arm/arm64: KVM: Invalidate data cache on unmap arm/arm64: KVM: Use set/way op trapping to track the state of the caches
2015-01-30Merge tag 'kvm-arm-fixes-3.19-2' of ↵Paolo Bonzini
git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master Second round of fixes for KVM/ARM for 3.19. Fixes memory corruption issues on APM platforms and swapping issues on DMA-coherent systems.
2015-01-30cpuidle: exynos: add coupled cpuidle support for exynos4210Bartlomiej Zolnierkiewicz
The following patch adds coupled cpuidle support for Exynos4210 to an existing cpuidle-exynos driver. As a result it enables AFTR mode to be used by default on Exynos4210 without the need to hot unplug CPU1 first. The patch is heavily based on earlier cpuidle-exynos4210 driver from Daniel Lezcano: http://www.spinics.net/lists/linux-samsung-soc/msg28134.html Changes from Daniel's code include: - porting code to current kernels - fixing it to work on my setup (by using S5P_INFORM register instead of S5P_VA_SYSRAM one on Revison 1.1 and retrying poking CPU1 out of the BOOT ROM if necessary) - fixing rare lockup caused by waiting for CPU1 to get stuck in the BOOT ROM (CPU hotplug code in arch/arm/mach-exynos/platsmp.c doesn't require this and works fine) - moving Exynos specific code to arch/arm/mach-exynos/pm.c - using cpu_boot_reg_base() helper instead of BOOT_VECTOR macro - using exynos_cpu_*() helpers instead of accessing registers directly - using arch_send_wakeup_ipi_mask() instead of dsb_sev() (this matches CPU hotplug code in arch/arm/mach-exynos/platsmp.c) - integrating separate exynos4210-cpuidle driver into existing exynos-cpuidle one Cc: Colin Cross <ccross@google.com> Cc: Kukjin Kim <kgene.kim@samsung.com> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-01-30ARM: EXYNOS: apply S5P_CENTRAL_SEQ_OPTION fix only when necessaryBartlomiej Zolnierkiewicz
Commit c2dd114d2486 ("ARM: EXYNOS: fix register setup for AFTR mode code") added S5P_CENTRAL_SEQ_OPTION register setup fix for all Exynos SoCs to AFTR mode code-path. It turned out that for coupled cpuidle AFTR mode on Exynos4210 (added by the next patch) applying this fix causes lockup so enable it in the AFTR mode code-path only on SoCs that require it (in the suspend code-path it can be always applied like it was before commit c2dd114d2486 ("ARM: EXYNOS: fix register setup for AFTR mode code") Cc: Daniel Lezcano <daniel.lezcano@linaro.org> Cc: Colin Cross <ccross@google.com> Cc: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-01-30ARM: dts: rockchip: move the hdmi ddc-i2c-bus property to the actual boardsHeiko Stuebner
Currently the hdmi driver is using one of the soc i2c busses for ddc probing and while documentation always specifies i2c5 as hdmi-i2c it could very well be any other bus as well. Therefore this is a property of the board and should be specified there. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-01-30ARM: dts: rockchip: enable vops and hdmi output on rk3288-firefly and -evbHeiko Stuebner
This enables the recently added display nodes on the firefly and evb, letting the boards output graphic data over the hdmi port. This includes enabling of i2c5 on the evb that is used for ddc probing and setting the lcd-regulators to always on until the hdmi driver learns about using them. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-01-29arm/arm64: KVM: Use kernel mapping to perform invalidation on page faultMarc Zyngier
When handling a fault in stage-2, we need to resync I$ and D$, just to be sure we don't leave any old cache line behind. That's very good, except that we do so using the *user* address. Under heavy load (swapping like crazy), we may end up in a situation where the page gets mapped in stage-2 while being unmapped from userspace by another CPU. At that point, the DC/IC instructions can generate a fault, which we handle with kvm->mmu_lock held. The box quickly deadlocks, user is unhappy. Instead, perform this invalidation through the kernel mapping, which is guaranteed to be present. The box is much happier, and so am I. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-29arm/arm64: KVM: Invalidate data cache on unmapMarc Zyngier
Let's assume a guest has created an uncached mapping, and written to that page. Let's also assume that the host uses a cache-coherent IO subsystem. Let's finally assume that the host is under memory pressure and starts to swap things out. Before this "uncached" page is evicted, we need to make sure we invalidate potential speculated, clean cache lines that are sitting there, or the IO subsystem is going to swap out the cached view, loosing the data that has been written directly into memory. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-29arm/arm64: KVM: Use set/way op trapping to track the state of the cachesMarc Zyngier
Trying to emulate the behaviour of set/way cache ops is fairly pointless, as there are too many ways we can end-up missing stuff. Also, there is some system caches out there that simply ignore set/way operations. So instead of trying to implement them, let's convert it to VA ops, and use them as a way to re-enable the trapping of VM ops. That way, we can detect the point when the MMU/caches are turned off, and do a full VM flush (which is what the guest was trying to do anyway). This allows a 32bit zImage to boot on the APM thingy, and will probably help bootloaders in general. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-29ARM: dts: rockchip: housekeeping off i2c0 on rk3288-evb boardsHeiko Stuebner
Use the same transfer speed on both the rk808 and act8846 variants and remove the status=okay from the rk808 one which is already set in the shared rk3288-evb.dtsi . Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-01-29ARM: dts: rockchip: add cpu and gpu regulators to rk3288-evb-act8846Heiko Stuebner
The evaluation board using the act8846 as main pmic uses two additional regulators to provide the cpu and gpu voltage. Add these and also add the link to cpu supply from vdd_cpu. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Tested-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2015-01-29Merge tag 'zynq-soc-for-3.20' of https://github.com/Xilinx/linux-xlnx into ↵Olof Johansson
next/soc Merge "Zynq SoC changes for 3.20" from Michal Simek: arm: Xilinx Zynq SoC patches for v3.20 - Enable pincontrol - Simplified SLCR initialization - Setup default ARCH_NR_GPIO * tag 'zynq-soc-for-3.20' of https://github.com/Xilinx/linux-xlnx: ARM: zynq: Simplify SLCR initialization ARM: zynq: PM: Fixed simple typo. ARM: zynq: Setup default gpio number for Xilinx Zynq ARM: zynq: Enable pinctrl Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29Merge tag 'zynq-dt-for-3.20' of https://github.com/Xilinx/linux-xlnx into ↵Olof Johansson
next/dt Merge "Zync DT for v3.20" from Michal Simek: arm: Xilinx Zynq dt patches for v3.20 - Add USB chipidea driver to DT - Add pincontrol - Add aliases node - Fix WDT node * tag 'zynq-dt-for-3.20' of https://github.com/Xilinx/linux-xlnx: ARM: zynq: DT: Add aliases node ARM: zynq: DT: Fix binding for cadence WDT ARM: zynq: DT: Add pinctrl information to USB nodes ARM: zynq: DT: Remove bogus value from 'bias-disable' property ARM: zynq: DT: Add pinctrl information ARM: zynq: DT: Add USB to device tree Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29Merge tag 'renesas-defconfig-fixes-for-v3.20' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/defconfig Merge "Renesas ARM Based SoC Defconfig Fixes for v3.20" from Simon Horman: * Select CONFIG_REGULATOR in mach_shmobile defconfig once again * tag 'renesas-defconfig-fixes-for-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: ARM: shmobile: Select CONFIG_REGULATOR in defconfig once again Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29Merge tag 'samsung-dt-3' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt Merge "Samsung 3rd DT updates for v3.20" from Kukjin Kim: - add DISP1 power domain for support HDMI support on exynos5420/5422/5800 and the power domain node including FIMD1, MIXER and HDMI modules (tested on exynos5420 Peach Pit and exynos5800 Peach Pi Chromebooks and exynos5422 Odroid XU3 by Javier Martinez Canillas) Note this is including a patch for adding clock IDs for the DISP1 power domain with Mike and Sylwester's acks so that could be handled together to avoid non-working. * tag 'samsung-dt-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: dts: Add DISP1 power domain for exynos5420 clk: exynos5420: Add IDs for clocks used in DISP1 power domain Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29Merge tag 'samsung-dt-2' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt Merge "Samsung 2nd DT updates for v3.20" from Kukjin Kim: - for all of Samsung SoCs : use generic power domain bindings : add 'dr_mode' property for hsotg/dwc2 devices - exynos3250-rinato and exynos3250-monk : add regulator-haptic - exynos5422-odroidxu3 : reduce total RAM by 22 MiB because last 22 MiB for secure monitor cannot be accessed by kernel : add on-board INA231 sensors and LDO26 of PMIC for the sensors * tag 'samsung-dt-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: dts: reduce total RAM by 22 MiB for exynos5422-odroidxu3 ARM: dts: add on-board INA231 sensors for exynos5422-odroidxu3 ARM: dts: Add regulator-haptic node for exynos3250-monk ARM: dts: Add regulator-haptic node for exynos3250-rinato ARM: dts: add 'dr_mode' property to hsotg devices for exynos boards ARM: dts: convert to generic power domain bindings for exynos DT Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29Merge tag 'samsung-update' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/soc Merge "Samsung mach updates for v3.20" from Kukjin Kim: - add exynos3250 Supsend to RAM support - recognize MFC v8 devices for exynos5422/5800 - print CPU id/rev during kernel boot * tag 'samsung-update' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: EXYNOS: Add exynos3250 suspend-to-ram support ARM: EXYNOS: Recognize Samsung MFC v8 devices ARM: SAMSUNG: print CPU id on probe Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29Merge tag 'samsung-cleanup' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup Merge "Samsung cleanup for v3.20" from Kukjin Kim: - remove i2c sys configuration from mach-exynos/ : all related codes moved into i2c driver - remove Samsung specific DMA : every Samsung stuff uses dmaengine APIs * tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: SAMSUNG: remove unused DMA infrastructure ARM: EXYNOS: Remove i2c sys configuration related code Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29ARM: digicolor: select syscon and timerBaruch Siach
The digicolor interrupt controller driver now needs syscon. Also, as per clocksource maintainer request, we now have a separate config symbol, CONFIG_DIGICOLOR_TIMER, for the digicolor timer. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29ARM: digicolor: add minimal device tree descriptionBaruch Siach
cx92755.dtsi describes CX92755 on chip peripherals. cx92755_equinox.dts describes the Equinox evaluation board for the CX92755 SoC. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29arm: dma-mapping: Set DMA IOMMU ops in arm_iommu_attach_device()Laurent Pinchart
Commit 4bb25789ed28228a ("arm: dma-mapping: plumb our iommu mapping ops into arch_setup_dma_ops") moved the setting of the DMA operations from arm_iommu_attach_device() to arch_setup_dma_ops() where the DMA operations to be used are selected based on whether the device is connected to an IOMMU. However, the IOMMU detection scheme requires the IOMMU driver to be ported to the new IOMMU of_xlate API. As no driver has been ported yet, this effectively breaks all IOMMU ARM users that depend on the IOMMU being handled transparently by the DMA mapping API. Fix this by restoring the setting of DMA IOMMU ops in arm_iommu_attach_device() and splitting the rest of the function into a new internal __arm_iommu_attach_device() function, called by arch_setup_dma_ops(). Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Will Deacon <will.deacon@arm.com> Tested-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Olof Johansson <olof@lixom.net>
2015-01-29ARM: config: add DEVTMPFS option by default to keystone configMurali Karicheri
When using network driver on keystone and nfs rootfs is used following error displayed and device halts. Missing devtmpfs, which is required for udev to run Halting... Add the DEVTMPFS option by default to fix this Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
2015-01-29ARM: 8284/1: sa1100: clear RCSR_SMR on resumeDmitry Eremin-Solenikov
StrongARM core uses RCSR SMR bit to tell to bootloader that it was reset by entering the sleep mode. After we have resumed, there is little point in having that bit enabled. Moreover, if this bit is set before reboot, the bootloader can become confused. Thus clear the SMR bit on resume just before clearing the scratchpad (resume address) register. Cc: stable@vger.kernel.org Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8283/1: sa1100: collie: clear PWER register on machine initDmitry Eremin-Solenikov
Let kernel drivers to control wakeup sources instead of hardcoding them in the collie.c board file. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8282/1: sa1100: use handle_domain_irqDmitry Eremin-Solenikov
Use handle_domain_irq instead of handle_IRQ to automatically map hardware irq number to virq. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8281/1: sa1100: move GPIO-related IRQ code to gpio driverDmitry Eremin-Solenikov
As a part of driver consolidation, move GPIO-related IRQ code to drivers/gpio/gpio-sa1100.c. The code does not use GPIOLIB_IRQCHIP (yet), because sa1100 does not have a device for gpios, which is a requirement for GPIOLIB_IRQCHIP. This will be the next step. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8280/1: sa1100: switch to irq_domain_add_simple()Dmitry Eremin-Solenikov
As now both SC and GPIO irq domains start from 0 hwirq and do not contain holes, switch to using irq_domain_add_simple() instead of irq_domain_add_legacy(). Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8279/1: sa1100: merge both GPIO irqdomainsDmitry Eremin-Solenikov
Now there is no difference between low and high GPIO irqdomains. Merge them into single irqdomain handling all GPIOs. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8278/1: sa1100: split irq handling for low GPIOsDmitry Eremin-Solenikov
Low GPIO pins use an interrupt in SC interrupts space. However it's possible to handle them as if all the GPIO interrupts are instead tied to single GPIO handler, which later decodes GEDR register and chain-calls next IRQ handler. So split first 11 interrupts into system part (IRQ_GPIO0_SC - IRQ_GPIO10_SC) which work exactly like the rest of system controller interrupts and real GPIO interrupts (IRQ_GPIO0..IRQ_GPIO10). A single handler sa1100_gpio_handler then decodes and calls next handler. Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8298/1: ARM_KERNMEM_PERMS only works with MMU enabledArnd Bergmann
The recently added ARM_KERNMEM_PERMS feature works by manipulating the kernel page tables, which obviously requires an MMU. Trying to enable this feature when the MMU is disabled results in a lot of compile errors in mm/init.c, so let's add a Kconfig dependency to avoid that case. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8295/1: fix v7M build for !CONFIG_PRINTKRob Herring
Minimal builds for v7M are broken when printk is disabled. The caller is assembly so add the necessary ifdef around the call. Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8294/1: ATAG_DTB_COMPAT: remove the DT workspace's hardcoded 64KB sizeNicolas Pitre
There is currently a hardcoded limit of 64KB for the DTB to live in and be extended with ATAG info. Some DTBs have outgrown that limit: $ du -b arch/arm/boot/dts/omap3-n900.dtb 70212 arch/arm/boot/dts/omap3-n900.dtb Furthermore, the actual size passed to atags_to_fdt() included the stack size which is obviously wrong. The initial DTB size is known, so use it to size the allocated workspace with a 50% growth assumption and relocate the temporary stack above that. This is also clamped to 32KB min / 1MB max for robustness against bad DTB data. Reported-by: Pali Rohár <pali.rohar@gmail.com> Tested-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: 8288/1: dma-mapping: don't detach devices without an IOMMU during teardownWill Deacon
When tearing down the DMA ops for a device via of_dma_deconfigure, we unconditionally detach the device from its IOMMU domain. For devices that aren't actually behind an IOMMU, this produces a "Not attached" warning message on the console. This patch changes the teardown code so that we don't detach from the IOMMU domain when there isn't an IOMMU dma mapping to start with. Reported-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-01-29ARM: zynq: Simplify SLCR initializationMichal Simek
Based on "mfd: syscon: Decouple syscon interface from platform devices" (sha1: bdb0066df96e74a4002125467ebe459feff1ebef) SLCR driver can use syscon/regmap drivers directly. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-29ARM: zynq: PM: Fixed simple typo.Moritz Fischer
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-29ARM: zynq: Setup default gpio number for Xilinx ZynqMichal Simek
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-01-29ARM: integrator: Convert PCI to use generic config accessorsRob Herring
Convert the integrator PCI driver to use the generic config access functions. This changes accesses from __raw_readX/__raw_writeX to readX/writeX variants. The spinlock is removed because it is unnecessary. The config read and write functions are already protected with a spinlock and no access can occur during the .pre_init function. [arnd: remove unused "flags"] Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> CC: Russell King <linux@arm.linux.org.uk> CC: linux-arm-kernel@lists.infradead.org