Commit graph

42035 commits

Author SHA1 Message Date
Hans Ulli Kroll d330615b90 ARM: gemini: Setup timer3 as free running timer
In the original driver it is missed to setup a free running driver.
This timer is needed for the scheduler.
So setup it.

Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-13 11:41:52 +02:00
Hans Ulli Kroll 5dc9073988 ARM: gemini: Use timer1 for clockevent
Use timer1 as clockevent timer.
The old driver uses timer2, which has some issues to setup

Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-13 11:41:34 +02:00
Hans Ulli Kroll 570ceed4e2 ARM: gemini: Add missing register definitions for gemini timer
Add missing register defintions for the gemini clocksource
Also do some #define' cleanup to make the code more readable.

Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-13 11:41:16 +02:00
Viresh Kumar a54868b460 ARM: ep93xx/timer: Migrate to new 'set-state' interface
Migrate EP93xx driver to the new 'set-state' interface provided by
clockevents core, the earlier 'set-mode' interface is marked obsolete
now.

This also enables us to implement callbacks for new states of clockevent
devices, for example: ONESHOT_STOPPED.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-13 11:23:27 +02:00
Felipe Balbi 8cbd4c2f6a arm: boot: dts: am4372: add ARM timers and SCU nodes
AM437x devices sport SCU, TWD and Global timers,
let's add them to DTS so they have a chance to
probe and be used by Linux.

Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-13 01:25:11 -07:00
Chen-Yu Tsai 14fee74ca8 ARM: dts: sun6i: Add security system crypto engine clock and device nodes
A31/A31s have the same "Security System" crypto engine as A10/A20,
but with a separate reset control.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-08-13 15:13:27 +08:00
Marc Zyngier f120cd6533 KVM: arm/arm64: timer: Allow the timer to control the active state
In order to remove the crude hack where we sneak the masked bit
into the timer's control register, make use of the phys_irq_map
API control the active state of the interrupt.

This causes some limited changes to allow for potential error
propagation.

Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2015-08-12 11:28:26 +01:00
Marc Zyngier 6c3d63c9a2 KVM: arm/arm64: vgic: Allow dynamic mapping of physical/virtual interrupts
In order to be able to feed physical interrupts to a guest, we need
to be able to establish the virtual-physical mapping between the two
worlds.

The mappings are kept in a set of RCU lists, indexed by virtual interrupts.

Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2015-08-12 11:28:25 +01:00
Marc Zyngier abdf584383 arm/arm64: KVM: Move vgic handling to a non-preemptible section
As we're about to introduce some serious GIC-poking to the vgic code,
it is important to make sure that we're going to poke the part of
the GIC that belongs to the CPU we're about to run on (otherwise,
we'd end up with some unexpected interrupts firing)...

Introducing a non-preemptible section in kvm_arch_vcpu_ioctl_run
prevents the problem from occuring.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2015-08-12 11:28:23 +01:00
Marc Zyngier 9a99d05070 arm/arm64: KVM: Fix ordering of timer/GIC on guest entry
As we now inject the timer interrupt when we're about to enter
the guest, it makes a lot more sense to make sure this happens
before the vgic code queues the pending interrupts.

Otherwise, we get the interrupt on the following exit, which is
not great for latency (and leads to all kind of bizarre issues
when using with active interrupts at the HW level).

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-08-12 11:28:23 +01:00
Will Deacon 0ca326de7a locking, ARM, atomics: Define our SMP atomics in terms of _relaxed() operations
By defining our SMP atomics in terms of relaxed operations, we gain
a small reduction in code size and have acquire/release/fence variants
generated automatically by the core code.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Waiman.Long@hp.com
Cc: paulmck@linux.vnet.ibm.com
Link: http://lkml.kernel.org/r/1438880084-18856-9-git-send-email-will.deacon@arm.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-08-12 11:59:10 +02:00
Ingo Molnar f52609fdab Merge branch 'locking/arch-atomic' into locking/core, because it's ready for upstream
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-08-12 11:44:30 +02:00
Keerthy 05743b3a09 ARM: dts: AM4372: Add the am4372-rtc compatible string
am4372-rtc string was already part of dts, introduced to identify
the rtc specific to am4372 family of SoCs. It was removed in one of the
previous patches. Adding back the same with appropriate documentation.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-12 01:49:02 -07:00
Tony Lindgren aced048432 Merge branch 'for-4.3/ti-clk-dt' of https://github.com/t-kristo/linux-pm into omap-for-v4.3/dt-v2 2015-08-12 01:38:08 -07:00
Maxime Ripard 06f282757a ARM: sun9i: Wrap the clock-indices
Wrap the clock-indices to match the wrapping of the clock-output-names in
order to make it easier to match indices to names.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
2015-08-12 00:59:13 -07:00
Maxime Ripard c0a6e360a4 ARM: sun8i: Add clock indices
The A23 and A33 gates have a non continuous set of clock IDs that are
valid. Add the clock-indices property to the DT to express this.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
2015-08-12 00:59:11 -07:00
Maxime Ripard 6bfe30b2fd ARM: sun7i: Add clock indices
The A20 gates have a non continuous set of clock IDs that are valid. Add
the clock-indices property to the DT to express this.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
2015-08-12 00:59:09 -07:00
Maxime Ripard dbbb69223c ARM: sun6i: Add clock indices
The A31 gates have a non continuous set of clock IDs that are valid. Add
the clock-indices property to the DT to express this.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
2015-08-12 00:59:07 -07:00
Maxime Ripard dd4de433aa ARM: sun5i: Add clock indices
The A10s and A13 gates have a non continuous set of clock IDs that are
valid. Add the clock-indices property to the DT to express this.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
2015-08-12 00:59:04 -07:00
Maxime Ripard a38540068f ARM: sun4i: Add clock indices
The A10 gates have a non continuous set of clock IDs that are valid. Add
the clock-indices property to the DT to express this.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
2015-08-12 00:59:02 -07:00
Geert Uytterhoeven 60c0745a80 ARM: shmobile: r8a7794 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:28 +09:00
Geert Uytterhoeven 4b31bad51f ARM: shmobile: r8a7793 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:27 +09:00
Geert Uytterhoeven 797a0626e0 ARM: shmobile: r8a7791 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.  Notable
exceptions are the "display" and "sound" nodes, which represent multiple
SoC devices, each having their own MSTP clocks.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:27 +09:00
Geert Uytterhoeven 484adb0058 ARM: shmobile: r8a7790 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.  Notable
exceptions are the "display" and "sound" nodes, which represent multiple
SoC devices, each having their own MSTP clocks.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:27 +09:00
Geert Uytterhoeven 33c3632a3f ARM: shmobile: r8a7779 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:26 +09:00
Geert Uytterhoeven a670f3667a ARM: shmobile: r8a7778 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.  A notable
exception is the "sound" node, which represents multiple SoC devices,
each having their own MSTP clocks.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:26 +09:00
Geert Uytterhoeven cbe1f83818 ARM: shmobile: r7s72100 dtsi: Add CPG/MSTP Clock Domain
Add an appropriate "#power-domain-cells" property to the cpg_clocks
device node, to create the CPG/MSTP Clock Domain.

Add "power-domains" properties to all device nodes for devices that are
part of the CPG/MSTP Clock Domain and can be power-managed through an
MSTP clock.  This applies to most on-SoC devices, which have a
one-to-one mapping from SoC device to DT device node.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 11:15:26 +09:00
Simon Horman 3f3f0ea0af Merge branch 'clk-for-v4.3' into dt-for-v4.3 2015-08-12 11:15:19 +09:00
Geert Uytterhoeven f04b486d34 clk: shmobile: rz: Add CPG/MSTP Clock Domain support
Add Clock Domain support to the RZ Clock Pulse Generator (CPG) driver
using the generic PM Domain.  This allows to power-manage the module
clocks of SoC devices that are part of the CPG/MSTP Clock Domain using
Runtime PM, or for system suspend/resume.

SoC devices that are part of the CPG/MSTP Clock Domain and can be
power-managed through an MSTP clock should be tagged in DT with a proper
"power-domains" property.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Stephen Boyd <sboyd@codeaurora.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 10:31:28 +09:00
Geert Uytterhoeven 8bc964aa25 clk: shmobile: r8a7778: Add CPG/MSTP Clock Domain support
Add Clock Domain support to the R-Car M1A Clock Pulse Generator (CPG)
driver using the generic PM Domain.  This allows to power-manage the
module clocks of SoC devices that are part of the CPG/MSTP Clock Domain
using Runtime PM, or for system suspend/resume.

SoC devices that are part of the CPG/MSTP Clock Domain and can be
power-managed through an MSTP clock should be tagged in DT with a proper
"power-domains" property.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Stephen Boyd <sboyd@codeaurora.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-12 10:31:27 +09:00
Krzysztof Kozlowski 2b347c6494 ARM: exynos_defconfig: Enable cpufreq-dt driver
With the latest patches the cpufreq-dt can be used on multiple
Exynos SoCs: 3250, 4210, 4212, 4412 and 5250.

Enable it along with default ondemand governor to conserve the energy,
reduce temperature while maintaining acceptable performance.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-08-12 08:17:31 +09:00
Javier Martinez Canillas c3e71f4b5f ARM: multi_v7_defconfig: Enable max77802 regulator
The Exynos5420 based Peach Pit and Exynos5800 based Peach Pi Chromebooks
use the Maxim max77802 Power Management IC (PMIC). This PMIC has besides
other devices, a set of regulators that can be controller over I2C.

Commit f3caa529c6 ("ARM: multi_v7_defconfig: Enable max77802 regulator,
rtc and clock drivers") was supposed to enable the config option for the
regulator driver as a module but the final version that landed did not
include this. The commit was modified and the REGULATOR_MAX77802 removed
since it was thought to be useless.

Unfortunately that's not the case for the mentioned reason above so this
patch enables the needed Kconfig option.

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
[kgene@kernel.org: fixed ordering according to make savedefconfig]
Signed-off-by: Kukjin Kim <kgene@kernel.org>
2015-08-12 08:15:02 +09:00
Kishon Vijay Abraham I 73c8f0cbb0 ARM: dts: am57xx-evm: Add 'gpios' property with gpio2_8
gpio2_8 is connected to the PCIe_RESETn line and it has to be driven low to
reset the PCIe cards.  Add gpios property to PCIe DT node.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Tony Lindgren <tony@atomide.com>
2015-08-11 15:59:16 -05:00
Russell King efaa6e266b firmware: qcom_scm-32: replace open-coded call to __cpuc_flush_dcache_area()
Rathe rthan directly accessing architecture internal functions, provide
an "method"-centric wrapper for qcom_scm-32 to do what's necessary to
ensure that the secure monitor can see the data.  This is called
"secure_flush_area" and ensures that the specified memory area is
coherent across the secure boundary.

Acked-by: Andy Gross <agross@codeaurora.org>
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-08-11 18:45:00 +01:00
Eric Anholt b35ef52672 ARM: bcm2835: Add the firmware driver information to the RPi DT
Signed-off-by: Eric Anholt <eric@anholt.net>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2015-08-11 16:56:32 +01:00
Anson Huang 3603257553 ARM: dts: imx6ul: add snvs power key support
Add i.MX6UL SNVS power key support.

Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:27 +08:00
Anson Huang 5b032872c9 ARM: dts: imx6ul: add RTC support
Add RTC support for i.MX6UL.

Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:27 +08:00
Anson Huang 18619ff55d ARM: dts: imx6ul: enable GPC as extended interrupt controller
Enable GPC as extended interrupt controller of
GIC, as GPC needs to manage wakeup source for
low power modes.

Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:26 +08:00
Anson Huang 461aa6d723 ARM: dts: imx6sx: correct property name for wakeup source
Commit(def56bb input: snvs_pwrkey: use "wakeup-source"
as deivce tree property name) replaces the property name
of "wakeup" with "wakeup-source", update this change
in i.MX6SX dtsi accordingly.

Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:26 +08:00
Stefan Agner def0641e2f ARM: dts: add property for maximum ADC clock frequencies
The ADC clock frequency is limited depending on modes used. Add
device tree property which allow to set the mode used and the
maximum frequency ratings for the instance. These allows to
set the ADC clock to a frequency which is within specification
according to the actual mode used.

Acked-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:25 +08:00
Frank Li abb9f253cd ARM: dts: imx7d: enable snvs rtc, onoffkey and power off
Change SNVS rtc to syscon interface.
Enable onoff key and power off function.

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:25 +08:00
Fugang Duan 5e8cdb0139 ARM: dts: imx6ul-14x14-evk: add fec1 and fec2 support
Add ethernet fec1 and fec2 support for i.MX6ul 14x14 evk board.

Signed-off-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:24 +08:00
Fugang Duan 01f3dc7de3 ARM: dts: imx: add fec1 and fec2 nodes for SOC i.MX6UL
SOC i.MX6UL has two ethernet MACs, add fec1 and fec2 support for i.MX6UL.

Signed-off-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:24 +08:00
Philippe Reynes 91eca8d57c ARM: dts: imx27: add support of internal rtc
Add support of internal rtc on imx27.

Signed-off-by: Philippe Reynes <tremyfr@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:23 +08:00
Stefan Agner 4f182ff7d4 ARM: dts: vf-colibri: define stdout-path property
Define Vybrid's UART0, connected to the Colibri pinout UART_A, as
standard output.

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:22 +08:00
Claudiu Manoil 055223d4d2 ARM: dts: ls1021a: Enable the eTSEC ports on QDS and TWR
This enables the available eTSEC ethernet ports for the
ls1021aqds and ls1021atwr boards.
For the QDS, SGMII connections (via riser cards) are assumed
for the eTSEC0 and eTSEC1 ports as default configuration.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:22 +08:00
Claudiu Manoil d69cb5d7ea ARM: dts: ls1021a: Add the eTSEC controller nodes
Add basic support for all the eTSEC controllers on the
ls1021a SoC.  Second interrupt group register blocks
and their corresponding Rx/Tx/Err interrupt sources are
included as well for each eTSEC node.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:21 +08:00
Frank Li 5ff807a567 ARM: dts: imx6ul: add qspi support
enable qspi support

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:21 +08:00
Frank Li 4e06dfabe8 ARM: dts: imx6ul: fix low case define in imx6ul-pinfunc.h
some pin name should be capital "_B" instead of "_b"

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:20 +08:00
Frank Li cad2cb69f5 ARM: dts: imx6ul: add usb host and function support
Enable usb host and function driver

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:20 +08:00
Sanchayan Maity 9b1793afef ARM: dts: vfxxx: Add io-channel-cells property for ADC node
This commit adds io-channel-cells property to the ADC node. This
property is required in order for an IIO consumer driver to work.
Especially required for Colibri VF50, as the touchscreen driver
uses ADC channels with the ADC driver based on IIO framework.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:19 +08:00
Alison Wang 50897cb6fa ARM: dts: ls1021a: Add dts nodes for audio on LS1021A
This patch adds dts nodes for audio on LS1021A.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:19 +08:00
Peter Chen 0f92fd49ff ARM: imx6qdl-sabreauto.dtsi: enable USB support
Add USBOTG and USB host 1 support

Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:18 +08:00
Frank Li 95d739b5ca ARM: dts: imx: update snvs to use syscon access register
snvs is MFP device. Change dts to use syscon to allocate register resource.
snvs power off also switch to common syscon-poweroff

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:17 +08:00
Frank Li a5fcccbc6e ARM: dts: imx: add imx6ul and imx6ul evk board support
Add new SOC i.MX6UL dtb file support, including evk board
support

i.MX6 Ultralite processor include one ARM cortext-A7 core.
Offer high perfomance and lowest power consumption.

Main included:
- 4 MMC/SD/SDIO
- 2 USB 2.0 OTG
- 3 I2S/SAI/AC97
- 4 eCSPI
- 4 I2C
- 2 ENET
- 2 CAN
- 3 wdog
- ASRC
- 8 uart
- LCDIF
- PXP

Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Fancy Fang <chen.fang@freescale.com>
Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:17 +08:00
Frank Li 7eeb662ad2 ARM: dts: add i.mx6ul pin function include file
add pin mux define file

Signed-off-by: Bai Ping <b51503@freescale.com>
Signed-off-by: Anson Huang <b20788@freescale.com>
Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:16 +08:00
Cory Tusar 3b7816bade ARM: dts: vfxxx: Include support for esdhc0 functionality.
Extend the existing Vybrid eSDHC devicetree implementation to also
describe the esdhc0 functional block.

Tested on a custom VF610-based board with a Toshiba THGBM1G5D2EBAI7 eMMC
module attached to esdhc0.

Signed-off-by: Cory Tusar <cory.tusar@pid1solutions.com>
Acked-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:15 +08:00
Fabio Estevam ed339363de ARM: dts: imx6qdl-sabreauto: Allow HDMI and LVDS to work simultaneously
Currently it is not possible to have HDMI and LVDS working simultaneously,
because both ports try to use PLL5.

Move the LVDS clock parent to PLL3_USB_OTG, so that HDMI and LVDS can be
driven from independent sources.

With this change the LDB pixel clock goes to 68.57 MHz, which is still
within the valid range for the HSD100PXN1 LVDS panel.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:15 +08:00
Cory Tusar 6f5e69672e ARM: dts: vfxxx: Include support for qspi1 functionality.
This commit extends the existing Vybrid QSPI devicetree implementation
to also describe the qspi1 functional block.

Signed-off-by: Cory Tusar <cory.tusar@pid1solutions.com>
Reviewed-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:14 +08:00
Cory Tusar f4b89232f2 ARM: dts: vf610: Add missing QuadSPI register mapping and names.
Both 'reg' and 'reg-names' are required properties according to binding
documentation, and both should contain two items.

Signed-off-by: Cory Tusar <cory.tusar@pid1solutions.com>
Acked-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:14 +08:00
Haikun Wang c47d6e380b ARM: dts: ls1021a: Update 'dspi' device node compatible string
Freescale DSPI driver has been updated and supports TCF interrupt type now.
In the new driver we choose the interrupt type according the compatible
string of the device node.
This patch update the compatible string of DSPI device node of LS1021A in
order to use the correct interrupt type.

Signed-off-by: Haikun Wang <haikun.wang@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:13 +08:00
Frank Li 3adab7c796 ARM: dts: imx7d: add cortex-a7 coresight component
Added etm, etb, funnel and replicator

usage example:

    echo 1 >/sys/bus/coresight/devices/30086000.etr/enable_sink
    echo 1 >/sys/bus/coresight/devices/3007c000.etm/enable_source

        coresight-tmc 30086000.etr: TMC enabled
        coresight-replicator replicator.1: REPLICATOR enabled
        coresight-tmc 30084000.tmc: TMC enabled
        coresight-funnel 30083000.funnel: FUNNEL inport 0 enabled
        coresight-funnel 30041000.funnel: FUNNEL inport 0 enabled
        coresight-etm3x 3007c000.etm: ETM tracing enabled

    etm enable here.
    trace data save at /dev/30086000.etr

    cat /dev/30086000.etr > trace.data

        coresight-tmc 30086000.etr: TMC read start
        coresight-tmc 30086000.etr: TMC read end

    use ptm2human(https://github.com/hwangcc23/ptm2human) to show trace data

    ptm2human -i trace.data

Signed-off-by: Frank Li <Frank.Li@freescale.com>
Acked-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:12 +08:00
Fabio Estevam 7804fbcfe5 ARM: dts: imx6qdl-nitrogen6x: Allow HDMI and LVDS to work simultaneously
Currently it is not possible to have HDMI and LVDS working simultaneously,
because both ports try to use PLL5.

Move the LVDS clock parent to PLL3_USB_OTG, so that HDMI and LVDS can be
driven from independent sources.

With this change the LDB pixel clock goes to 68.57 MHz, which is still
within the valid range for the HSD100PXN1 LVDS panel.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Tested-by: Gary Bisson <gary.bisson@boundarydevices.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:12 +08:00
Fabio Estevam b6db3097db ARM: dts: imx6qdl-sabrelite: Allow HDMI and LVDS to work simultaneously
Currently it is not possible to have HDMI and LVDS working simultaneously,
because both ports try to use PLL5.

Move the LVDS clock parent to PLL3_USB_OTG, so that HDMI and LVDS can be
driven from independent sources.

With this change the LDB pixel clock goes to 68.57 MHz, which is still
within the valid range for the HSD100PXN1 LVDS panel.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Tested-by: Gary Bisson <gary.bisson@boundarydevices.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:11 +08:00
Fabio Estevam d23dfefaf0 ARM: dts: imx6sl-warp: Add changes for rev1.12
Warp board rev1.12 is the version of the hardware that will be publicly
available for the customers.

It uses UART5 as the Bluetooth serial port as well as some
additional signals for HOSTWAKE on Wifi and Bluetooth.

Make the changes to support the rev1.12 hardware.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:11 +08:00
Fabio Estevam d28be499c4 ARM: dts: imx6qdl-sabresd: Allow HDMI and LVDS to work simultaneously
Currently it is not possible to have HDMI and LVDS working simultaneously,
because both ports try to use PLL5.

Move the LVDS clock parent to PLL3_USB_OTG, so that HDMI and LVDS can be
driven from independent sources.

With this change the LDB pixel clock goes to 68.57 MHz, which is still
within the valid range for the HSD100PXN1 LVDS panel.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-11 23:15:10 +08:00
Olof Johansson 1a08a84cc6 Third Round of Renesas ARM Based SoC DT Updates for v4.3
* Add JPU support: r8a7791 and r8a7790 SoCs
 * Add MMCIF and PFC support: r8a7794 SoC
 * Add initial support for r8a7794/silk
 * Add missing "gpio-ranges" to gpio nodes: sh73a0, r8a7740 and r8a73a4 SoCs
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVxAtfAAoJENfPZGlqN0++WpMP/R11KWxqa77Z4PDUk1IBUZgl
 JA9d0qK9K3s8YXIgDpPUa3fZzjqOen3LAzFx/GH+hqOGfNEvqnyj1P4LfdjmyM3u
 SHkNkMedEI3ioULYUwISNcvYl343llYcOoICFQhZQe+OCfpPMlCAMC9rUcBV18rE
 ZwkxyWH8+sP3Fj8Lbom8woIu6Y20UZjpUBEzbKLgOcaH71wV9rwK4SBlbPIbeFgn
 0A0tQQZh2bFUj9hRoK2hEm4yq812s4bOUxp3zolVJDNA1KG1xV+Ix+X7WK8b5WhH
 yJpH0tcVrR7OA520wEysYdMS3jcLXV1SUDLNThCVCYMYTAsR7B+EhuLV9Rt5x+jw
 BcIptJuCfYnkkO8BVTOBbmvAjOohG70yZxr577+9TKh59c6K6b0Qypm7mvLH/1GA
 SCaTSiZM8od0Foal1mIULoLRhimXxUUppxrVcbWcRZSgxcJSXiBqJRrY6ESXVW3F
 6Pv7M384fOw4MRsA6nSHQcjF3a0jCW5VdcgXZ5wXGrp6QJYC0wr50vufnhzkiKez
 aV0Fo+XwBjngwIVyITslSWhiOIqU9l9YRg22cwjgOV6EVqRBq39NOnCjhaQMX4LI
 EErm0bn+8Jb578y6kpygTfeMXXI0+gUMeOzYoXd7PdSinS1XuCLw1osqdGs0yEas
 Na5FU+luGEiyPoUH2chq
 =SkD5
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt3-for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt

Third Round of Renesas ARM Based SoC DT Updates for v4.3

* Add JPU support: r8a7791 and r8a7790 SoCs
* Add MMCIF and PFC support: r8a7794 SoC
* Add initial support for r8a7794/silk
* Add missing "gpio-ranges" to gpio nodes: sh73a0, r8a7740 and r8a73a4 SoCs

* tag 'renesas-dt3-for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: sh73a0 dtsi: Add missing "gpio-ranges" to gpio node
  ARM: shmobile: r8a7740 dtsi: Add missing "gpio-ranges" to gpio node
  ARM: shmobile: r8a73a4 dtsi: Add missing "gpio-ranges" to gpio node
  ARM: shmobile: silk: add eMMC DT support
  ARM: shmobile: r8a7794: add MMCIF DT support
  ARM: shmobile: silk: add Ether DT support
  ARM: shmobile: silk: initial device tree
  ARM: shmobile: r8a7794: add PFC DT support
  ARM: shmobile: r8a7791: Add JPU device node.
  ARM: shmobile: r8a7790: Add JPU device node.

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:31:53 +02:00
Linus Walleij 4f2f1f76dc ARM: nomadik: push accelerometer down to boards
The two Nomadik variants have the accelerometer mounted on
different I2C lines. Push the definition down to the top-level
board DTS files to get things right.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:29:59 +02:00
Linus Walleij 98badfd31c ARM: nomadik: move l2x0 setup to device tree
The cache setup magic value in the Nomadik machine is plain wrong,
the correct settings can be done using device tree in accordance
with the settings from ST's own port.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:29:59 +02:00
Linus Walleij 1cb3375bb5 ARM: nomadik: selectively enable UART0 on boards
The S8815 board is using RX/TX on UART0, and the NHK8815 is
using RX/TX and CTS/RTS (the latter connected to a Bluetooth
chip). Activate the right groups with the u0 UART0 function
on each board and undisable it. Get rid of the old erroneous
default definition from the SoC file.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:29:58 +02:00
Linus Walleij 4cec8cd790 ARM: nomadik: move hog code to use DT hogs
Instead of introducing a board-specific DT node for biasing the
MMC/SD and SATA ports, use the new device tree hogs.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:29:57 +02:00
Olof Johansson 1e86355adc Omap device tree changes for v4.3 merge window. Pretty much all
just trivial additions to configure devices for various SoCs and
 boards:
 
 - Updates for omap3-devkit8000 board support
 
 - M3 coprosessor, regulator, mux, RTC and eMMC updates for am437x
 
 - MMC, regmap, mux and dwc3 updates for dra7 and omap5
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVwyzeAAoJEBvUPslcq6Vz4qYP/iDxLzTEcamYNGgzlV6ANvu1
 rwjyI23u1h6HI7d2ndUOuYWCvkMk4NQITPSKrYrMARMagkQZq38Koqx0rxF0U8GA
 9IoETnCqTn7SrmhtTFr0PsciJ9n8g8vLoq9k8EfrohvcQl2Xui07dYcz3l+tK8RG
 gXTys6eij9Gyg3blUcDqqZOSl1xjZu7mNou/jc8zlpXrQX9WCjYrVM+U0xCkigA8
 OT3NTC+dldTNhgAj0x6JmRJqjfmJZdb2ZnWpqjfiktzKRm1mkqDubGUAlAOIayTq
 3edt5WHXnDC2M+lfLi/bf83wrXDqXPHTuYO6JNHZapVLJKP+m+vAbwfT2CRLrTIr
 UetBhlYupAPHBo8pqEBAZvvBM4fkLOtXaDaoF1kW6el5MmobN+lU1BnUrSWs1kFz
 cv2tniUVKzy6S0UGvJXSp2LOLX1j0VsMsnajbzwkL6rrUujD4qwze3K+GL0rYKSS
 eV3LItXXukAIpBIgg6AkH4DzHWMHtOKvHyHmvR8j58UFWPHm1tMJC4CSA+31pVL2
 WQqy698hWvphyYn6UDDJ9lLfgmshokAdVNYwY7Br7CSa3vg2jixStt4lXFQzC8XA
 6/pvApBLpcEs0iYPcCldyql08dZpyFaxHElziEl3zXG0spsljV6zPHflIYDrnp2B
 B8DvwHBjCkr9jvHwH9Wd
 =S0dj
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.3/dt-pt3' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

Omap device tree changes for v4.3 merge window. Pretty much all
just trivial additions to configure devices for various SoCs and
boards:

- Updates for omap3-devkit8000 board support

- M3 coprosessor, regulator, mux, RTC and eMMC updates for am437x

- MMC, regmap, mux and dwc3 updates for dra7 and omap5

* tag 'omap-for-v4.3/dt-pt3' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (27 commits)
  ARM: dts: omap3-devkit8000: Add ADS7846 Touchscreen support
  ARM: dts: omap3-devkit8000: add LCD panels
  ARM: dts: omap3-devkit8000: Add DSS' DVI support
  ARM: dts: omap3-devkit8000: Add S-video output support
  ARM: dts: omap3-devkit8000: Add keymap support
  ARM: dts: omap3-devkit8000: Add PMU stat support
  ARM: dts: omap3-devkit8000: Add user button support
  ARM: dts: am437x-gp-evm: Add regulator-always-on and regulator-boot-on for RTC DCDCs
  ARM: dts: AM4372: Reorder the rtc compatible string
  ARM: dts: am437x-gp-evm: Add eMMC support
  ARM: dts: am437x-gp-evm: Add gpio-hog for configuring eMMC/NAND driver
  ARM: dts: am43xx: Introduce MUX_MODE9 for pinctrl
  ARM: dts: dra72-evm: Fix spurious card insert/removal interrupt
  ARM: dts: dra7-evm: Fix spurious card insert/removal interrupt
  ARM: dts: am57xx-beagle-x15: mmc1: remove redundant pbias-supply property
  ARM: dts: dra7-evm: Add MMCSD card removal GPIO
  ARM: dts: dra72-evm: Set max clock frequency of MMC1 and MMC2
  ARM: dts: dra7-evm: add evm_3v3_sd regulator
  ARM: dts: dra72-evm: add evm_3v3_sd regulator
  ARM: dts: AM4372: Add the wkup_m3_ipc node
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:23:24 +02:00
Olof Johansson e2e927c823 Few trivial omap MMC regression fixes for card voltages where
the syscon areas for PBIAS regulator were missing "simple-bus"
 that prevents probing of the children in the mapped region.
 
 This probably was not noticed earlier as the bootloader has
 already configured the regulator for the card in the slot.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVwympAAoJEBvUPslcq6VzeCUQAOBLq8Rq4DOe+VhbzPT9GRAw
 GoKAsJr1lBscj+WRQO5+pOeHE/vCXtQ/UrE+Y+9QXCjAV5IcSYYpNh7mHs5KnZzy
 B9EN5edlMp3Tt4U4Rej1PQLwCMa0TYHsj80lDH8yyMRLilts4SsFsWgdQ5PPYf4E
 O0T5RZR8cZgxsQWD6YyEg8FjCbsyTDOeiOJ0hnXX4qUPzS+AYcCsWpTFFrHfDrDB
 kH+mjEmFZCpxELeO8NFCBFz/HbLLzSRHafCmHFPfMn/kTeFhFnM4oHucTxyDpeMb
 9KXuehg9VsWjsZuCx34k7gf4emoxHDk9C/oHjVXJYBqR7RqOqYthB4cw4yijE9Ey
 KYEJGx9QlG76O2pU0EDlqVgUOQPV67q2fz2he6tIWbRulS8UHf6bcwiu412RifM8
 dXd4xctbrIprhbXjTt8pbuwx88z/1haO3H1Ir4yb++W7UBX6Bh1vfcjyzIzpyDbW
 /bRtq9MtM8Jx30mZDHyvE3LUKoIQo3oRWjm8ZqqjDulFd02CzyoGDs+hfCRt/ia4
 Tz+gCRJbF9g25XTbMxET8+7tzaztwW28jKKS6E9GM6jEDglG1avxku0yjx44yK6+
 iLgIeesXGbtKzPM9dWfXqzy7f6HfVvonvPPZlh1zygerr03G5Z3GY02ToiaEheEg
 aSe76i5wbpuhe6C+vWYy
 =qK3L
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.2/fixes-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

Few trivial omap MMC regression fixes for card voltages where
the syscon areas for PBIAS regulator were missing "simple-bus"
that prevents probing of the children in the mapped region.

This probably was not noticed earlier as the bootloader has
already configured the regulator for the card in the slot.

* tag 'omap-for-v4.2/fixes-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: dra7: Fix broken pbias device creation
  ARM: dts: OMAP5: Fix broken pbias device creation
  ARM: dts: OMAP4: Fix broken pbias device creation
  ARM: dts: omap243x: Fix broken pbias device creation

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:22:10 +02:00
Masahiro Yamada 63ef577d9a ARM: dts: UniPhier: add reference daughter board
This is used as a base board for reference core modules.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:20:56 +02:00
Gregory Fong b78bda5fd8 ARM: brcmstb: select ARCH_DMA_ADDR_T_64BIT for LPAE
Broadcom STB (BRCMSTB) has some 64-bit capable DMA and therefore needs
dma_addr_t to be a 64-bit size.  One user is the Broadcom SATA3 AHCI
controller driver.

Signed-off-by: Gregory Fong <gregory.0xf0@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:18:29 +02:00
Gregory Fong aeaeba1b6f ARM: BCM: Enable ARM erratum 798181 for BRCMSTB
Commit 04fcab32d3 ("ARM: 8111/1: Enable
erratum 798181 for Broadcom Brahma-B15") enables this erratum for
affected Broadcom Brahma-B15 CPUs when CONFIG_ARM_ERRATA_798181=y.
Let's make sure that config option is actually set.

Signed-off-by: Gregory Fong <gregory.0xf0@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:18:28 +02:00
Gregory Fong e73ff4d29a ARM: dts: brcmstb: add BCM7445 GPIO nodes
Need the aon_pm_l2_intc and irq0_aon_intc descriptions, so included
those as well.

Signed-off-by: Gregory Fong <gregory.0xf0@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:17:24 +02:00
Felix Fietkau 1ff8036352 ARM: BCM5301X: Add profiling support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:17:24 +02:00
Hauke Mehrtens db44f1342d ARM: BCM5301X: activate some additional options in pl310 cache controller
In the default Broadcom SDK the shared override is activated for this
cache controller, do the same in the upstream code. Data and
instruction prefetching is not activated by default for this cache
controller on the bcm53xx SoC, do it manually like it is done in the
vendor SDK.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:17:23 +02:00
Olof Johansson 42d0a99fd6 ARM: sirf: dts update for 4.3
some missed dt nodes or props for sirf dts for 4.3.
 Among them:
 - G2D
 - PWM
 - JPEG
 - Multimedia
 - PMU(performance monitor unit)
 - GMAC
 - SDR(software digital radio) and its DMA
 - pinmux for NAND
 - GPIO key
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVwiPfAAoJEDIv4aC191Rh1KsP+QHIpercYn+mUMS1+0eUE+y5
 2iTlZWmExRRFdCL6Hbp6apDmqDrEutcldCPg7dOXJLwjMjxljebpySTv3foQyMzG
 /VZYsxv0A4etjMEcJIiqUZByxR78BKWiPNVmc1cMLQCzWKg1DTcV5CLDquHetP7V
 uypSaVs1SWenO413Am4bEAkPHL8r84mRJm/40yXiq7+4YGRNtYR8tRN3AjtW969f
 jywDuttNuhYlDtKIubjKm3M3cvV/32UqTQrajvyapAoAoO9Xz3FdPZ3ABDO14AZM
 kuRBTr47D0pTxX/mxSGgSJLQZYp2CaxWsz+/TXSSjc1DR9yNp88JiRtTyHhtmDiT
 HUJE+JHj5u6QdJxngDQHVSVnUaxkX9CqrHBQG9m0r1ZBFs/vAanZ9ddcZht1CUS1
 wnem2IVbdDQm9qqrzISTUg1B6QbDKBOo25poyYw4nwabNE81luMwbVOb+BBirnvV
 JChaNjWrd/Qzv9YosfjRDv0Gzt8U7EnJ8u3WIX++PL8lVo7ubzqfKkzOI13WM1yR
 dZ9otI7Bej8Ps+D8BxQYHgL+st1qZ0oCkhndN8193VQRWxbG2Q/Hw0mzQdNJv5MS
 mNvdhCdZCY1kcx/oz3afVGks5PZ23CIkoCepHvsY5L5qdVPxfERfA0Y9Vy0CQ0xY
 vcNqMjxxgqK9TMsshQVy
 =VNaC
 -----END PGP SIGNATURE-----

Merge tag 'sirf-dts-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/baohua/linux into next/dt

ARM: sirf: dts update for 4.3

some missed dt nodes or props for sirf dts for 4.3.
Among them:
- G2D
- PWM
- JPEG
- Multimedia
- PMU(performance monitor unit)
- GMAC
- SDR(software digital radio) and its DMA
- pinmux for NAND
- GPIO key

* tag 'sirf-dts-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/baohua/linux:
  ARM: dts: atlas7: add a GPIO key for rearview button
  ARM: dts: atlas7: put pinctl property to get pinmux for NAND
  ARM: dts: atlas7: add software digital radio nodes and its DMA channels
  ARM: dts: atlas7: add lost PWM node
  ARM: dts: atlas7: add lost G2D node
  ARM: dts: atlas7: add multimedia codec node
  ARM: dts: atlas7: add alias name for spi device
  ARM: dts: atlas7: add lost gmac node
  ARM: dts: atlas7: add performance monitor unit node
  ARM: dts: atlas7: add lost jpeg node

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:10:01 +02:00
Masahiro Yamada a5e921b477 ARM: dts: uniphier: add ProXstream2 and PH1-LD6b SoC/board support
Initial version of DTSI for ProXstream2 and PH1-LD6b and DTS for
PH1-LD6b reference board.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
[olof: sort Makefile entries]
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:09:32 +02:00
Masahiro Yamada 474e5ac624 ARM: dts: uniphier: add PH1-Pro5 SoC support
Initial version of UniPhier PH1-Pro5 device tree.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:09:27 +02:00
Masahiro Yamada 68f46897ea ARM: dts: uniphier: add I2C controller device nodes
Add I2C controller device nodes for PH1-sLD3, PH1-LD4, PH1-sLD8
(FIFO-less I2C) and PH1-Pro4 (FIFO-builtin I2C).

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:09:21 +02:00
Olof Johansson b9efb8e30e Samsung 1st DT updates for v4.3
- for exynos3250
   : update video-phy node with syscon phandle
 - for exynos4210
   : add CPU OPP and regulator supply property
   : use labels for overriding nodes for exynos4210-universal_c210
 - for exynos4412-trats2
   : set max17047 over heat and voltage thresholds
 - for exynos5250 and 5420
   : extend exynos5250/5420-pinctrl nodes using labels
   : include exynos5250/5420-pinctrl after the nodes definitions
 - for exynos5410-smdk5410
   : clean up indentation
 - for exynos5422-odroidxu3
   : define default thermal-zones for exynos5422
   : enable USB3 regulators, TMU and thermal-zones
   : add pwm-fan node
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVwGFHAAoJEA0Cl+kVi2xqavgP/jo+jCcIZbXUGWT+zASqwhZ2
 Up0V2gKRBmjnCgxcy4+dkzDsMg2ey7jW/0ueunKNtru5zKa6BUxIWvm+eE7DCI2u
 5OpFkQZsmYt37xZEQsallzEKFIRhkxn7Czr11FPbt/lti5CbPc7V9bjX5XZvLXv5
 prt3NyRUsTl141g/wU6Hd0giiFvK9ql+dmWrCZNTUB7XVJHOjDvnGBIkSVkIVbsc
 GMMbCz/TGdurvl59oQB2DkSZVjx4A3jZ91RPlyVNBrOfEQJTNfD9/BsYy4/D9aIR
 koG/jaN+nCDE3I224k90WW0CjFXEGid/83cqBKWQTtk80Tfs1lnJkW6K6krfo9WK
 3oYVkRo22vCKVtEJxb4qXku4ZlPqxofbpEKGg0KIx+h69l7pSPYJTyr29P+W3zzI
 b7bS2JGxGQONNQvn0RKHzpCJTaLppnEmVechra+o76t6mb4aFfoDrfQP+rmphj2q
 bi4bnqnJ9mzA4+S1ASZKcIP8YwevCVANPOL3m36bEvcklKZ3e/ks7V1maNNjJ9Es
 51tWsG2XcbTpLBiCw1d1X8q36YnitpWzIfJbWy8mIYqDXdeCw0+lqCEjuPxBhqee
 XPvRh03tojPGyRsky0Q0RZ4BltZ824+Z71P/+SKv2TMO1SjOJsfGFwxvwlwxjQZx
 83K5MVVSXkDQJRymOsWF
 =gIS8
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Samsung 1st DT updates for v4.3

- for exynos3250
  : update video-phy node with syscon phandle
- for exynos4210
  : add CPU OPP and regulator supply property
  : use labels for overriding nodes for exynos4210-universal_c210
- for exynos4412-trats2
  : set max17047 over heat and voltage thresholds
- for exynos5250 and 5420
  : extend exynos5250/5420-pinctrl nodes using labels
  : include exynos5250/5420-pinctrl after the nodes definitions
- for exynos5410-smdk5410
  : clean up indentation
- for exynos5422-odroidxu3
  : define default thermal-zones for exynos5422
  : enable USB3 regulators, TMU and thermal-zones
  : add pwm-fan node

* tag 'samsung-dt-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: dts: Extend exynos5420-pinctrl nodes using labels instead of paths
  ARM: dts: Include exynos5420-pinctrl after the nodes were defined for exynos5420
  ARM: dts: Extend exynos5250-pinctrl nodes using labels instead of paths
  ARM: dts: Include exynos5250-pinctrl after the nodes were defined for exynos5250
  ARM: dts: Enable thermal-zones for exynos5422-odroidxu3
  ARM: dts: Define default thermal-zones for exynos5422
  ARM: dts: Enable TMU for exynos5422-odroidxu3
  ARM: dts: Add pwm-fan node for exynos5422-odroidxu3
  ARM: dts: Use labels for overriding nodes for exynos4210-universal_c210
  ARM: dts: Set max17047 over heat and voltage thresholds for exynos4412-trats2
  ARM: dts: Enable USB3 regulators for exynos5422-odroidxu3
  ARM: dts: Clean up indentation for exynos5410-smdk5410
  ARM: dts: add CPU OPP and regulator supply property for exynos4210
  ARM: dts: Update video-phy node with syscon phandle for exynos3250

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 15:01:26 +02:00
Olof Johansson 28d250c4ed Samsung cleanup for v4.3
- make the following headers local
   watchdog-reset, onenand-core, irq-uart, backlight,
   ata-core, regs-usb-hsotg-phy, spi-core, nand-core,
   fb-core and regs-srom headers
 - make the following c file local
   s5p-dev-mfc, dev-backlight and setup-camif c file
 - remove keypad-core.h file
 - drop owner assignment in pmu.c
 - remove duplicated define of SLEEP_MAGIC
 - make exynos5420_powerdown_conf() staic
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVwGDrAAoJEA0Cl+kVi2xqLOEP/3MN29FaxLisByvFmv5eS6v5
 NtRuULG1hXKA4h7RNVjcT7Ml2Dg6CFILmOxtHrKR8FY+rR5xx69+8QGBVMYSwcVu
 J/hdpwm5vay0X6wqNL3ZLnOu8W9wYPzQP32vTZE6yQbLA125VflQlDJ/muqnR0dj
 4ropnfX/Jkl6Kav02QuOKVmL0wO62/TV2JcBGT+sv9XPTzzXcB1ljer7XRywFKYG
 SSBsN1mu8IycncBASPxp+qEV3Z2HK5cLbMZJVXtAJOR0dOgO1ScHcPJ0dk25q4Ek
 VD3br5C4ptvoie9HuA6EoBv9Pr7VqX7DETe7zGgDh9Q+Wnn40/aTLwymMP8DwZuf
 1yKx36pdkNStt9COqJYb9ofI5CRqjyepUIkfN8kH4F2+izETKvbq3hCVcuDatPCy
 fhP9YH0b/EDsSwvEWxbIEWXHjLYhiCPtbIcqptepInjOWo8cKStAJl8nySq6foVr
 swqBKKdUJgT6xQiFRPdHkyopXl7lLKm7RPFGR7K8V5Yz3VAlKVcNpcsasjsdMJR8
 r5/u3XWSfmq/4imXfUixX3vCmUmkkKX1LljY8yzdakrh+CXAww9xAA0kS4FgLhlt
 3/acoTXjO6cO/zYxLGGzEBEo5Tmz+NwIT/Tu6L/8zSQOxYNH8CQpYPb2ttScvJ/o
 C87t3IG/8MbdkDi+03qU
 =95P4
 -----END PGP SIGNATURE-----

Merge tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup

Samsung cleanup for v4.3

- make the following headers local
  watchdog-reset, onenand-core, irq-uart, backlight,
  ata-core, regs-usb-hsotg-phy, spi-core, nand-core,
  fb-core and regs-srom headers
- make the following c file local
  s5p-dev-mfc, dev-backlight and setup-camif c file
- remove keypad-core.h file
- drop owner assignment in pmu.c
- remove duplicated define of SLEEP_MAGIC
- make exynos5420_powerdown_conf() staic

* tag 'samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: SAMSUNG: remove keypad-core header in plat-samsung
  ARM: SAMSUNG: local watchdog-reset header in mach-s3c64xx
  ARM: SAMSUNG: local onenand-core header in mach-s3c64xx
  ARM: SAMSUNG: local irq-uart header in mach-s3c64xx
  ARM: SAMSUNG: local backlight header in mach-s3c64xx
  ARM: SAMSUNG: local ata-core header in mach-s3c64xx
  ARM: SAMSUNG: local regs-usb-hsotg-phy header in mach-s3c64xx
  ARM: SAMSUNG: local spi-core header in mach-s3c24xx
  ARM: SAMSUNG: local nand-core header in mach-s3c24xx
  ARM: SAMSUNG: local fb-core header in mach-s3c24xx
  ARM: SAMSUNG: local regs-srom header in mach-exynos
  ARM: SAMSUNG: make local s5p-dev-mfc in mach-exynos
  ARM: SAMSUNG: make local dev-backlight in mach-s3c64xx
  ARM: SAMSUNG: make local setup-camif in mach-s3c24xx
  ARM: EXYNOS: Drop owner assignment in pmu.c
  ARM: EXYNOS: Remove duplicated define of SLEEP_MAGIC
  ARM: EXYNOS: Make local function static

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 14:59:02 +02:00
Olof Johansson fc293f5f2a ARM: shmobile: Fix mismerges
Turns out I fumbled a couple of the merge resolutions for marzen board removal.

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 14:43:09 +02:00
Nathan Lynch 09edea4f8f ARM: 8410/1: VDSO: fix coarse clock monotonicity regression
Since 906c55579a ("timekeeping: Copy the shadow-timekeeper over the
real timekeeper last") it has become possible on ARM to:

- Obtain a CLOCK_MONOTONIC_COARSE or CLOCK_REALTIME_COARSE timestamp
  via syscall.
- Subsequently obtain a timestamp for the same clock ID via VDSO which
  predates the first timestamp (by one jiffy).

This is because ARM's update_vsyscall is deriving the coarse time
using the __current_kernel_time interface, when it should really be
using the timekeeper object provided to it by the timekeeping core.
It happened to work before only because __current_kernel_time would
access the same timekeeper object which had been passed to
update_vsyscall.  This is no longer the case.

Cc: stable@vger.kernel.org
Fixes: 906c55579a ("timekeeping: Copy the shadow-timekeeper over the real timekeeper last")
Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-08-11 13:42:44 +01:00
Olof Johansson 7776f8e3f8 Samsung non-critical fixes for v4.3
- fix sparse warning for returning iomem
 - fix clock-frequency of display timing0 for exynos3250-rinato
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVwGDEAAoJEA0Cl+kVi2xqAbQP/0Hn7gQX0l2nHMYO3xgf8jrE
 EtGiwRAx/InxfmBtJYtZf6KH/F/FJPrXrJBa3co9RHgIPK9bEpX9EBLmKdGHEf9w
 d7IDhECyAlFSFII35NX+IzAW9+9AuRx80/5PcJyPikwHyswdVVQAe00/L4rqwLuu
 ajUk5s6FsLnk6vuUZDGLz5+u8OezdJIYdWHeaNigH9IbvkczKkJKhWOdcYbH8hux
 mKN+5rCwqk2zdz6lFcZ8yPH1FlkVFfDGSi/97p4iqzz5S9Oy477tCgKYFnPqYcHP
 gIFcK6FqlTGMeTuqHC1ISrXp+ZIEzKUAlHhaTRG5G9umvjRj8qS0TAEUqCr5dx50
 nQupX4EUL+LFasE1oztHf4WQodkH3Q8polNWPT95jtcvCO37UGMPdEJIKbv9vdD/
 aT3OcvDbr+TqwsepXkVmkbLqLsjwmeO3WjK0VfTmElPc4qekgXxNRr6Zr8oSj4GN
 DeWXDrf1uj0fpY0/VlIkrAD6w6AtMRGERBkmSIIyCI6JWapIlM3EBgtIc4FQSIxC
 1dswY0v0Nt/WB8NQ0uJeN/r8GcEcSj61gSo/1acH3H3QHLP2ZzeiCOCdDrGKM7d9
 u4HOYZ1im8rBnXFFGKp3HIokd/nn73a8u6GGD6ror8+Q2ods+lPHVQ8HP0gGrzJH
 JVJl1UALMvogxtC2mGiE
 =7m5l
 -----END PGP SIGNATURE-----

Merge tag 'samsung-non-critical-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/fixes-non-critical

Samsung non-critical fixes for v4.3

- fix sparse warning for returning iomem
- fix clock-frequency of display timing0 for exynos3250-rinato

* tag 'samsung-non-critical-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: EXYNOS: Use IOMEM_ERR_PTR when function returns iomem
  ARM: dts: fix clock-frequency of display timing0 for exynos3250-rinato

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-11 14:38:36 +02:00
Dan Williams 92b19ff50e cleanup IORESOURCE_CACHEABLE vs ioremap()
Quoting Arnd:
    I was thinking the opposite approach and basically removing all uses
    of IORESOURCE_CACHEABLE from the kernel. There are only a handful of
    them.and we can probably replace them all with hardcoded
    ioremap_cached() calls in the cases they are actually useful.

All existing usages of IORESOURCE_CACHEABLE call ioremap() instead of
ioremap_nocache() if the resource is cacheable, however ioremap() is
uncached by default. Clearly none of the existing usages care about the
cacheability. Particularly devm_ioremap_resource() never worked as
advertised since it always fell back to plain ioremap().

Clean this up as the new direction we want is to convert
ioremap_<type>() usages to memremap(..., flags).

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2015-08-10 23:07:06 -04:00
Dan Williams 2584cf8357 arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead
Preparation for uniform definition of ioremap, ioremap_wc, ioremap_wt,
and ioremap_cache, tree-wide.

Acked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2015-08-10 23:07:05 -04:00
Victoria Milhoan ab86ca0755 ARM: imx_v6_v7_defconfig: Select CAAM
Select CAAM for i.MX6 devices.

Signed-off-by: Victoria Milhoan <vicki.milhoan@freescale.com>
Tested-by: Horia Geantă <horia.geanta@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-08-10 23:19:05 +08:00
Victoria Milhoan b15e9ea583 ARM: dts: mx6sx: Add CAAM device node
Add CAAM device node to the i.MX6SX device tree.

Signed-off-by: Victoria Milhoan <vicki.milhoan@freescale.com>
Tested-by: Horia Geantă <horia.geanta@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-08-10 23:19:03 +08:00
Victoria Milhoan d462ce996a ARM: dts: mx6qdl: Add CAAM device node
Add CAAM device node to the i.MX6 device tree.

Signed-off-by: Victoria Milhoan <vicki.milhoan@freescale.com>
Tested-by: Horia Geantă <horia.geanta@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-08-10 23:19:02 +08:00
Russell King 81497953e3 Merge branch 'psci/for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux into devel-stable 2015-08-10 15:57:44 +01:00
Dinh Nguyen 6855e5b709 ARM: socfpga: dts: Add resets for EMACs on Arria10
Add the reset property for the EMAC controllers on Arria10.

Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
2015-08-09 21:58:58 -05:00
Dinh Nguyen 1a94acf858 ARM: socfpga: dts: add "altr,modrst-offset" property
The "altr,modrst-offset" property represents the offset into the reset manager
that is the first register to be used by the driver to bring peripherals out
of reset.

Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
2015-08-09 21:58:46 -05:00
Greg Kroah-Hartman 5d44f4b348 Merge 4.2-rc6 into char-misc-next
We want the fixes in Linus's tree in here as well.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-08-09 16:28:09 -07:00
Alexandru M Stan 378abcdf32 ARM: dts: rockchip: add veyron-minnie board
Also known as the Asus Chromebook Flip.

Signed-off-by: Alexandru M Stan <amstan@chromium.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2015-08-08 12:31:27 +02:00
Heiko Stuebner b21bcfc9fd ARM: dts: rockchip: reserve unusable memory region on rk3288
The all current Rockchip SoCs supporting 4GB of ram have problems accessing
the memory region 0xfe000000~0xff000000. This also seems to includes the
rk3368 arm64 soc.

All current code handling dma memory oddities I could find, seem to involve
soc-specific code (zone-dma or so) while this issue is shared between arm32
and arm64 socs from Rockchip, which would need to have this described in
the soc devicetree on both socs.

Limiting the dma-zone alone also does not solve the issue and as the
dma-masks need to be a power-of-two in the kernel, the next lower dma-mask
brings memory usable for dma down to 2GB.

So as a stop-gap block off the affected region to prevent its use by
devices with 4GB of memory, like some recent Chromebooks.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2015-08-08 12:28:54 +02:00
Heiko Stuebner 67867fc338 ARM: dts: rockchip: enable usb controller on marsboard
This enables the previously disabled usb controllers on the marsboard
and makes it possible to for example mount usb mass storage devices.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-08-08 12:25:38 +02:00
Heiko Stuebner 760bb9773f ARM: dts: rockchip: add usb phys to Cortex-A9 socs
This adds the usbphy nodes to rk3066 and rk3188, which share the usb hosts
in rk3xxx.dtsi and also enables it on boards based around these socs.

The usb-phy itself is the same as used on the rk3288 already.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-08-08 12:25:35 +02:00
Heiko Stuebner ec32bd9fca ARM: dts: rockchip: set correct dwc2 params for cortex-a9 socs
According to the manual, the fifo sizes are the same as on later socs
like the rk3288 and this also fixes an error about "insufficient fifo
memory", as it seems the values read from the ip are wrong.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2015-08-08 12:25:32 +02:00
Linus Torvalds d5a8ab400b USB fixes for 4.2-rc6
Here are some USB and PHY fixes for 4.2-rc6 that resolve some reported
 issues.
 
 All of these have been in the linux-next tree for a while, full details
 on the patches are in the shortlog below.
 
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iEYEABECAAYFAlXFMe4ACgkQMUfUDdst+ykcxgCfbv91Efs37AUe7LDiIpaperpJ
 wIMAn3xwaOsw8qrpcg3YGOaSggMhuuMC
 =vwz8
 -----END PGP SIGNATURE-----

Merge tag 'usb-4.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb

Pull USB fixes from Greg KH:
 "Here are some USB and PHY fixes for 4.2-rc6 that resolve some reported
  issues.

  All of these have been in the linux-next tree for a while, full
  details on the patches are in the shortlog below"

* tag 'usb-4.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
  ARM: dts: dra7: Add syscon-pllreset syscon to SATA PHY
  drivers/usb: Delete XHCI command timer if necessary
  xhci: fix off by one error in TRB DMA address boundary check
  usb: udc: core: add device_del() call to error pathway
  phy: ti-pipe3: i783 workaround for SATA lockup after dpll unlock/relock
  phy-sun4i-usb: Add missing EXPORT_SYMBOL_GPL for sun4i_usb_phy_set_squelch_detect
  USB: sierra: add 1199:68AB device ID
  usb: gadget: f_printer: actually limit the number of instances
  usb: gadget: f_hid: actually limit the number of instances
  usb: gadget: f_uac2: fix calculation of uac2->p_interval
  usb: gadget: bdc: fix a driver crash on disconnect
  usb: chipidea: ehci_init_driver is intended to call one time
  USB: qcserial: Add support for Dell Wireless 5809e 4G Modem
  USB: qcserial/option: make AT URCs work for Sierra Wireless MC7305/MC7355
2015-08-08 04:27:51 +03:00
Drew Richardson e83dd37700 ARM: 8409/1: Mark ret_fast_syscall as a function
ret_fast_syscall runs when user space makes a syscall. However it
needs to be marked as such so the ELF information is correct. Before
it was:

   101: 8000f300     0 NOTYPE  LOCAL  DEFAULT    2 ret_fast_syscall

But with this change it correctly shows as:

   101: 8000f300    96 FUNC    LOCAL  DEFAULT    2 ret_fast_syscall

I see this function when using perf to unwind call stacks from kernel
space to user space. Without this change I would need to add some
special case logic when using the vmlinux ELF information.

Signed-off-by: Drew Richardson <drew.richardson@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-08-07 19:57:02 +01:00
Gregory CLEMENT 998ef5d81c ARM: 8408/1: Fix the secondary_startup function in Big Endian case
Since the commit "b2c3e38a5471 ARM: redo TTBR setup code for LPAE",
the setup code had been reworked. As a result the secondary CPUs
failed to come online in Big Endian.

As explained by Russell, the new code expected the value in r4/r5 to
be the least significant 32bits in r4 and the most significant 32bits
in r5. However, in the secondary code, we load this using ldrd, which
on BE reverses that.

This patch swap r4/r5 after the ldrd. It is done using the xor
instructions in order to not use a temporary register.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-08-07 19:57:02 +01:00
Alexandre Belloni 761c5867ef ARM: at91/dt: sama5d2: use slow clock where necessary
The watchdog, the reset controller, the RTC, the shutdown controller, the
timer counters and the LCD PWM need the slow clock, add it to the currently
defined nodes.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:54 +02:00
Nicolas Ferre 921f9a6ca5 ARM: at91/dt: at91sam9x5dm: add QT1070 touch button controller
The display module for at91sam9x5-ek has a few touch buttons, add support
for those.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:54 +02:00
Alexandre Belloni 8cf5938713 ARM: at91/dt: at91sam9x5dm: add support for the touschscreen
The display module on the at91sam9x5-ek has a resistive touchscreen, add
it.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:53 +02:00
Bo Shen a437fc59e8 ARM: at91/dt: add drm support for at91sam9n12ek
Add drm support for at91sam9n12ek board.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:53 +02:00
Boris Brezillon 432a4a82d0 ARM: at91/dt: enable lcd support for at91sam9x5 SoCs
Use the at91sam9x5 display module dtsi in the relevant board dts.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:47 +02:00
Boris Brezillon 0171d1d8cf ARM: at91/dt: add at91sam9x5-ek Display Module dtsi
All the at91sam9x5-ek share the share display module, add a dtsi to
describe it.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:24 +02:00
Boris Brezillon c052a72ade ARM: at91/dt: include lcd dtsi in at91sam9x5 dtsis
Actually make use of at91sam9x5_lcd.dtsi in the relevant SoC dtsis.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:33:06 +02:00
Boris Brezillon eeff040ab2 ARM: at91/dt: define hlcdc node in at91sam9x5_lcd.dtsi
Define at91sam9x5 hlcdc node for the SoCs with an LCD controller.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 17:32:45 +02:00
Alexandre Belloni 16fd6572e4 ARM: at91/dt: sama5d4: use slow clock where necessary
The watchdog, the reset controller, the RTC, the shutdown controller, the
timer counters and the LCD PWM need the slow clock, add it where necessary.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:48 +02:00
Alexandre Belloni 288fb7ff8e ARM: at91/dt: sama5d3: use slow clock where necessary
The watchdog, the reset controller, the RTC, the shutdown controller, the
timer counters and the LCD PWM need the slow clock, add it where necessary.

[boris.brezillon@free-electrons.com: add tcb clocks]
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:45 +02:00
Alexandre Belloni 39c6491505 ARM: at91/dt: at91sam9x5: use slow clock where necessary
The watchdog, the reset controller, the RTC, the shutdown controller, the
timer counters and the LCD PWM need the slow clock, add it where necessary,
The LCD PWM will be handled later.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:40 +02:00
Alexandre Belloni 8c945b7e4e ARM: at91/dt: at91sam9rl: use slow clock where necessary
The watchdog, the reset controller, the RTC, the real-time timer, the
shutdown controller and the timer counter need the slow clock, add it where
necessary.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:35 +02:00
Alexandre Belloni 67451069d4 ARM: at91/dt: at91sam9n12: use slow clock where necessary
The watchdog, the reset controller, the RTC, the shutdown controller, the
timer counters and the LCD PWM need the slow clock, add it where necessary.
The LCD PWM will be handled later.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:31 +02:00
Alexandre Belloni 6b2717928c ARM: at91/dt: at91sam9g45: use slow clock where necessary
The watchdog, the reset controller, the RTC, the real-time timer, the
shutdown controller and the timer counters need the slow clock, add it
where necessary.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:26 +02:00
Alexandre Belloni 53b0b37852 ARM: at91/dt: at91sam9263: use slow clock where necessary
The watchdog, the reset controller, the two real-time timers, the shutdown
controller and the timer counter need the slow clock, add it where
necessary.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:21 +02:00
Alexandre Belloni 547eab90f9 ARM: at91/dt: at91sam9261: use slow clock where necessary
The watchdog, the reset controller, the real-time timer, the shutdown
controller and the timer counter need the slow clock, add it where
necessary.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:58:16 +02:00
Alexandre Belloni d0c7faba1f ARM: at91/dt: at91sam9260: use slow clock where necessary
The watchdog, the reset controller, the real-time timer, the shutdown
controller, the timer counters need the slow clock, add it where necessary.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:57:47 +02:00
Alexandre Belloni 07e15f2155 ARM: at91/dt: at91rm9200: use slow clock where necessary
The system timer, the RTC and the timer counters need the slow clock, add
it.

Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-08-07 11:57:41 +02:00
Tony Lindgren 9610c8abd2 ARM: OMAP2+: Fix power domain operations regression caused by 81xx
I managed to mess up omap3 power domain operations with commit
7c80a3f89c ("ARM: OMAP2+: Add custom prwdm_operations for 81xx
to support dm814x"), by default we should keep on using the
omap3_pwrdm_operations, only 81xx needs custom handling.

This causes omap3 PM to break so we won't hit off mode any longer
causing idle power consumption go up from less than 10mW to over
50 mW.

Fixs: 7c80a3f89c ("ARM: OMAP2+: Add custom prwdm_operations for
81xx to support dm814x")
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 22:09:40 -07:00
Benjamin Cama 15979aeeb5 ARM: dts: Convert Linkstation Mini to Device Tree
The title says it all. The name of the dts file as been changed to
better reflect the manufacturer's device name (LS-WSGL), rather than
the original "lsmini", which exists in a kirkwood version too.

[gregory.clement@free-electrons.com]: use tab instead of space to
indent dts at line 185. Reslove merge conflict with patch "ARM: dts:
orion5x: add buffalo linkstation ls-wtgl" in the file
arch/arm/boot/dts/Makefile.

Signed-off-by: Benjamin Cama <benoar@dolka.fr>
Acked-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Alexey Kopytko <alexey@kopytko.ru>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-06 18:51:29 +02:00
Heiko Stuebner 9bb91ae970 ARM: rockchip: enable PMU_GPIOINT_WAKEUP_EN when entering shallow suspend
PMU_GPIOINT_WAKEUP_EN seems needed when entering the shallow suspend
(with logic staying on) but does not seem to be needed for the deep
suspend for unknown reasons.
Testing revealed that this setting really is necessary to reliably
resume the veyron devices from suspend.

Reported-by: Chris Zhong <zyw@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Chris Zhong <zyw@rock-chips.com>
Tested-by: Chris Zhong <zyw@rock-chips.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2015-08-06 13:05:14 +02:00
Heiko Stuebner d1d3a1a1d7 ARM: rockchip: set correct stabilization thresholds in suspend
Currently the stabilization thresholds for the oscillator and external pmu
are statically set to 30ms based on a 32kHz clock rate. This leaves out the
case when we don't switch to the 32kHz clock when only entering the shallow
suspend mode where the logic keeps running.

So, set the correct threshold after we have determined if we switch to the
32kHz clock or stay with the 24MHz one. Also set the oscillator-
stabilization to 0 if it is kept running during suspend, as it of course
does not need to stabilize then.

Reported-by: Chris Zhong <zyw@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Chris Zhong <zyw@rock-chips.com>
Tested-by: Chris Zhong <zyw@rock-chips.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2015-08-06 13:05:12 +02:00
Heiko Stuebner 41fe6a0172 ARM: rockchip: rename osc_switch_to_32k variable
The variable name is misleading, as the deep suspend mode always switches
the main supplying clock to the 32kHz source. Additionally the main
oscillator remains running in some cases, which this var indicates.

So rename it to osc_disable to clarity.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Chris Zhong <zyw@rock-chips.com>
Tested-by: Chris Zhong <zyw@rock-chips.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2015-08-06 13:05:09 +02:00
Anthoine Bourgeois ed05637c30 ARM: dts: omap3-devkit8000: Add ADS7846 Touchscreen support
This patch is the touchscreen part for LCD screens sold with devkit8000
board.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 02:43:09 -07:00
Lucas Stach 1a9fa19095 ARM: imx6: correct i.MX6 PCIe interrupt routing
The PCIe interrupts are also routed through the GPC. This has been
missed from the conversion to stacked IRQ domains as the PCIe
controller uses an explicit interrupt map and thus doesn't inherit
the SoC global interrupt parent.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Cc: <stable@vger.kernel.org> # 4.1
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-06 16:30:18 +08:00
Olof Johansson d304f99c9c Allwinner defconfig changes for 4.3
Two patches that enable various Allwinner related drivers drivers both in
 sunxi_defconfig and in multi_v7_defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVvdfTAAoJEBx+YmzsjxAgzisQAIOaRrW9+/m+u10n9vRXttt/
 cgcSMfWyII2AZlYobH8EKaRS3HYcN4Dv5iinShJuMB9O6ScX6/rp3Oc+cy67vpOT
 N++B9Fyg17k0LVMnnfBhiVncLvJje33Ducucxyiw1sGZjlY15HBFI99PkQo+SCMa
 xYjbqoyIf/r0jIFyV4EkN+O0gzaIeXFm6KcqwVRkBDSeK7aItFrWg/g/8O45W3t+
 eK2OZwXALny1puB6VUgSGilTaCl+DXdagsDuXYjgSV1VfA1iohfNx0Y9nu3o3Ed+
 buxLaZtmdTejS6bNbfyDFd6LJxLZpRQ2T8XXnNXw8sohaglchkMsobuuqITaQX5g
 IF1RiYXzIdzFiH/JPFiL9OPYa4nGtxD4ntr0HBK41EK5PqRGNE+u7MOT+Uw+8Ouq
 AJJWTnSc18sDep7Y23zgFLk7r4d1Lproino531sokJiJpbG9uFd0dnWxEGtofPMG
 lhXQvIwzveEQvrOgQM+wCgnSSbmfuDI4jnsmYfLqMtRSCazwv64Pa1ESZtvXV1Au
 WfDjecL0/V7FwFf1BsEW3MOfE3TdyY8vW9urfY3ewZKsmwwlimv82QdMrua6p4nA
 ou67eVlkdnkZ7/Nxx2/MBqP+VqmOjm/6ovfm/Udih+AwWX7TFQGKFLFQFSujn6Wi
 AxJ5RxBRlhNbGCgNPkH0
 =SkuD
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-defconfig-for-4.3' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into next/defconfig

Allwinner defconfig changes for 4.3

Two patches that enable various Allwinner related drivers drivers both in
sunxi_defconfig and in multi_v7_defconfig

* tag 'sunxi-defconfig-for-4.3' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux:
  ARM: multi_v7_defconfig: Enable Allwinner P2WI, PWM, DMA_SUN6I, cryptodev
  ARM: sunxi_defconfig: Enable DMA_SUN6I, P2WI, PWM, cryptodev, EXTCON, FHANDLE

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-06 10:12:52 +02:00
Olof Johansson da5df64408 Allwinner Device Tree changes for 4.3
A bunch of device tree patches that:
   - Enable the OTG controller on some boards
   - Various additions to the existing boards
   - New boards: A33 Ippo Q8H, Iteaduino Plus,
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVvdvyAAoJEBx+YmzsjxAghkoP/juCUozcmMZ8msZxg8Wp/Vlc
 NO/8jCjktcysoagQT0iOS8AlhzWlms4dxvEKb7iMXo3LI/mkkI1HR4eb79nw15/k
 ZjzKUAzqQV1qKTtP5yuxJ1wMDUkFtNaAOQVlieAzdtSNxkbtwvCw4jJe3U0vxm2t
 P58Uf5hrDTZ8QjD4ta4bdwC1Vfr1AsOz7CEiVaPvdHqu0o6Z7eA6eDnGl5H2czB4
 Co7FCo6SanvCsIEbPl7nr02lgAcaKC7xv84sfiPnw272KrSs4Wg8OC5DLTmJBCgh
 8fobYbWtTETMYmPIgJaIX1tYRWrrtBKj93P3pgZj0o5rW4wh7e14g9uwdZSWLx9v
 1mcIAtS6PKvChA5sLZgBJRarDZSX5anPIbIgkn92rnQ3oNnnulFeH9of9vk8eO6h
 lZnSldn4vdgTbc/EthsluRHcBhntCxTyUJ384cNzz+MsC3JASinvoYKg8Nz4XV8L
 ztdBMExepn5N3C94IuSQ06WCilaq6++6JSvFrIFNipF8TcSkF4ox0raEzmZP6VFR
 lLgXoWX88/RZUNa0I4eRhdDm4LwCXBFarE8eFPNktXSZ66ikL99j3mtVff57kdzu
 YOd7eIBZlvtytl48iPOfL90pPWxPhW7Q74ZgktJuL1Zkj12bjibJIRhepaKg1eYP
 Dq75e+ceW+5ZLptod7uK
 =ebRO
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt-for-4.3' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into next/dt

Allwinner Device Tree changes for 4.3

A bunch of device tree patches that:
  - Enable the OTG controller on some boards
  - Various additions to the existing boards
  - New boards: A33 Ippo Q8H, Iteaduino Plus,

* tag 'sunxi-dt-for-4.3' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux: (35 commits)
  ARM: dts: sun7i: Change cubietruck wifi enable pin to use mmc-pwrseq
  ARM: dts: sun5i: hsg-h702: Enable USB OTG controller
  ARM: dts: sun5i: hsg-h702: Enable side volume buttons with LRADC
  ARM: dts: sun8i: Enable USB DRC on Ippo Q8H-A33 tablet
  ARM: dts: sun5i: Enable USB DRC on A13 OLinuxIno
  ARM: dts: sun5i: Enable USB DRC on A10s OLinuxIno Micro
  ARM: dts: sun4i: Enable USB DRC on A10 OLinuxIno Lime
  ARM: sunxi: dt: Convert users to the PIO interrupts binding
  ARM: dts: sun4i: Add Iteaduino Plus A10
  ARM: dts: A10s-OLinuxIno: Add a node for axp152 pmic
  ARM: dts: axp152: Add a dtsi file for the axp152 pmic
  ARM: dts: sun6i: Enable otg controller on the cs908
  ARM: dts: sun4i: Enable otg controller on the mini-x
  ARM: dts: sun4i: Enable otg controller on the ba10-tvbox
  ARM: dts: sunxi: Add regulator-boot-on to usb host port regulator nodes
  devicetree: Add msi to the vendor-prefix list
  ARM: sun8i: dts: Add Ippo-q8h v1.2 with A33
  ARM: dts: sun8i: sina33: Enable USB hosts
  ARM: dts: sun8i: Enable USB host on GA10H-A33 tablets
  ARM: dts: sun8i: Enable USB DRC on GA10H-A33 tablets
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-06 10:12:13 +02:00
Linus Walleij c00def71ef ARM: ux500: simplify secondary CPU boot
This removes a lot of ancient cruft from the Ux500 SMP boot.
Instead of the pen grab/release, just point the ROM to
secondary_boot() and start the second CPU there, then send
the IPI.

Use our own SMP enable method. This enables us to remove the
last static mapping and get both CPUs booting properly.

Tested this and it just works.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-06 10:11:44 +02:00
Olof Johansson 58e00a6c92 Merge branch 'fixes' into next/cleanup
* fixes: (28 commits)
  ARM: ux500: add an SMP enablement type and move cpu nodes
  ARM: dts: keystone: fix dt bindings to use post div register for mainpll
  ARM: nomadik: disable UART0 on Nomadik boards
  ARM: dts: i.MX35: Fix can support.
  ARM: OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc
  ARM: dts: add CPU OPP and regulator supply property for exynos4210
  ARM: dts: Update video-phy node with syscon phandle for exynos3250
  ARM: keystone: dts: rename pcie nodes to help override status
  ARM: keystone: dts: fix dt bindings for PCIe
  ARM: pxa: fix dm9000 platform data regression
  ARM: DRA7: hwmod: fix gpmc hwmod
  ARM: dts: Correct audio input route & set mic bias for am335x-pepper
  ARM: OMAP2+: Add HAVE_ARM_SCU for AM43XX
  MAINTAINERS: digicolor: add dts files
  ARM: ux500: fix MMC/SD card regression
  ARM: ux500: define serial port aliases
  ARM: dts: OMAP5: Add #iommu-cells property to IOMMUs
  ARM: dts: OMAP4: Add #iommu-cells property to IOMMUs
  ARM: dts: Fix frequency scaling on Gumstix Pepper
  ARM: dts: configure regulators for Gumstix Pepper
  ...
2015-08-06 10:11:36 +02:00
Linus Walleij bf64dd262e ARM: ux500: add an SMP enablement type and move cpu nodes
The "cpus" node cannot be inside the "soc" node, while this
works for the CoreSight blocks, the early boot code will look
for "cpus" directly under the root node, so this is a hard
convention. So move the CPU nodes.

Augment the "reg" property to match what is actually in the
hardware: 0x300 and 0x301 respectively.

Then add an SMP enablement type to be used by the SMP init
code, "ste,dbx500-smp".

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-06 10:10:34 +02:00
Olof Johansson ff20775d18 Renesas ARM Based SoC Marzen Board Removal for v4.3
* Remove legacy r8a7779 SoC code
 * Remove legacy marzen board code
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVvwN/AAoJENfPZGlqN0++xRUP/1lVK2q2ixR2B/7jqPyvcrai
 6RwXT99cwGSpUe7X7AcpWRW39EhRmt89ZPlQvkLF/Ylx9+XUBG3lsyIoaa40YW6x
 mNvbiKTJCFILh7K4YshibFtJPzj7sL+Vhy8xV6zVIBn5oA9rSBfEteTUt5JWik0b
 2QZYZix8STU52k/djQ4vUbAwJfFNwmO4PDqY9B/XXE5a9ETUeEPecBB94xaJCyv+
 ULFmPEHxfvdUug2tLJUTazdtDgQlxRczZ7vYMKpmUeQTPTvx/2L3scz36JpjTFx9
 +U1KSPUzUKwonhS9/TEAeqbU1hDkOvIx7d9lJgd2zxnMrwCyTuJuvmaFV8dZlftu
 8v5cTbdr8InLVdqDM4GzjrL5RhPl1F3MYtfUdT50duzcRTiwyOkKCbjQakV2rgKZ
 aQp4RdDxl1DBlqxyYW16o9Q5figecfqsxzNvAmveM+GOA19a2h9hLNTotZUvDGCC
 AXFrdXMCwzxpIy/LeWcIDs5ycHE0hrD1y68vH4vJp3pWr+dJ0p+QUgjtK5poXvLe
 9RJnYtqJ0cXaYZj0DR64X3TUB2VpCbnK2pNv1/O1TJysiRUGlffRohaGv/UC5am2
 y/kRYOX3qay0a60wWkGQzm/cMB4Zg8fa0ktXj5W/PIhGBLYXTPIQHkSfdFjpkyR6
 WVXodsZdANGIlwQSCeLa
 =VPyl
 -----END PGP SIGNATURE-----

Merge tag 'renesas-marzen-board-removal-for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/cleanup

Renesas ARM Based SoC Marzen Board Removal for v4.3

* Remove legacy r8a7779 SoC code
* Remove legacy marzen board code

* tag 'renesas-marzen-board-removal-for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7779: Remove legacy SoC code
  ARM: shmobile: marzen: Remove legacy board code
  ARM: shmobile: r8a7779: Cleanup header file
  ARM: shmobile: marzen-reference: Remove C board code
  ARM: shmobile: r8a7779: Generic SMP ops
  ARM: shmobile: r8a7779: Generic CCF and timer support

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-06 10:09:08 +02:00
Anthoine Bourgeois 98c6d5552d ARM: dts: omap3-devkit8000: add LCD panels
Devkit8000 was sold with a 4.3" LCD or 7.0" or without. This patch
creates one dts file per bundle.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:37:41 -07:00
Anthoine Bourgeois b02f46b9e0 ARM: dts: omap3-devkit8000: Add DSS' DVI support
This commit adds the support of DVI output on the devkit8000 board.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
[tony@atomide.com: added missing sign as noted by Anthoine]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:36:55 -07:00
Anthoine Bourgeois f1022b9ce1 ARM: dts: omap3-devkit8000: Add S-video output support
This commit adds the support of TV output on the devkit8000 board.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
[tony@atomide.com: added missing sign as noted by Anthoine]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:35:08 -07:00
Anthoine Bourgeois 26fa892392 ARM: dts: omap3-devkit8000: Add keymap support
The keymap is convert in devicetree from the legacy board file.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
[tony@atomide.com: added missing sign as noted by Anthoine]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:33:43 -07:00
Anthoine Bourgeois f67879078f ARM: dts: omap3-devkit8000: Add PMU stat support
This patch declares the LEDB usage to the PMU stat monitor.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
[tony@atomide.com: added missing sign as noted by Anthoine]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:32:58 -07:00
Anthoine Bourgeois ab00639e77 ARM: dts: omap3-devkit8000: Add user button support
This patch links the user button to the BTN_EXTRA action.

Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
[tony@atomide.com: added missing sign as noted by Anthoine]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:27:27 -07:00
Dave Gerlach 1e9f747400 ARM: dts: am437x-gp-evm: Add regulator-always-on and regulator-boot-on for RTC DCDCs
DCDC5 and DCDC6 supply rtc and need to be on for accessing the module.

On A1 revision of the TPS65218, FSEAL bit would be undefined without
coin-cell present which in many cases led to it being set, causing DCDC5
and DCDC6 to stay active, but also leading to unexplained failures when
it was not. On B1 revision, FSEAL is always 0 when no coin-cell is present
so this patch is required on boards with B1 revision to ever work. This
implementation works on boards with either A1 or B1 revision and makes
sure that DCDC5 and DCDC6 always stay active.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:27:27 -07:00
Keerthy 5d9ef0cf28 ARM: dts: AM4372: Reorder the rtc compatible string
Compared to da830-rtc compatibility am3352-rtc is more compatible to
the one in am437x. Hence adding the am3352-rtc compatible to cover the
entire feature set.

The ti,am4372-rtc has no Documentation and not used even in the driver
hence removing it.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-06 00:27:20 -07:00
Joachim Eastwood 027b4a6d6a ARM: dts: lpc4350-hitex-eval: add emc pins and static memory devices
Setup the emc pins used by external memory devices and add
configuration for the devices found on the Hitex eval board.

The Hitex eval board has a NOR Flash attached to chip select 0
and 512 kB of SRAM on chip select 2.

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:33 +02:00
Ariel D'Alessandro aceacfa6ac ARM: dts: lpc4350-hitex-eval: add ethernet
Enable Ethernet and add pin muxing and set the correct
frequency on the enet tx clock input.

Signed-off-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:30 +02:00
Ariel D'Alessandro 5e6472001e ARM: dts: lpc4350-hitex-eval: add pinctrl and uart0 muxing
Setup pin muxing and properties for the debug console on uart0.

Signed-off-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:26 +02:00
Joachim Eastwood 41a0dec916 ARM: dts: lpc4357-ea4357: add mmio-gpio leds
Hook up LEDs on the outputs from the D-type flip-flop found on
the address/data bus.

Note that the LEDx label in the schematics is reversed in regard
to the bits on the data bus. Hence the reverse ordering used here.

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:24 +02:00
Joachim Eastwood 3c6abb97f3 ARM: dts: lpc4357-ea4357: add emc pins and static memory devices
Setup the emc pins used by external memory devices and add
configuration for the devices found on the EA4357 devkit.

The EA4357 devkit has a NOR Flash attached to chip select 0
and a D-type flip-flop used for LEDs on chip select 2.

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:20 +02:00
Joachim Eastwood fd0cb235df ARM: dts: lpc4357-ea4357: add usb0
Enable USB0 on the EA4357 devkit and setup the required USB0
control pins.

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:18 +02:00
Joachim Eastwood 50016385c2 ARM: dts: lpc18xx: add pl172 memory-controller node
All devices in the LPC18xx/43xx familiy contain a ARM PL172
MultiPort Memory Controller (MPMC).

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:16 +02:00
Joachim Eastwood 9cf6267d16 ARM: dts: lpc18xx: add pl111 lcd controller node
NXP LPC185x and LPC435x/70 devices contain a ARM PL111 lcd controller.

Signed-off-by: Joachim Eastwood <joachim.eastwood@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:13 +02:00
Joachim Eastwood 6d6d6b559f ARM: dts: lpc18xx: add usb otg phy node
Add the USB OTG phy under the CREG syscon node and attach it to
the USB0 EHCI controller.

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 19:30:11 +02:00
Greg Kroah-Hartman 0a1b6f6319 phy: for 4.2-rc6
*) Fix compiler error when sun4i usb phy driver is built as module
 *) Fix SATA Lockup issue in dra7 SoC
 
 Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVwOpCAAoJEA5ceFyATYLZTikP/17trNhiyCOL8s0ok1pbBR+B
 9ilzq7dOuVPrQUdvJycpH6DdajsuUN0GzzftjkN2h96v2ck2yVb8RgnhPB2aGKJm
 Nb/UTPgX1GUaRNQ/iZaKvDtSUjxQm3JWIaf06hC8rvd0D0k4WOvMxYJpHbGliBOf
 EPps3LZtnZn89htJniOUSDByrigTvfeWpKzU2guafoIEURNf6wGEYcCxOlYw9ST6
 W8LnSA5kkc3beRaGkNSzoQfq3zFJKF+8mPDARoiX6hBg+3oe9RmodIBKpD2Vl08k
 Y0eXtXhICxxqlGqRL71gfRXWDqNY9aMhXS0A/dyNvX2tDnXXNQF/Rjsxs+EPR0Td
 tFrwU/IzySmlCj4hrCEvImZnk1whe/kvsoHSXY7HSSVlXVQ/Nv5DulfxC8A8Nwx6
 v6fj3+3jwJRJnQgs1/PwYGpYFDh4L7dJRWKULjiilXeyhT9UJlH1IknjK1lhNdxg
 lIEEgckNTnBoU0cnW/7FEdbqnt562DLiZYSmXwKHffPrY4nCaaOMKz+Y0WAs+StW
 A+tDe+myPElGmJ01N8MF3QRpXFSdH8/06OJl5W4KhBXKMZXikMq2yZ4SpVdTiYfp
 4Nyiv1lblqwslESl3ru6KbcjUGkamnTXKA5p6u5/D5l+ACXgYkKsNZFN4gRwXpKi
 J/VGHy/PTOBo0W1saBuS
 =j6wu
 -----END PGP SIGNATURE-----

Merge tag 'phy-for-4.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/kishon/linux-phy into usb-linus

Kishon writes:

phy: for 4.2-rc6

*) Fix compiler error when sun4i usb phy driver is built as module
*) Fix SATA Lockup issue in dra7 SoC

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
2015-08-05 10:12:23 -07:00
Russell King 44e259ac90 ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets
The PMU device contains an interrupt controller, power control and
resets.  The interrupt controller is a little sub-standard in that
there is no race free way to clear down pending interrupts, so we try
to avoid problems by reducing the window as much as possible, and
clearing as infrequently as possible.

The interrupt support is implemented using an IRQ domain, and the
parent interrupt referenced in the standard DT way.

The power domains and reset support is closely related - there is a
defined sequence for powering down a domain which is tightly coupled
with asserting the reset.  Hence, it makes sense to group these two
together, and in order to avoid any locking contention disrupting this
sequence, we avoid the use of syscon or regmap.

This patch adds the core PMU driver: power domains must be defined in
the DT file in order to make use of them.  The reset controller can
be referenced in the standard way for reset controllers.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-05 18:36:49 +02:00
Russell King cba3bbcba4 ARM: dt: dove: add GPU power domain description
Add the description of the GPU power domain to the PMU DT entry.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-05 18:34:30 +02:00
Russell King 7c2293f523 ARM: dt: dove: add video decoder power domain description
Add the description of the video decoder power domain to the PMU DT
entry.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-05 18:33:27 +02:00
Russell King 71296a39c5 ARM: dt: dove: wire up RTC interrupt
Now that we have a PMU driver, we can wire up the RTC interrupt in the
DT description for Dove.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-05 18:32:55 +02:00
Russell King 8e7c6a3269 ARM: dt: Add PMU node, making PMU child devices childs of this node
Add the PMU node, and move the child devices of the PMU node beneath
this new node, giving it a "simple-bus" so that the OF platform
device creator will create these child devices.  No functional change
from this is expected.

The PMU provides multiple features, including an interrupt, reset,
power and isolation controller.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2015-08-05 18:31:17 +02:00
Olof Johansson 39aa437e18 Merge branch 'queue/irq/arm' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into next/cleanup
Merge "ARM: Interrupt cleanups and API change preparation" from Thomas
Gleixner:

The following patch series contains the following changes:

    - Consolidation of chained interrupt handler setup/removal

    - Switch to functions which avoid a redundant interrupt
      descriptor lookup

    - Preparation of interrupt flow handlers for the 'irq' argument
      removal

* 'queue/irq/arm' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  ARM/orion/gpio: Prepare gpio_irq_handler for irq argument removal
  ARM/pxa: Prepare balloon3_irq_handler for irq argument removal
  ARM/pxa: Prepare *_irq_handler for irq argument removal
  ARM/dove: Prepare pmu_irq_handler for irq argument removal
  ARM/sa1111: Prepare sa1111_irq_handler for irq argument removal
  ARM/locomo: Prepare locomo_handler for irq argument removal
  ARM, irq: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc
  ARM/LPC32xx: Use irq_set_handler_locked()
  ARM/irq: Use access helper irq_data_get_affinity_mask()
  ARM/locomo: Consolidate chained IRQ handler install/remove
  ARM/orion: Consolidate chained IRQ handler install/remove

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 17:24:11 +02:00
Andy Sun 2cd212427f ARM: dts: atlas7: add a GPIO key for rearview button
Touching this key will trigger a camera event for rearview.

Signed-off-by: Andy Sun <Andy.Sun@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:21 +08:00
Huayi Li 627830756d ARM: dts: atlas7: put pinctl property to get pinmux for NAND
Nand controller often share some pins with sd/mmc controller on
atlas and prima series, nand node can be disabled if the pins are
used by sd/mmc controller.

Signed-off-by: Huayi Li <huayi.li@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:21 +08:00
Yonghui Zhang 4e881aa890 ARM: dts: atlas7: add software digital radio nodes and its DMA channels
this patch adds SDR(software digital raio) nodes and the DMA channels
for it.

Signed-off-by: Yonghui Zhang <yonghui.zhang@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:20 +08:00
Guo Zeng 5e3773b2b8 ARM: dts: atlas7: add lost PWM node
this patch adds lost PWM node, and also fixes the ranges of its
parent node.

Signed-off-by: Guo Zeng <guo.zeng@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:20 +08:00
Dongli Li d9615f8bf5 ARM: dts: atlas7: add lost G2D node
this patch adds lost G2D node, and also fixes the range of its
parent node.

Signed-off-by: Dongli Li <Kasin.Li@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:20 +08:00
Xiaofeng Fei f3a19caa52 ARM: dts: atlas7: add multimedia codec node
this patch adds multimedia video codec node, and also fixes the
ranges of its parent node.

Signed-off-by: Xiaofeng Fei <xiaofeng.fei@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:19 +08:00
Qipan Li d015642e12 ARM: dts: atlas7: add alias name for spi device
spi framework can use alias name of spi device to retrieve the bus id,
so bus id will not be dynamical but statical and it will be easier for
test for a specified spi device with a fixed name like use spidev.

Signed-off-by: Qipan Li <Qipan.Li@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:19 +08:00
Ye He 153645b3e0 ARM: dts: atlas7: add lost gmac node
this patch adds lost ethernet gmac node, and also fix the ranges of
its parent node.

Signed-off-by: Ye He <ye.he@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:18 +08:00
Ye He c95c621157 ARM: dts: atlas7: add performance monitor unit node
Signed-off-by: Ye He <ye.he@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:18 +08:00
Lily.Li 81a85f9ebc ARM: dts: atlas7: add lost jpeg node
this patch adds lost jpeg node, and also fix the ranges of its
parent node.

Signed-off-by: Lily.Li <Lily.Li@csr.com>
Signed-off-by: Barry Song <Baohua.Song@csr.com>
2015-08-05 22:44:18 +08:00
Fugang Duan 709bc0657f ARM: imx6ul: add fec MAC refrence clock and phy fixup init
Add FEC MAC refrence clock init.
Add phy fixup init for i.MX6ul 14x14 evk board that installs KSZ8081 phy.
For the phy, there needs extra phy fixup for MII and RMII mode.

Signed-off-by: Fugang Duan <b38611@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-08-05 20:52:11 +08:00
Roger Quadros eb157c81d0 ARM: dts: am437x-gp-evm: Add eMMC support
Add eMMC pinmux and mmc2 related bits. We keep the mmc2
controller disabled as it conflits with gpmc/NAND.

To enable emmc, simply set mmc2 controller node to "okay"
and set the gpmc node to "disabled" and change the
SelEMMCorNAND gpio-hog to output-high.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:58:27 -07:00
Roger Quadros 50336f5127 ARM: dts: am437x-gp-evm: Add gpio-hog for configuring eMMC/NAND driver
On this board either eMMC or NAND can work based on the level of
spi2_cs0.gpio0_23. Add a gpio-hog to enable configuration of this
pin in the device tree.

Move pinmux for spi2_cs0 (SEL_eMMCorNANDn) out of
NAND node into gpio0 so it is initialized with gpio0.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:58:27 -07:00
Kishon Vijay Abraham I d62ce9ffd8 ARM: dts: dra72-evm: Fix spurious card insert/removal interrupt
ldo1_reg in addition to being connected to the io lines is also
connected to the card detect line. On card removal, omap_hsmmc
driver does a regulator_disable causing card detect line to be
pulled down. This raises a card insertion interrupt and once the
MMC core detects there is no card inserted, it does a
regulator disable which again raises a card insertion interrupt.
This happens in a loop causing infinite MMC interrupts.

Fix it by making ldo1_reg as always_on.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:53:19 -07:00
Kishon Vijay Abraham I 9f04ceebe2 ARM: dts: dra7-evm: Fix spurious card insert/removal interrupt
ldo1_reg in addition to being connected to the io lines is also
connected to the card detect line. On card removal, omap_hsmmc
driver does a regulator_disable causing card detect line to be
pulled down. This raises a card insertion interrupt and once the
MMC core detects there is no card inserted, it does a
regulator disable which again raises a card insertion interrupt.
This happens in a loop causing infinite MMC interrupts.

Fix it by making ldo1_reg as always_on.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:53:19 -07:00
Kishon Vijay Abraham I 29d632c8bb ARM: dts: am57xx-beagle-x15: mmc1: remove redundant pbias-supply property
pbias-supply is initialized in dra7.dtsi. Remove redundant initialization
of pbias-supply from MMC1 dt node in am57xx-beagle-x15.dts

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:52:51 -07:00
Nishanth Menon f4eaf9e048 ARM: dts: dra7-evm: Add MMCSD card removal GPIO
SDMMC Card Detect can be used over default GPIO map.

Reported-by: Yan Liu <yan-liu@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:50:43 -07:00
Kishon Vijay Abraham I e23b27dbf8 ARM: dts: dra72-evm: Set max clock frequency of MMC1 and MMC2
MMC1 supports SDR104 and MMC2 supports HS200 both of which requires
192MHz clock. Set the maximum operating clock frequency to 192 MHz.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:50:43 -07:00
Balaji T K 4b93521587 ARM: dts: dra7-evm: add evm_3v3_sd regulator
Add a node for evm_3v3_sd using onboard pcf GPIO expander which feeds
on to mmc vdd.

Update mapping for vmmc-supply and vmmc_aux-supply.
evm_3v3_sd supplies to SD card vdd, and ldo1 to sdcard i/o lines.

Signed-off-by: Balaji T K <balajitk@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:50:42 -07:00
Kishon Vijay Abraham I a238707d98 ARM: dts: dra72-evm: add evm_3v3_sd regulator
Add a node for evm_3v3_sd using pcf which feeds on to mmc vdd.
Update mapping for vmmc-supply and vmmc_aux-supply.
evm_3v3_sd supplies to SD card vdd, and ldo1 to sdcard i/o lines.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:50:42 -07:00
Suman Anna c9ab94dfd2 ARM: dts: AM4372: Add the wkup_m3_ipc node
Add the Wakeup M3 IPC device node for the wkup_m3_ipc driver on
AM4372 SoC. This node uses the IPC registers, part of the Control
Module, and is therefore added as a child of the scm node.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:29:51 -07:00
Suman Anna 9993712907 ARM: dts: AM33xx: Add the wkup_m3_ipc node
Add the Wakeup M3 IPC node for the wkup_m3_ipc driver on AM33xx SoCs.
This node uses the IPC registers, part of the Control Module, and is
therefore added as a child of the scm node.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:29:25 -07:00
Kishon Vijay Abraham I cd4556733b ARM: dts: dra7: Fix broken pbias device creation
commit <d919501feffa> ("ARM: dts: dra7: add minimal l4 bus
layout with control module support") moved pbias_regulator dt node
from being a child node of ocp to be the child node of
scm_conf. After this device for pbias_regulator is
not created.

Fix it by adding "simple-bus" compatible property to
scm_conf dt node.

Fixes: d919501fef ("ARM: dts: dra7: add minimal l4 bus
layout with control module support")

Cc: <stable@vger.kernel.org> # v4.1
Suggested-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Tested-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:04:07 -07:00
Kishon Vijay Abraham I 70caac3f25 ARM: dts: OMAP5: Fix broken pbias device creation
commit <ed8509edddeb> ("ARM: dts: omap5: add minimal l4 bus
layout with control module support") moved pbias_regulator dt node
from being a child node of ocp to be the child node of
omap5_padconf_global. After this device for pbias_regulator is
not created.

Fix it by adding "simple-bus" compatible property to
omap5_padconf_global dt node.

Fixes: ed8509eddd ("ARM: dts: omap5: add minimal l4 bus
layout with control module support")

Cc: <stable@vger.kernel.org> # v4.1
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:04:07 -07:00
Kishon Vijay Abraham I 89a898df87 ARM: dts: OMAP4: Fix broken pbias device creation
commit <7415b0b4c645> ("ARM: dts: omap4: add minimal l4 bus layout
with control module support") moved pbias_regulator dt node
from being a child node of ocp to be the child node of
omap4_padconf_global. After this device for pbias_regulator
is not created.

Fix it by adding "simple-bus" compatible property to
omap4_padconf_global dt node.

Fixes: 7415b0b4c6 ("ARM: dts: omap4: add minimal l4 bus layout
with control module support")

Cc: <stable@vger.kernel.org> # v4.1
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:04:07 -07:00
Kishon Vijay Abraham I 4317c8c912 ARM: dts: omap243x: Fix broken pbias device creation
commit <72b10ac00eb1> ("ARM: dts: omap24xx: add minimal l4 bus
layout with control module support") moved pbias_regulator dt node
from being a child node of ocp to be the child node of
scm_conf. After this device for pbias_regulator is
not created.

Fix it by adding "simple-bus" compatible property to
scm_conf dt node.

Fixes: 72b10ac00e ("ARM: dts: omap24xx: add minimal l4 bus
layout with control module support")

Cc: <stable@vger.kernel.org> # v4.1
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 03:02:17 -07:00
Roger Quadros 33cb3a13ce ARM: dts: dra7: Add scm_conf@1c04 node
This region contains CTRL_CORE_SMA_SW2..9 registers which
are not specific to any domain and can be reasonably
accessed via syscon driver.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 02:41:19 -07:00
Roger Quadros 1c5cb6fdd6 ARM: dts: dra7: fix pinmux@1400 resource length
We need to add 4 bytes to include the last 32-bit register space.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 02:41:09 -07:00
Roger Quadros 57fe9287c6 ARM: dts: dra7: Remove ctrl_core and ctrl_general nodes
These nodes are wrongly placed. They must come under the
scm node. Nobody uses them either so get rid of them.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-05 02:39:12 -07:00
Sudeep Holla 3f86e570f2 ARM: davinci: cp_intc: use IRQCHIP_SKIP_SET_WAKE instead of irq_set_wake callback
Commit 60f96b41f7 ("genirq: Add IRQCHIP_SKIP_SET_WAKE flag")
introduced a new flag to skip the irq_set_wake callback in the irqchip
core to avoid adding dummy irq_set_wake in the irqchip implementations.

This patch removes the dummy callback and sets the IRQCHIP_SKIP_SET_WAKE
flags.

Cc: Sekhar Nori <nsekhar@ti.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 11:31:44 +02:00
Olof Johansson 1ff2b94d15 mvebu config changes for v4.3 (part #2)
Improve dt support for orion5x
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAlW7QLAACgkQCwYYjhRyO9VAqgCePD1+poLPe2yvEG0tlVO+Riq4
 DLMAn3OoOO5UaISBXMBu/fPsd80UGDbH
 =Yrv4
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-config-4.3-2' of git://git.infradead.org/linux-mvebu into next/defconfig

mvebu config changes for v4.3 (part #2)

Improve dt support for orion5x

* tag 'mvebu-config-4.3-2' of git://git.infradead.org/linux-mvebu:
  ARM: defconfig: orion5x: add DT support

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 11:11:51 +02:00
Olof Johansson ee224e175e mvebu dt changes for v4.3 (part #2)
Add support Buffalo Linkstation LS-WTGL
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAlW7PzgACgkQCwYYjhRyO9WoowCfcxQgj6Ta6aUoCgjc+zyLagmU
 XSAAoJZaNxqNjua3ait0b3Us22H4+HnF
 =KMB1
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-4.3-2' of git://git.infradead.org/linux-mvebu into next/dt

mvebu dt changes for v4.3 (part #2)

Add support Buffalo Linkstation LS-WTGL

* tag 'mvebu-dt-4.3-2' of git://git.infradead.org/linux-mvebu:
  ARM: dts: orion5x: add buffalo linkstation ls-wtgl

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 11:10:30 +02:00
Olof Johansson f9fa55b970 mvebu soc changes for v4.3 (part #1)
- Extend suspend to RAM support in order to add new mvebu SoC
 - Add standby support for all Armada 3xx/XP SoCs
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAlW7OiYACgkQCwYYjhRyO9WEIgCglOTwI09tYdDRxrW3gETI8RbM
 cX8An3XYyaPavLOh58x9UMmiXwTBU5EM
 =YmnC
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-soc-4.3-1' of git://git.infradead.org/linux-mvebu into next/soc

mvebu soc changes for v4.3 (part #1)

- Extend suspend to RAM support in order to add new mvebu SoC
- Add standby support for all Armada 3xx/XP SoCs

* tag 'mvebu-soc-4.3-1' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: Warn about the wake-up sources not taken into account in suspend
  ARM: mvebu: Add standby support
  ARM: mvebu: Use __init for the PM initialization functions
  ARM: mvebu: prepare pm-board.c for the introduction of Armada 38x support
  ARM: mvebu: prepare mvebu_pm_store_bootinfo() to support multiple SoCs
  ARM: mvebu: do not check machine in mvebu_pm_init()
  ARM: mvebu: prepare set_cpu_coherent() for future extension

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 11:09:02 +02:00
Olof Johansson e7482c74f2 arm: Xilinx Zynq dt patches for v4.3
- Add ECC for Synopsys MC
 - Add OCM, pushbuttons to zc702
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iEYEABECAAYFAlW7NvEACgkQykllyylKDCHSUgCeIrcY0q2/KufCHP7Qlt4EqbTr
 0WkAnivBGkKxLprh8wGutwfTNkvmhdbG
 =ZEnt
 -----END PGP SIGNATURE-----

Merge tag 'zynq-dt-for-4.3' of https://github.com/Xilinx/linux-xlnx into next/dt

arm: Xilinx Zynq dt patches for v4.3

- Add ECC for Synopsys MC
- Add OCM, pushbuttons to zc702

* tag 'zynq-dt-for-4.3' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: DT: Add zc702 pushbuttons to DT as gpio-keys
  ARM: zynq: DT: Add missing interrupt for L2 pl310
  Documentation: devicetree: Add ECC information to synopsys ddr controller
  ARM: dts: zynq: Add OCM node

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 11:04:18 +02:00
Olof Johansson b69354dfe2 arm: Xilinx Zynq SoC patches for v4.2
- Fix earlyprintk, jump trampoline for SMP
 - Update git tree location
 - Setup PL310 aux (bit 22)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iEYEABECAAYFAlW7MWAACgkQykllyylKDCHkTACfT3Kzs+Cl7jc9A4kQ6dkbUqtC
 E1MAn0g3yHcqGHgUtfyHu6lXtptJFbDn
 =DuTZ
 -----END PGP SIGNATURE-----

Merge tag 'zynq-soc-for-4.3' of https://github.com/Xilinx/linux-xlnx into next/soc

arm: Xilinx Zynq SoC patches for v4.2

- Fix earlyprintk, jump trampoline for SMP
- Update git tree location
- Setup PL310 aux (bit 22)

* tag 'zynq-soc-for-4.3' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: reserve space for jump target in secondary trampoline
  clk: zynq: remove redundant $(CONFIG_ARCH_ZYNQ) in Makefile
  MAINTAINERS: Update Zynq git tree location
  ARM: zynq: Set bit 22 in PL310 AuxCtrl register (6395/1)
  ARM: zynq: Fix earlyprintk in big endian mode

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:53:52 +02:00
Olof Johansson e06b2d8621 Qualcomm ARM Based defconfig Updates for v4.3
* Enable KS8851 for QCOM SoCs in qcom defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVuR+FAAoJEFKiBbHx2RXVWW8QAN2FkJ1KJpwsMnCcklcrOWZJ
 iXuWlAk2w83g4us4K9wO68iCdOWwZQY966deDn3RqI8LVp6DFJZH7ysgDQ0FnTf9
 L6Z385THYfierFm41W7IWEHNDjn1fWKBXpnlqvRmNbBCzcP9DiMm1xbPoIfKJA+J
 enK+vwCXr+kqkQfz/nNQw9qz/yroL5MYtcakAKQ9c64GENovF3OkQbNyXGEuYnsp
 HDBZMmoITHItWn2kAtppbnepb0sI1KFpxsTGHarngZUGlWu5GWivqFNp++RWWSO+
 qfb/5O9Cf4rgXRXRv2WXMdJGgFpsvSeCG25LqBVaAPy7eB2Ob02vbAhSLf34mM0j
 XCtsnXMSo3LSioxi1j2peDnIG8tEG2YDa3kbMn8K56m92AWPtppQx6UeNT3wgYIC
 XNo5I6sdr7jjABJcHVlz3ifOfTUudxwlgnmq2E1ATXLPHQHuB4L5lbVCQUsns5X3
 EHWbFLpj0rgiF9Etui3mDjxfm1+NCnmjlxqTGqOMfblmIALSl2m1O8K7sQqIgycG
 TIwH+FtOkMefod41p+UhGQ/XMmRJdemkbCO9fw3c++l0w+PMdGCt16O38UsEKqts
 F31leksuZrn25Ku3XatPt1kCZiM9Um+IzeFh9/3kafQ+avDixNTXG9wFlFiN0Xw8
 0w+QVP5+v9J2Yrg5C/xm
 =3TEU
 -----END PGP SIGNATURE-----

Merge tag 'qcom-defconfig-for-4.3' of git://codeaurora.org/quic/kernel/agross-msm into next/defconfig

Qualcomm ARM Based defconfig Updates for v4.3

* Enable KS8851 for QCOM SoCs in qcom defconfig

* tag 'qcom-defconfig-for-4.3' of git://codeaurora.org/quic/kernel/agross-msm:
  ARM: qcom_defconfig: Enable options for KS8851 ethernet

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:46:31 +02:00
Olof Johansson 75d84eede4 Qualcomm ARM Based Device Tree Updates for v4.3
* Switch to use pinctrl compatible for GPIOs
 * Add RPM regulators for MSM8960
 * Add SPI Ethernet support on MSM8960 CDP
 * Add SMEM support along with dependencies
 * Add PM8921 support for GPIO and MPP
 * Fix GSBI cell index
 * Switch to use real regulators on APQ8064 w/ SDCC
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJVuR9GAAoJEFKiBbHx2RXV9Q0P/2TXIsDmgFyyIA7edlqag3ch
 m0coBGVv20bP5wIrYHjQywBJqfCuQPm70jVsl2Voxzw/69jCvzHlzia6Aqm6f+sL
 jX941CpV7DVVACm0ltec3FqV33OZKRh9Eyz0Mq1jerrPsvwMnwGuAziH7zkzCNnr
 b9aLdWqWr68HZve/8naRAFWpm5mvWJhADnbKh2UryH6ZWaT8ueWdqnhy4oteo6MK
 sf0CWva9DdkH9GNE8F+N5ksOdV/a5IDdUVoujsaAaXJI/otqAoAn0PrzRTp1sV43
 iAJKEAbAlhPKx/0YJIW1dpp8viyOcjAtNRpMLjA79HXF2yaYUlieLWYVhL851dKX
 L4MNyYRauQf+JIR6fGwSN7Tg+/G8ZF5m70EZXkoya5JGBTnXbgZ/e0tytu8MXs3E
 abiUeaYWFn4r1ta0V8glbk/iDlmNWcBUZz9NInrLzcjLOwq3+PJYdoq4mav5Qkrf
 cpByhFRHEV2jToZ7t/uyz8NndwLKnioFHzKb+o8L+B9qzB0r/pEdF143gRWlWV6W
 2WGIUf2wCOBEMmaWhbGvGdYP1RghtjSKRGoaN4d3mxSD2lU9OvkARYETKtg4hwo4
 y8cWOhx3sNsrAxs0GdzN4bh06LcnKYGUnpuqQb3o3GAjxY3xTFlhK0FDpXULCU2W
 c7A8yM5yN+csyAGl0r1/
 =kyj6
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dt-for-4.3' of git://codeaurora.org/quic/kernel/agross-msm into next/dt

Qualcomm ARM Based Device Tree Updates for v4.3

* Switch to use pinctrl compatible for GPIOs
* Add RPM regulators for MSM8960
* Add SPI Ethernet support on MSM8960 CDP
* Add SMEM support along with dependencies
* Add PM8921 support for GPIO and MPP
* Fix GSBI cell index
* Switch to use real regulators on APQ8064 w/ SDCC

* tag 'qcom-dt-for-4.3' of git://codeaurora.org/quic/kernel/agross-msm:
  ARM: dts: qs600: Add real regulators to sdcc
  ARM: dts: ifc6410: add real regulators for sdcc nodes.
  ARM: dts: apq8064: remove temporary fixed regulator for mmc
  ARM: dts: apq8064: fix missing gsbi cell-index
  ARM: dts: apq8064: Add DT support for GSBI6 and for UART pin mux
  ARM: dts: apq8064: add pm8921 mpp support
  ARM: dts: apq8064: Add pm8921 mfd and its gpio node
  ARM: dts: msm8974: Add smem reservation and node
  ARM: dts: msm8974: Add tcsr mutex node
  ARM: dts: qcom: Add ks8851 node for wired ethernet
  ARM: dts: qcom: Add MSM8960 CDP RPM regulators
  ARM: dts: qcom: Add MSM8960 RPM and RPM regulator nodes
  ARM: dts: qcom: Replace gpio node with pinctrl node
  ARM: dts: qcom: Replace gpio node with pinctrl node

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:45:45 +02:00
Josh Wu d323c85ce5 ARM: at91: at91_dt_defconfig: enable ISI and ov2640 support
Add Atmel-isi and ov2640 driver in defconfig

Signed-off-by: Josh Wu <josh.wu@atmel.com>
[nicolas.ferre@atmel.com: make SOC_CAMERA_OV2640 selected as a module]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:40:47 +02:00
Nicolas Ferre c268a74310 ARM: at91/soc: add basic support for new sama5d2 SoC
Add Kconfig entries, header file changes and addition to the documentation.
The early debug infrastructure is also added for easy development.

Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:40:21 +02:00
Olof Johansson 85a82c55e2 First batch of DT changes for 4.3:
- some fixes on sama5d4 ADC definition
 - adding Image Sensor Interface (aka ISI) on at91sam9m10g45ek board
 - update rst controller compatible string on sama5 machines
 - new sama5d2 DT definition and its reference board:
   the sama5d2 Xplained. Minimal configuration for now.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJVulaMAAoJEAf03oE53VmQxZoH/jC84hzLql6jv1WRvfzRNHnS
 KmRPB2+dfY66W2ZzCxYWi15YQDXge1q3NappEpjui+DQp2mzDd1vaH/B+Sy974qw
 97NCo1eGby3AhHAY8pyPja+3sRwN9Y24rVcchYIqceql9o/qUkfRf/hZQ/s0x3GU
 TAMHv3ptXCyU1da+b4vZlJ2FTZX1bSp7Zj7z3Is8C0FO5iCCG0LGoqBrDNLDT7o3
 RQlFgOcDZTJ/Gj7fPW1hhQSK8lsjBJfGeriUHvoZ5qlhJyvPRh0sMUJEhdsuv4De
 dXPL4A4+QJesgSdfmZ6N5e+pA4x437wPENubFlE2+Hl0A8/TN0U8UWgLkEHNtzw=
 =z7bd
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91 into next/dt

First batch of DT changes for 4.3:
- some fixes on sama5d4 ADC definition
- adding Image Sensor Interface (aka ISI) on at91sam9m10g45ek board
- update rst controller compatible string on sama5 machines
- new sama5d2 DT definition and its reference board:
  the sama5d2 Xplained. Minimal configuration for now.

* tag 'at91-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
  ARM: at91/dt: add minimal sama5d2 Xplained board
  ARM: at91/dt: add basic dtsi for sama5d2 SoC
  ARM: at91/dt: sama5: update rstc to correct compatible string
  ARM: at91/dt: add isi & ov2640 dt nodes for at91sam9m10g45ek board
  ARM: at91/dt: sama5d4: move ADC pinctrl to board device trees
  ARM: at91/dt: sama5d4: fix external trigger property

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:39:05 +02:00
Olof Johansson 141a7bab29 Second Round of Renesas ARM Based SoC Defconfig Updates for v4.3
* Enable fixed voltage regulator in shmobile_defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVuW5RAAoJENfPZGlqN0++xzQP/18bRnydoBgD9+ccsYUeCSwo
 hXwF8PGcutUpOJ5SUS9o80a0jVn06p06IqU2BjJ/IIJcF3PNBlHbEpIBLvC0DFVW
 wJ1+FEuwWVx3MnGzLDCD/yZB4uwQ+a5MGlc5CG6eHuIVCshhdCw6fHozJphF89yf
 N+i3YNxtCshosVpjrSowrbxmxzutgbY1/krlYjVeH5eNjIH+R11hlzrkxAhxHGhH
 o93IGFptB92r2Uygg1uu+dxgsexLRm4QgI5EibWFifoj4+6PB9eJSIiZ4rBWnQY8
 oVzzu7WpsIA6TS+QqUobBJLhMxpdICkmyWo4ngUs3HdfoEK7uLfhNWYzHtlmhbCT
 3vT90Tb3cnWmkae3C7LQXFpyhpq90F0NyLhZEYFB98qCe32u/s8NhbOi7znAUR3k
 82ZZenMV0ykWdmrQoRWmuomfrsmLhJJPKKiFdd4Wa0iabKTDdKPTPkZRguwr9lb0
 rlg+MTFq5S4CowZ3TKhTKVvgTAiJYQjupp7rha/mINiVJQmWFnKz98IqQ+OYD3cf
 SgUDDFmalTSewD9998/Tm8Ifj64x+UAvxd34N9Af1fdcIbde6/Lu2poEMnID7fIL
 rFGnj2r37eDRpQlCZoZ1mx/YmMtR2QODojRhZJ3TpkjLp6M74xKI/ihydE7cGOAF
 VwqelnZQxUB8JjFxIUum
 =9Yan
 -----END PGP SIGNATURE-----

Merge tag 'renesas-defconfig2-for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/defconfig

Second Round of Renesas ARM Based SoC Defconfig Updates for v4.3

* Enable fixed voltage regulator in shmobile_defconfig

* tag 'renesas-defconfig2-for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: Enable fixed voltage regulator in shmobile_defconfig

Signed-off-by: Olof Johansson <olof@lixom.net>
2015-08-05 10:35:54 +02:00
Sekhar Nori 2a0e5ef6cf ARM: dts: dra7: workaround UART module disable errata
Add "ti,dra742-uart" to the compatible list so the driver
workaround for UART module disable errata is enabled.

This does not break backward compatibility as existing DTBs
should continue to work with newer kernels albeit without the
capability to idle the UART module when DMA is used.

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-08-04 22:07:22 -07:00
Geert Uytterhoeven 94bdc48d55 ARM: shmobile: sh73a0 dtsi: Add missing "gpio-ranges" to gpio node
If a GPIO driver uses gpiochip_add_pin_range() (which is usually the
case for GPIO/PFC combos), the GPIO hogging mechanism configured from DT
doesn't work:

    requesting hog GPIO led1-high (chip sh73a0_pfc, offset 20) failed

The actual error code is -517 == -EPROBE_DEFER.

The problem is that PFC+GPIO registration is handled in multiple steps:
  1. pinctrl_register(),
  2. gpiochip_add(),
  3. gpiochip_add_pin_range().

Configuration of the hogs is handled in gpiochip_add():

    gpiochip_add
        of_gpiochip_add
            of_gpiochip_scan_hogs
                gpiod_hog
                    gpiochip_request_own_desc
                        __gpiod_request
                            chip->request
                                pinctrl_request_gpio
                                    pinctrl_get_device_gpio_range

However, at this point the GPIO controller hasn't been added to
pinctrldev_list yet, so the range can't be found, and the operation fails
with -EPROBE_DEFER.

To fix this, add a "gpio-ranges" property to the gpio device node, so
the ranges are added by of_gpiochip_add_pin_range(), which is called by
of_gpiochip_add() before the call to of_gpiochip_scan_hogs().

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-05 06:39:28 +09:00
Geert Uytterhoeven 09d1c7b4ba ARM: shmobile: r8a7740 dtsi: Add missing "gpio-ranges" to gpio node
If a GPIO driver uses gpiochip_add_pin_range() (which is usually the
case for GPIO/PFC combos), the GPIO hogging mechanism configured from DT
doesn't work:

    requesting hog GPIO lcd0 (chip r8a7740_pfc, offset 176) failed

The actual error code is -517 == -EPROBE_DEFER.

The problem is that PFC+GPIO registration is handled in multiple steps:
  1. pinctrl_register(),
  2. gpiochip_add(),
  3. gpiochip_add_pin_range().

Configuration of the hogs is handled in gpiochip_add():

    gpiochip_add
        of_gpiochip_add
            of_gpiochip_scan_hogs
                gpiod_hog
                    gpiochip_request_own_desc
                        __gpiod_request
                            chip->request
                                pinctrl_request_gpio
                                    pinctrl_get_device_gpio_range

However, at this point the GPIO controller hasn't been added to
pinctrldev_list yet, so the range can't be found, and the operation fails
with -EPROBE_DEFER.

To fix this, add a "gpio-ranges" property to the gpio device node, so
the range is added by of_gpiochip_add_pin_range(), which is called by
of_gpiochip_add() before the call to of_gpiochip_scan_hogs().

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-05 06:39:28 +09:00
Geert Uytterhoeven 17ccec50cc ARM: shmobile: r8a73a4 dtsi: Add missing "gpio-ranges" to gpio node
If a GPIO driver uses gpiochip_add_pin_range() (which is usually the
case for GPIO/PFC combos), the GPIO hogging mechanism configured from DT
doesn't work:

    requesting hog GPIO led1-high (chip r8a73a4_pfc, offset 28) failed

The actual error code is -517 == -EPROBE_DEFER.

The problem is that PFC+GPIO registration is handled in multiple steps:
  1. pinctrl_register(),
  2. gpiochip_add(),
  3. gpiochip_add_pin_range().

Configuration of the hogs is handled in gpiochip_add():

    gpiochip_add
        of_gpiochip_add
            of_gpiochip_scan_hogs
                gpiod_hog
                    gpiochip_request_own_desc
                        __gpiod_request
                            chip->request
                                pinctrl_request_gpio
                                    pinctrl_get_device_gpio_range

However, at this point the GPIO controller hasn't been added to
pinctrldev_list yet, so the range can't be found, and the operation fails
with -EPROBE_DEFER.

To fix this, add a "gpio-ranges" property to the gpio device node, so
the ranges are added by of_gpiochip_add_pin_range(), which is called by
of_gpiochip_add() before the call to of_gpiochip_scan_hogs().

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-05 06:39:27 +09:00
Roger Quadros 257d5d9a9f ARM: dts: dra7: Add syscon-pllreset syscon to SATA PHY
This register is required to be passed to the SATA PHY driver
to workaround errata i783 (SATA Lockup After SATA DPLL Unlock/Relock).

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
2015-08-04 21:11:50 +05:30
Lorenzo Nava 21caf3a765 ARM: 8398/1: arm DMA: Fix allocation from CMA for coherent DMA
This patch allows the use of CMA for DMA coherent memory allocation.
At the moment if the input parameter "is_coherent" is set to true
the allocation is not made using the CMA, which I think is not the
desired behaviour.
The patch covers the allocation and free of memory for coherent
DMA.

Signed-off-by: Lorenzo Nava <lorenx4@gmail.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-08-04 16:16:21 +01:00
Jon Hunter 4c2880b31c irqchip/gic: Ensure gic_cpu_if_up/down() programs correct GIC instance
Commit 3228950621 ("irqchip: gic: Preserve gic V2 bypass bits in cpu
ctrl register") added a new function, gic_cpu_if_up(), to program the
GIC CPU_CTRL register. This function assumes that there is only one GIC
instance present and hence always uses the chip data for the primary GIC
controller. Although it is not common for there to be a secondary, some
devices do support a secondary. Therefore, fix this by passing
gic_cpu_if_up() a pointer to the appropriate chip data structure.

Similarly, the function gic_cpu_if_down() only assumes that there is a
single GIC instance present. Update this function so that an instance
number is passed for the appropriate GIC and return an error code on
failure. The vexpress TC2 (which has a single GIC) is currently the only
user of this function and so update it accordingly. Note that because the
TC2 only has a single GIC, the call to gic_cpu_if_down() should always
be successful.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: <linux-arm-kernel@lists.infradead.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Nicolas Pitre <nicolas.pitre@linaro.org>
Cc: Jason Cooper <jason@lakedaemon.net>
Link: http://lkml.kernel.org/r/1438332252-25248-2-git-send-email-jonathanh@nvidia.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2015-08-04 14:14:06 +02:00
Roger Quadros 964927f311 ARM: dts: dra7: Add named interrupt property for dwc3
Add interrupt names so that the same can be used for OTG easily.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-04 01:46:36 -07:00
Roger Quadros 8d33c0934b ARM: dts: omap5: Add named interrupt property for dwc3
Add interrupt names so that the same can be used for OTG easily.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-04 01:46:12 -07:00
Felipe Balbi 1d20e4bfd2 ARM: dts: am4372: Add named interrupt property for dwc3
Add interrupt names so that the same can be used for OTG easily.

Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2015-08-04 01:45:44 -07:00
Will Deacon 7baa7aecdd sched, arm: Remove finish_arch_switch()
Fold finish_arch_switch() into switch_to().

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Cc: linux@arm.linux.org.uk
[ Fixed up the SOB chain. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-08-04 09:37:52 +02:00
Mark Rutland be120397e7 ARM: migrate to common PSCI client code
Now that the common PSCI client code has been factored out to
drivers/firmware, and made safe for 32-bit use, move the 32-bit ARM code
over to it. This results in a moderate reduction of duplicated lines,
and will prevent further duplication as the PSCI client code is updated
for PSCI 1.0 and beyond.

The two legacy platform users of the PSCI invocation code are updated to
account for interface changes. In both cases the power state parameter
(which is constant) is now generated using macros, so that the
pack/unpack logic can be killed in preparation for PSCI 1.0 power state
changes.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Rob Herring <robh@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Ashwin Chaugule <ashwin.chaugule@linaro.org>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-08-03 15:38:39 +01:00
Grygorii Strashko 37cf524f93 ARM: psci: boot_secondary: replace __pa with virt_to_idmap
On some PAE systems (e.g. TI Keystone), memory is above the 32-bit
addressable limit, and the interconnect provides an aliased view of
parts of physical memory in the 32-bit addressable space. This alias
is strictly for boot time usage, and is not otherwise usable because
of coherency limitations.

In this case, virt_to_phys(secondary_startup) would return the
physical address of the secondary CPU boot entry point, but on such
systems, this would be above the 4GB limit.

A separate function, virt_to_idmap(), has been provided to return a
usable physical address for functions in the identity mapping, and
this must be used in preference to virt_to_phys() or __pa() to find
the physical entry point for functions in the identity mapping range.

For other systems, virt_to_idmap() and virt_to_phys() return identical
physical addresses.

Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Tested-by Vitaly Andrianov <vitalya@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
[Mark: apply rmk's suggested rewording]
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-08-03 15:38:19 +01:00
Philipp Zabel efdf5aa8f1 ARM: STi: DT: Move reset controller constants into common location
By popular vote, the DT binding includes for reset controllers are located
in include/dt-bindings/reset/. Move the STi reset constants in there, too,
to avoid confusion.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Patrice Chotard <patrice.chotard@st.com>
2015-08-03 13:13:44 +02:00
Peter Zijlstra 11276d5306 locking/static_keys: Add a new static_key interface
There are various problems and short-comings with the current
static_key interface:

 - static_key_{true,false}() read like a branch depending on the key
   value, instead of the actual likely/unlikely branch depending on
   init value.

 - static_key_{true,false}() are, as stated above, tied to the
   static_key init values STATIC_KEY_INIT_{TRUE,FALSE}.

 - we're limited to the 2 (out of 4) possible options that compile to
   a default NOP because that's what our arch_static_branch() assembly
   emits.

So provide a new static_key interface:

  DEFINE_STATIC_KEY_TRUE(name);
  DEFINE_STATIC_KEY_FALSE(name);

Which define a key of different types with an initial true/false
value.

Then allow:

   static_branch_likely()
   static_branch_unlikely()

to take a key of either type and emit the right instruction for the
case.

This means adding a second arch_static_branch_jump() assembly helper
which emits a JMP per default.

In order to determine the right instruction for the right state,
encode the branch type in the LSB of jump_entry::key.

This is the final step in removing the naming confusion that has led to
a stream of avoidable bugs such as:

  a833581e37 ("x86, perf: Fix static_key bug in load_mm_cr4()")

... but it also allows new static key combinations that will give us
performance enhancements in the subsequent patches.

Tested-by: Rabin Vincent <rabin@rab.in> # arm
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Michael Ellerman <mpe@ellerman.id.au> # ppc
Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com> # s390
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-08-03 11:34:15 +02:00
Peter Zijlstra 76b235c6bc jump_label: Rename JUMP_LABEL_{EN,DIS}ABLE to JUMP_LABEL_{JMP,NOP}
Since we've already stepped away from ENABLE is a JMP and DISABLE is a
NOP with the branch_default bits, and are going to make it even worse,
rename it to make it all clearer.

This way we don't mix multiple levels of logic attributes, but have a
plain 'physical' name for what the current instruction patching status
of a jump label is.

This is a first step in removing the naming confusion that has led to
a stream of avoidable bugs such as:

  a833581e37 ("x86, perf: Fix static_key bug in load_mm_cr4()")

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
[ Beefed up the changelog. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-08-03 11:34:12 +02:00
Andrey Konovalov 76695af20c locking, arch: use WRITE_ONCE()/READ_ONCE() in smp_store_release()/smp_load_acquire()
Replace ACCESS_ONCE() macro in smp_store_release() and smp_load_acquire()
with WRITE_ONCE() and READ_ONCE() on x86, arm, arm64, ia64, metag, mips,
powerpc, s390, sparc and asm-generic since ACCESS_ONCE() does not work
reliably on non-scalar types.

WRITE_ONCE() and READ_ONCE() were introduced in the following commits:

  230fa253df ("kernel: Provide READ_ONCE and ASSIGN_ONCE")
  43239cbe79 ("kernel: Change ASSIGN_ONCE(val, x) to WRITE_ONCE(x, val)")

Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Davidlohr Bueso <dbueso@suse.de>
Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Cc: Alexander Duyck <alexander.h.duyck@redhat.com>
Cc: Andre Przywara <andre.przywara@arm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Borislav Petkov <bp@suse.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: James Hogan <james.hogan@imgtec.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arch@vger.kernel.org
Link: http://lkml.kernel.org/r/1438528264-714-1-git-send-email-andreyknvl@google.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-08-03 10:59:30 +02:00
Sergei Shtylyov 054531e7a5 ARM: shmobile: silk: add eMMC DT support
Define the SILK board dependent part of the MMCIF device node (the board has
eMMC chip) along with the  necessary voltage regulator (note that the Vcc/Vccq
regulator is dummy -- it's required by the MMCIF driver but doesn't actually
exist on the board).

Based on the original patch by Vladimir Barinov
<vladimir.barinov@cogentembedded.com>.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-03 09:52:40 +09:00
Sergei Shtylyov 6cdf6ba19c ARM: shmobile: r8a7794: add MMCIF DT support
Define the generic R8A7794 part of the MMCIF0 device node.

Based on the orginal patch by Shinobu Uehara <shinobu.uehara.xc@renesas.com>.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2015-08-03 09:52:30 +09:00
Linus Torvalds 30c7b56d63 ARM: SoC fixes
Things are calming down nicely here w.r.t. fixes. This batch includes two
 week's worth since I missed to send before -rc4.
 
 Nothing particularly scary to point out, smaller fixes here and
 there. Shortlog describes it pretty well.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVvcZ0AAoJEIwa5zzehBx3+dYQAKtl3XvLYKUurbwX5u79qgI5
 66iLTdPkJxmdOArfKERbC4wstb39WcTjP3KRGHGpqWMxQZTZoAHZqx2itoU0CKyI
 IzIu789SzmrwMDbGTOoU4OFeTxA3GNZBPdlxXbcilFqPALnvR9cT9HANc0nOaeOG
 kwunJEKIZoVRDmeAd/u25Z//zRk4BYHcgRMfJRqpGEAIEXT2f+v4whLGjCa1pdPz
 PpL6StHoXQ4raeocDhWAUkz/2HpjOFds1bhvaKmPb1zFissSSYBlS5QpCn110E3k
 kpeu5lPojsVBkLPNqmyyx3vobj6pnDWuz2BdaZa8epqsV00hUnM+kIb+sfXnS24w
 23gEAguT91Vw9hgFdVYc0R4xQwuQWqOmNgS6tkS96Aeie/bFBrPxB86AiA76fIaw
 I/0aDJH2pQc6dMQFpzYK1hK3B4KSwlffKnfgIBUecLiXbWDwcTTwZH8Diwc25hdP
 ozI9k6omUkiMTtyjLuj67/e7yTszxffLExPZlccu//kahhGSGJLhCQoRuRTBA0I6
 bnAXC4hc7damn9Xj4RCM9PBXSWonraGyd6Mlgmr+h4MWZMANHuL4bwNcyQAx/gNq
 muzSSFKak3zbo8zn/8j8l8W+UEPJap4pF01Et3HqeleAUx2j2ap7SKy+7eHn9P4F
 D9EnzPopeZJpXJjf03qV
 =AGL5
 -----END PGP SIGNATURE-----

Merge tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull ARM SoC fixes from Olof Johansson:
 "Things are calming down nicely here w.r.t. fixes.  This batch
  includes two week's worth since I missed to send before -rc4.

  Nothing particularly scary to point out, smaller fixes here and there.
  Shortlog describes it pretty well"

* tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: dts: keystone: fix dt bindings to use post div register for mainpll
  ARM: nomadik: disable UART0 on Nomadik boards
  ARM: dts: i.MX35: Fix can support.
  ARM: OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc
  ARM: dts: add CPU OPP and regulator supply property for exynos4210
  ARM: dts: Update video-phy node with syscon phandle for exynos3250
  ARM: DRA7: hwmod: fix gpmc hwmod
2015-08-02 09:12:46 -07:00
Russell King 1234e3fda9 ARM: reduce visibility of dmac_* functions
The dmac_* functions are private to the ARM DMA API implementation, and
should not be used by drivers.  In order to discourage their use, remove
their prototypes and macros from asm/*.h.

We have to leave dmac_flush_range() behind as Exynos and MSM IOMMU code
use these; once these sites are fixed, this can be moved also.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-08-01 22:25:04 +01:00
Hans de Goede 60018d027d ARM: dts: sun7i: Change cubietruck wifi enable pin to use mmc-pwrseq
The wifi-enable pin of the ap6210 module is not really a regulator,
switch to the mmc-pwrseq framework for controlling it. This more
accurately reflects how the hardware actually works.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
[maxime: Changed the name of the pinctrl node and re-ordered it]
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-08-01 11:25:11 +02:00
David S. Miller 5510b3c2a1 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
	arch/s390/net/bpf_jit_comp.c
	drivers/net/ethernet/ti/netcp_ethss.c
	net/bridge/br_multicast.c
	net/ipv4/ip_fragment.c

All four conflicts were cases of simple overlapping
changes.

Signed-off-by: David S. Miller <davem@davemloft.net>
2015-07-31 23:52:20 -07:00
Murali Karicheri c1bfa985de ARM: dts: keystone: fix dt bindings to use post div register for mainpll
All of the keystone devices have a separate register to hold post
divider value for main pll clock. Currently the fixed-postdiv
value used for k2hk/l/e SoCs works by sheer luck as u-boot happens to
use a value of 2 for this. Now that we have fixed this in the pll
clock driver change the dt bindings for the same.

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2015-07-31 22:30:11 +02:00
Chen-Yu Tsai 8faf3554cb ARM: multi_v7_defconfig: Enable Allwinner P2WI, PWM, DMA_SUN6I, cryptodev
Enable drivers for Allwinner P2WI, PWM, cryptodev (Security System) and
sun6i DMA engine. Also enable EXTCON as PHY_SUN4I_USB depends on it.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 20:01:24 +02:00
Will Deacon 9ac87c5a0b ARM: 8407/1: switch_to: Remove finish_arch_switch
Fold finish_arch_switch() into switch_to(), in preparation for the
removal of the finish_arch_switch call from core sched code.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-07-31 18:58:30 +01:00
Stephen Boyd 787047eea2 ARM: 8392/3: smp: Only expose /sys/.../cpuX/online if hotpluggable
Writes to /sys/.../cpuX/online fail if we determine the platform
doesn't support hotplug for that CPU. Furthermore, if the cpu_die
op isn't specified the system hangs when we try to offline a CPU
and it comes right back online unexpectedly. Let's figure this
stuff out before we make the sysfs nodes so that the online file
doesn't even exist if it isn't (at least sometimes) possible to
hotplug the CPU.

Add a new 'cpu_can_disable' op and repoint all 'cpu_disable'
implementations at it because all implementers use the op to
indicate if a CPU can be hotplugged or not in a static fashion.
With PSCI we may need to add a 'cpu_disable' op so that the
secure OS can be migrated off the CPU we're trying to hotplug.
In this case, the 'cpu_can_disable' op will indicate that all
CPUs are hotpluggable by returning true, but the 'cpu_disable' op
will make a PSCI migration call and occasionally fail, denying
the hotplug of a CPU. This shouldn't be any worse than x86 where
we may indicate that all CPUs are hotpluggable but occasionally
we can't offline a CPU due to check_irq_vectors_for_cpu_disable()
failing to find a CPU to move vectors to.

Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Nicolas Pitre <nico@linaro.org>
Cc: Dave Martin <Dave.Martin@arm.com>
Acked-by: Simon Horman <horms@verge.net.au> [shmobile portion]
Tested-by: Simon Horman <horms@verge.net.au>
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: <linux-sh@vger.kernel.org>
Tested-by: Tyler Baker <tyler.baker@linaro.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-07-31 18:58:30 +01:00
Nathan Lynch 3473f26592 ARM: 8405/1: VDSO: fix regression with toolchains lacking ld.bfd executable
The Sourcery CodeBench Lite 2014.05 toolchain (gcc 4.8.3, binutils
2.24.51) has a GCC which implements -fuse-ld, and it doesn't include
the gold linker, but it lacks an ld.bfd executable in its
installation.  This means that passing -fuse-ld=bfd fails with:

      VDSO    arch/arm/vdso/vdso.so.raw
    collect2: fatal error: cannot find 'ld'

Arguably this is a deficiency in the toolchain, but I suspect it's
commonly used enough that it's worth accommodating: just use

cc-ldoption (to cause a link attempt) instead of cc-option to test
whether we can use -fuse-ld.  So -fuse-ld=bfd won't be used with this
toolchain, but the build will rightly succeed, just as it does for
toolchains which don't implement -fuse-ld (and don't use gold as the
default linker).

Note: this will change the failure mode for a corner case I was trying
to handle in d2b30cd4b7, where the toolchain defaults to the gold
linker and the BFD linker is not found in PATH, from:

      VDSO    arch/arm/vdso/vdso.so.raw
    collect2: fatal error: cannot find 'ld'

i.e. the BFD linker is not found, to:

      OBJCOPY arch/arm/vdso/vdso.so
    BFD: arch/arm/vdso/vdso.so: Not enough room for program headers, try
    linking with -N

that is, we fail to prevent gold from being used as the linker, and it
produces an object that objcopy can't digest.

Reported-by: Baruch Siach <baruch@tkos.co.il>
Tested-by: Baruch Siach <baruch@tkos.co.il>
Tested-by: Raphaël Poggi <poggi.raph@gmail.com>
Fixes: d2b30cd4b7 ("ARM: 8384/1: VDSO: force use of BFD linker")
Cc: stable@vger.kernel.org
Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2015-07-31 18:54:45 +01:00
Chen-Yu Tsai 2a46dd6c0c ARM: sunxi_defconfig: Enable DMA_SUN6I, P2WI, PWM, cryptodev, EXTCON, FHANDLE
Enable sun6i DMA engine, sun6i P2WI, PWM, and crypto engine (Security
System) drivers by default. EXTCON is needed by the updated sun4i USB
PHY driver.

While at it, enable FHANDLE, which is needed by systemd and newer
versions of udev. Also enable CGROUPS for systemd.

And get rid of POWER_RESET, as the sun6i power reset driver has been
removed in favor of proper sun6i watchdog support.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 19:00:55 +02:00
Chen-Yu Tsai 36d16154fd ARM: dts: sun5i: hsg-h702: Enable USB OTG controller
This tablet has proper USB OTG support, using 3 GPIO pins for
ID and VBUS detection, and also VBUS control.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 18:59:51 +02:00
Chen-Yu Tsai d747af013d ARM: dts: sun5i: hsg-h702: Enable side volume buttons with LRADC
The tablet has volume up/down buttons on the side, connected to the LRADC.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 18:59:39 +02:00
Hans de Goede 361a406972 ARM: dts: sun8i: Enable USB DRC on Ippo Q8H-A33 tablet
Enable the otg/drc usb controller on the Ippo Q8H-A33 tablet, for now it
is enabled in host-only mode, because true OTG support requires support
for detecting and enabling Vbus through the axp221 pmic.

For this to work the Vbus on the port must be enabled by u-boot,
or a powered hub must be used.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 18:58:13 +02:00
Mark Janssen 4e627fba05 ARM: dts: sun5i: Enable USB DRC on A13 OLinuxIno
Enable the otg/drc usb controller on the A13 OLinuxIno.

Signed-off-by: Mark Janssen <mark@sig-io.nl>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 18:57:48 +02:00
Hans de Goede 24354cc7c2 ARM: dts: sun5i: Enable USB DRC on A10s OLinuxIno Micro
Enable the otg/drc usb controller on the A10s OLinuxIno Micro.

Note the A10s OlinuxIno Micro always has some voltage on its otg power
pin, even if the usb-vbus0-regulator is disabled, the leaked voltage is
enough to make vbus-det always report 1, so we do not use vbus-det on
this board.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 18:57:25 +02:00
Mark Rutland fa8ad7889d arm: perf: factor arm_pmu core out to drivers
To enable sharing of the arm_pmu code with arm64, this patch factors it
out to drivers/perf/. A new drivers/perf directory is added for
performance monitor drivers to live under.

MAINTAINERS is updated accordingly. Files added previously without a
corresponsing MAINTAINERS update (perf_regs.c, perf_callchain.c, and
perf_event.h) are also added.

Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
[will: augmented Kconfig help slightly]
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-07-31 15:01:14 +01:00
Sudeep Holla bc1e3c4687 ARM: perf: replace arch_find_n_match_cpu_physical_id with of_cpu_device_node_get
arch_find_n_match_cpu_physical_id parses the device tree to get the
device node for a given logical cpu index. However, since ARM PMUs get
probed after the CPU device nodes are stashed while registering the
cpus, we can use of_cpu_device_node_get to avoid another DT parse.

This patch replaces arch_find_n_match_cpu_physical_id with
of_cpu_device_node_get to reuse the stashed value directly instead.

Cc: Will Deacon <will.deacon@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-07-31 15:01:14 +01:00
Will Deacon b6c084d7aa ARM: perf: extend interrupt-affinity property for PPIs
On systems containing multiple, heterogeneous clusters we need a way to
associate a PMU "device" with the CPU(s) on which it exists. For PMUs
that signal overflow with SPIs, this relationship is determined via the
"interrupt-affinity" property, which contains a list of phandles to CPU
nodes for the PMU. For PMUs using PPIs, the per-cpu nature of the
interrupt isn't enough to determine the set of CPUs which actually
contain the device.

This patch allows the interrupt-affinity property to be specified on a
PMU node irrespective of the interrupt type. For PPIs, it identifies
the set of CPUs signalling the PPI in question.

Tested-by: Stephen Boyd <sboyd@codeaurora.org> # Krait PMU
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-07-31 15:01:14 +01:00
Stephen Boyd 8ae81c25cf arm: perf: Set affinity for PPI based PMUs
For PPI based PMUs, we bail out early in of_pmu_irq_cfg() without
setting the PMU's supported_cpus bitmap. This causes the
smp_call_function_any() in armv7_probe_num_events() to fail. Set
the bitmap to be all CPUs so that we properly probe PMUs that use
PPIs.

Fixes: cc88116da0 ("arm: perf: treat PMUs as CPU affine")
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-07-31 15:01:14 +01:00
Remy van Elst b7b1d645bb ARM: dts: sun4i: Enable USB DRC on A10 OLinuxIno Lime
Enable the otg/drc usb controller on the A10 OLinuxIno Lime.

Signed-off-by: Remy van Elst <relst@relst.nl>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2015-07-31 12:08:44 +02:00
Keerthy dff8a20781 ARM: dts: am4372: Set the default clock rate for dpll_clksel_mac_clk clock
cpsw needs the clock to be running at 50MHz in kernel. Hence setting
the default rate.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-07-31 12:13:18 +03:00
Keerthy 93c03a2c36 ARM: dts: AM437X: add dpll_clksel_mac_clk node
The patch adds the missing dpll_clksel_mac_clk clock node.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-07-31 12:13:18 +03:00
Ezra Savard b76da4d875 ARM: zynq: DT: Add zc702 pushbuttons to DT as gpio-keys
Adds the two MIO connected pushbuttons on the zc702 board to the devicetree as a
single multi-key device for us with the gpio-keys driver.

Signed-off-by: Ezra Savard <ezra.savard@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:50:06 +02:00
Alex Wilson 6de663fe33 ARM: zynq: DT: Add missing interrupt for L2 pl310
Add pl310 interrupt to the Zynq devicetree.

Signed-off-by: Alex Wilson <alex.david.wilson@gmail.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:50:05 +02:00
Michal Simek 6835fe4846 ARM: dts: zynq: Add OCM node
Add OCM node for all zynq boards. OCM location
can changed but for all current boards this
is the location where OCM is.`

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:31:14 +02:00
Nathan Lynch e4a9288942 ARM: zynq: reserve space for jump target in secondary trampoline
Add a zero argument to the .word directive in
zynq_secondary_trampoline.  Without an expression the assembler emits
nothing for the .word directive.

This makes it so that the intended range is communicated to ioremap
and outer_flush_range in zynq_cpun_start; e.g. for LE
trampoline_code_size evaluates to 12 now instead of 8.

Found by inspection.  I'm not aware of any real problem this fixes.
Tested by doing on online/offline loop on ZC702.

Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:24:41 +02:00
Vladimir Zapolskiy 3e9f798784 ARM: EXYNOS: fix double of_node_put() on error path
The change removes the second of_node_put(), if
for_each_compatible_node() body execution is not terminated. This
prevents from object refcounter overflow over zero in OF_DYNAMIC
build.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-07-31 10:12:17 +09:00
Vladimir Zapolskiy 27bbd23fe8 ARM: EXYNOS: Fix potentian kfree() of ro memory
The change fixes a bug introduced by 2be2a3ff42, memory allocated
by kstrdup_const() must be always deallocated with kfree_const(),
otherwise there is a risk of kfree'ing ro memory in power domain error
exit path.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Cc: <stable@vger.kernel.org>
Fixes: 2be2a3ff42 ("ARM: EXYNOS: register power domain driver from core_initcall")
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-07-31 10:11:25 +09:00
Nicolas Ferre 22b5a0f7bc ARM: at91/dt: add minimal sama5d2 Xplained board
Add minimal support for the new sama5d2 Xplained board. Only USB,
spi/i2c, ethernet and uart/usart peripherals added.
With this DTS file you can boot the board and begin to play with it.
Rootfs on NFS and sd card have successfully been tested.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2015-07-30 18:44:44 +02:00
Ludovic Desroches e30cf8d322 ARM: at91/dt: add basic dtsi for sama5d2 SoC
Only the basic support for this new Atmel Cortex-A5 SoC. A subset of the
peripherals is setup to allow booting.
IRQ, clocks, USB, crypto, timers, rtc, ethernet, spi/i2c and
uart/usart peripheral nodes are added.

Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-07-30 18:44:44 +02:00