Commit Graph

30458 Commits

Author SHA1 Message Date
Sebastian Reichel 7a89eecfdf ARM: dts: omap3-n900: Add UART support
Add UART support to Nokia N900.

Signed-off-by: Sebastian Reichel <sre@debian.org>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-23 10:11:54 +02:00
Sebastian Reichel 48fc986450 ARM: dts: omap3-n900: Fix i2c bus speed
Fix the bus speed of i2c bus 2 and 3.

Signed-off-by: Sebastian Reichel <sre@debian.org>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-23 10:11:00 +02:00
Sebastian Reichel ac888a8895 ARM: dts: omap3-n900: Add pinctrl for i2c devices
Add pin muxing support for the Nokia N900 i2c controllers.

Signed-off-by: Sebastian Reichel <sre@debian.org>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-23 10:08:08 +02:00
Linus Torvalds db10accfd2 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller:
 "Sorry I let so much accumulate, I was in Buffalo and wanted a few
  things to cook in my tree for a while before sending to you.  Anyways,
  it's a lot of little things as usual at this stage in the game"

 1) Make bonding MAINTAINERS entry reflect reality, from Andy
    Gospodarek.

 2) Fix accidental sock_put() on timewait mini sockets, from Eric
    Dumazet.

 3) Fix crashes in l2tp due to mis-handling of ipv4 mapped ipv6
    addresses, from François CACHEREUL.

 4) Fix heap overflow in __audit_sockaddr(), from the eagle eyed Dan
    Carpenter.

 5) tcp_shifted_skb() doesn't take handle FINs properly, from Eric
    Dumazet.

 6) SFC driver bug fixes from Ben Hutchings.

 7) Fix TX packet scheduling wedge after channel change in ath9k driver,
    from Felix Fietkau.

 8) Fix user after free in BPF JIT code, from Alexei Starovoitov.

 9) Source address selection test is reversed in
    __ip_route_output_key(), fix from Jiri Benc.

10) VLAN and CAN layer mis-size netlink attributes, from Marc
    Kleine-Budde.

11) Fix permission checks in sysctls to use current_euid() instead of
    current_uid().  From Eric W Biederman.

12) IPSEC policies can go away while a timer is still pending for them,
    add appropriate ref-counting to fix, from Steffen Klassert.

13) Fix mis-programming of FDR and RMCR registers on R8A7740 sh_eth
    chips, from Nguyen Hong Ky and Simon Horman.

14) MLX4 forgets to DMA unmap pages on RX, fix from Amir Vadai.

15) IPV6 GRE tunnel MTU upper limit is miscalculated, from Oussama
    Ghorbel.

16) Fix typo in fq_change(), we were assigning "initial quantum" to
    "quantum".  From Eric Dumazet.

17) Set a more appropriate sk_pacing_rate for non-TCP sockets, otherwise
    FQ packet scheduler does not pace those flows properly.  Also from
    Eric Dumazet.

18) rtlwifi miscalculates packet pointers, from Mark Cave-Ayland.

19) l2tp_xmit_skb() can be called from process context, not just softirq
    context, so we must always make sure to BH disable around it.  From
    Eric Dumazet.

20) On qdisc reset, we forget to purge the RB tree of SKBs in netem
    packet scheduler.  From Stephen Hemminger.

21) Fix info leak in farsync WAN driver ioctl() handler, from Dan
    Carpenter and Salva Peiró.

22) Fix PHY reset and other issues in dm9000 driver, from Nikita
    Kiryanov and Michael Abbott.

23) When hardware can do SCTP crc32 checksums, we accidently don't
    disable the csum offload when IPSEC transformations have been
    applied.  From Fan Du and Vlad Yasevich.

24) Tail loss probing in TCP leaves the socket in the wrong congestion
    avoidance state.  From Yuchung Cheng.

25) In CPSW driver, enable NAPI before interrupts are turned on, from
    Markus Pargmann.

26) Integer underflow and dual-assignment in YAM hamradio driver, from
    Dan Carpenter.

27) If we are going to mangle a packet in tcp_set_skb_tso_segs() we must
    unclone it.  This fixes various hard to track down crashes in
    drivers where the SKBs ->gso_segs was changing right from underneath
    the driver during TX queueing.  From Eric Dumazet.

28) Fix the handling of VLAN IDs, and in particular the special IDs 0
    and 4095, in the bridging layer.  From Toshiaki Makita.

29) Another info leak, this time in wanxl WAN driver, from Salva Peiró.

30) Fix race in socket credential passing, from Daniel Borkmann.

31) WHen NETLABEL is disabled, we don't validate CIPSO packets properly,
    from Seif Mazareeb.

32) Fix identification of fragmented frames in ipv4/ipv6 UDP
    Fragmentation Offload output paths, from Jiri Pirko.

33) Virtual Function fixes in bnx2x driver from Yuval Mintz and Ariel
    Elior.

34) When we removed the explicit neighbour pointer from ipv6 routes a
    slight regression was introduced for users such as IPVS, xt_TEE, and
    raw sockets.  We mix up the users requested destination address with
    the routes assigned nexthop/gateway.  From Julian Anastasov and
    Simon Horman.

35) Fix stack overruns in rt6_probe(), the issue is that can end up
    doing two full packet xmit paths at the same time when emitting
    neighbour discovery messages.  From Hannes Frederic Sowa.

36) davinci_emac driver doesn't handle IFF_ALLMULTI correctly, from
    Mariusz Ceier.

37) Make sure to set TCP sk_pacing_rate after the first legitimate RTT
    sample, from Neal Cardwell.

38) Wrong netlink attribute passed to xfrm_replay_verify_len(), from
    Steffen Klassert.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (152 commits)
  ax88179_178a: Add VID:DID for Samsung USB Ethernet Adapter
  ax88179_178a: Correct the RX error definition in RX header
  Revert "bridge: only expire the mdb entry when query is received"
  tcp: initialize passive-side sk_pacing_rate after 3WHS
  davinci_emac.c: Fix IFF_ALLMULTI setup
  mac802154: correct a typo in ieee802154_alloc_device() prototype
  ipv6: probe routes asynchronous in rt6_probe
  netfilter: nf_conntrack: fix rt6i_gateway checks for H.323 helper
  ipv6: fill rt6i_gateway with nexthop address
  ipv6: always prefer rt6i_gateway if present
  bnx2x: Set NETIF_F_HIGHDMA unconditionally
  bnx2x: Don't pretend during register dump
  bnx2x: Lock DMAE when used by statistic flow
  bnx2x: Prevent null pointer dereference on error flow
  bnx2x: Fix config when SR-IOV and iSCSI are enabled
  bnx2x: Fix Coalescing configuration
  bnx2x: Unlock VF-PF channel on MAC/VLAN config error
  bnx2x: Prevent an illegal pointer dereference during panic
  bnx2x: Fix Maximum CoS estimation for VFs
  drivers: net: cpsw: fix kernel warn during iperf test with interrupt pacing
  ...
2013-10-23 07:47:42 +01:00
J Keerthy 620c516898 ARM: dts: DRA7: Add CPU OPP table
Add DT OPP table for DRA7xx family of devices. This data is decoded by
OF with of_init_opp_table() helper function.

The data is based on DRA75x, DRA74x Data Manual revision F (Sept 2013).

TODO: add OPP_HIGH after AVS-Class0 is functional
NOTE: The voltage and frequency values work well only on NOM samples
and it is mandatory to use ABB/AVS Class 0 support for all OPPs.

Clock nodes are pending clock node alignment.

[nm@ti.com: cleanups and rebase to latest]
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: J Keerthy <j-keerthy@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 17:33:40 +02:00
J Keerthy 6c24894d9f ARM: dts: OMAP5: Add CPU OPP table
Add DT OPP table for OMAP54xx family of devices. This data is
decoded by OF with of_init_opp_table() helper function.

The data is based on OMAP543x ES2.0 DM Operating Condition Addendum
Version 0.6(April 2013)

NOTE: The voltage and frequency values work well only on NOM samples
and are supposed to work properly only with ABB/AVS for ALL OPPs.

TODO: Add SPEED BIN OPP after ABB and AVS support so the cpufreq works
on all samples seamlessly. Clock node is pending alignment for clock
dts conversion

[nm@ti.com: sync to latest and fixes]
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: J Keerthy <j-keerthy@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 17:33:29 +02:00
J Keerthy 22f1e7ef81 ARM: dts: dra7-evm: add smps123 supply for CPU
regulator smps123 supply from Palmas PMIC powers CPU0 on DRA7 EVM.

[nm@ti.com: rebase to latest]
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: J Keerthy <j-keerthy@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 17:33:17 +02:00
Nishanth Menon b8981d71b5 ARM: dts: omap5-uevm: add smps123 supply for CPU
regulator smps123 supply from Palmas PMIC powers CPU0 on OMAP5uEVM.

Based on a patch by J Keerthy <j-keerthy@ti.com>

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 17:33:06 +02:00
Nishanth Menon 60c5fc86d0 ARM: OMAP3+: use cpu0-cpufreq driver in device tree supported boot
With OMAP3+ and AM33xx supported SoC having defined CPU device tree
entries with operating-points and clock nodes defined, we can now use
the SoC generic cpufreq-cpu0 driver by registering appropriate device.

Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-22 08:10:09 -07:00
Nishanth Menon 765e7a067e ARM: OMAP2+: add missing lateinit hook for calling pm late init
AM335x, AM43xx, OMAP5 and DRA7 have missing late init hook. Introduce
SoC specific hook with a call to OMAP2+ generic lateinit hook. This
allows the generic late initializations such as cpufreq hooks to be
active.

Based on out-of-tree patches that need to be introduced in
mainline, this introduction allows us to provide the foundation for
further SoC specific features as they are developed.

Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-22 08:09:50 -07:00
Nishanth Menon 92d51856d7 ARM: OMAP3+: do not register non-dt OPP tables for device tree boot
OMAP3+ supports both device tree and non-device tree boot.
Device tree bindings for OMAP3+ is supposed to be added via dts following:
Documentation/devicetree/bindings/power/opp.txt

Since we now have device tree entries for OMAP3+ cpu OPPs,
The current code wrongly adds duplicate OPPs. So, dont register OPPs
when booting using device tree.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-22 08:09:27 -07:00
Marc Zyngier 79c648806f arm/arm64: KVM: PSCI: use MPIDR to identify a target CPU
The KVM PSCI code blindly assumes that vcpu_id and MPIDR are
the same thing. This is true when vcpus are organized as a flat
topology, but is wrong when trying to emulate any other topology
(such as A15 clusters).

Change the KVM PSCI CPU_ON code to look at the MPIDR instead
of the vcpu_id to pick a target CPU.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-22 08:00:06 -07:00
Marc Zyngier 7999b4d182 ARM: KVM: drop limitation to 4 CPU VMs
Now that the KVM/arm code knows about affinity, remove the hard
limit of 4 vcpus per VM.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-22 08:00:06 -07:00
Marc Zyngier 9cbb6d969c ARM: KVM: fix L2CTLR to be per-cluster
The L2CTLR register contains the number of CPUs in this cluster.

Make sure the register content is actually relevant to the vcpu
that is being configured by computing the number of cores that are
part of its cluster.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-22 08:00:06 -07:00
Marc Zyngier 2d1d841bd4 ARM: KVM: Fix MPIDR computing to support virtual clusters
In order to be able to support more than 4 A7 or A15 CPUs,
we need to fix the MPIDR computing to reflect the fact that
both A15 and A7 can only exist in clusters of at most 4 CPUs.

Fix the MPIDR computing to allow virtual clusters to be exposed
to the guest.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-22 08:00:06 -07:00
Eric Witcher 05bc85d1b5 ARM: dts: omap5-uevm: fix mcspi node pin descriptions
Correct mcspi pin descriptions to match corresponding node name and
add chip select number to be consistent with OMAP5 TRM.

Signed-off-by: Eric Witcher <ewitcher@mindspring.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 16:53:01 +02:00
Markus Pargmann e7243b7673 ARM: dts: am33xx, change usb ctrl module label
Control module is not usb specific.
Changes the label to usb_ctrl_mod.

Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 16:52:09 +02:00
Markus Pargmann 0bebda6848 ARM: OMAP2+: irq, AM33XX add missing register check
am33xx has a INTC_PENDING_IRQ3 register that is not checked for pending
interrupts. This patch adds AM33XX to the ifdef of SOCs that have to
check this register.

Cc: stable@vger.kernel.org
Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-22 07:50:18 -07:00
Afzal Mohammed 6246cd06d8 ARM: OMAP2+: wakeupgen: AM43x adaptation
AM43x has 224 interrupts and 7 banks, make it as maximum values. Keep
default values as earlier, if am43x is detected, update interrupts and
banks accordingly.

Also AM43x has only one cpu, ensure that clearing bitmask at wakeupgen
is done only for the single existing cpu, existing code assumes that
there are two cpu's.

If bitmask is cleared in wakeupgen for the nonexistent second cpu,
an imprecise abort happens as soon as Kernel switches to user space.
It was rootcaused by Sekhar Nori <nsekhar@ti.com>.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-22 07:28:12 -07:00
Mark Jackson c351e29018 ARM: dts: Add support for Newflow NanoBone board
NanoBone Specification:
-----------------------
CPU:
  TI AM335x

Memory:
  256MB DDR3
  128MB NOR flash
  128KB FRAM

Ethernet:
  2 x 10/100 connected to SMSC LAN8710 PHY

USB:
  1 x USB2.0 Type A

I2C:
  2Kbit EEPROM (Microchip 24AA02)
  RTC (Maxim DS1338)
  GPIO Expander (Microchip MCP23017)

Expansion connector:
  6 x UART
  1 x MMC/SD
  1 x USB2.0

Signed-off-by: Mark Jackson <mpfj@newflow.co.uk>
Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 14:56:33 +02:00
Tony Lindgren d7c8f25965 ARM: dts: Add missing reg, interrupt and dma entries for omap3
Looks like omap3 is still relying on hwmod data for some basic
device tree information. Let's add the information to omap3.dtsi
so we can remove the related hwmod data once omap3 is DT only.

Acked-by: Benoit Cousson <bcousson@baylibre.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-22 05:34:49 -07:00
Nishanth Menon 6a96867844 ARM: dts: AM33xx+: Add i2c aliases
Provide alias to allow ordering the i2c devices correctly.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 11:05:42 +02:00
Nishanth Menon 20b80942ef ARM: dts: OMAP3+: Add i2c aliases
Currently, on OMAP5, i2c1 and i2c5 defer probe due to pinctrl
dependencies. This changes the i2c ID each bus is registered with in
i2c-dev interface. As a result of this, many userspace tools break and
there is no consistent manner to fix the same if the i2c dev interface
have no consistent numbering.

Since this could happen for other OMAP derivatives, provide i2c alias
for all OMAP3+ SoCs to allow ordering the i2c devices correctly.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 11:05:33 +02:00
Enric Balletbo i Serra 0ae6f9ee55 ARM: dts: igep0033: Add mmc1 node for SDCARD support.
Add mmc1 dt node to IGEP COM AQUILA board.

Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 10:58:41 +02:00
Peter Ujfalusi b9c95bf4e0 ARM: dts: AM4372: Add McASP nodes
Add nodes for McASP0 and McASP1 for AM43xx.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-22 10:37:05 +02:00
Russell King 59fd3033b5 ARM: fix build errors caused by selection of errata 798181
Several configurations are selecting errata 798181 without SMP
being selected.  This causes a warning from Kconfig:

warning: (ARCH_HIGHBANK && ARCH_KEYSTONE && SOC_OMAP5 && ARCH_TEGRA_114_SOC) selects ARM_ERRATA_798181 which has unmet direct dependencies (CPU_V7 && SMP)

The dependencies are compile time dependencies; select violates these,
resulting in:

arch/arm/kernel/built-in.o: In function `setup_processor':
psci.c:(.init.text+0x808): undefined reference to `erratum_a15_798181_init'

at build time.  Fix this by fixing the select statements for Tegra and
Highbank.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2013-10-21 09:33:49 +01:00
Shawn Guo 9ba64fe3eb ARM: imx: enable suspend for imx6sl
The imx6sl low power mode implementation inherits imx6q/dl one,
and pm-imx6q.c can just work for imx6sl with some minor updates.
Let's enable imx6sl suspend support by reusing pm-imx6q.c and use
cpu_is_imxXX() to handle the those minor differences between imx6sl
and imx6q/dl.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:39:27 +08:00
Shawn Guo d48866fefd ARM: imx: ensure dsm_request signal is not asserted when setting LPM
There is a defect in imx6 LPM design.  When SW tries to enter low power
mode with following sequence, the chip will enter low power mode before
A9 CPU execute WFI instruction:

1. Set CCM_CLPCR[1:0] to 2'b00;
2. ARM CPU enters WFI;
3. ARM CPU wakeup from an interrupt event, which is masked by GPC or not
   visible to GPC, such as interrupt from local timer;
4. Set CCM_CLPCR[1:0] to 2'b01 or 2'b10;
5. ARM CPU execute WFI.

Before the last step, the chip will enter WAIT mode if CCM_CLPCR[1:0] is
set to 2'b01, or enter STOP mode if CCM_CLPCR[1:0] is set to 2'b10.

The patch implements a recommended workaround for this issue.

1. SW triggers irq #32(IOMUX) to be always pending manually by setting
   IOMUX_GPR1_GINT bit;
2. SW should then unmask it in GPC before setting CCM LPM;
3. SW should mask it right after CCM LPM is set (bit0-1 of CCM_CLPCR).

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:39:26 +08:00
Shawn Guo 1d674a73c5 ARM: imx6q: call WB and RBC configuration from imx6q_pm_enter()
The WB and RBC configuration calls are currently made from
imx6q_set_lpm() for WAIT_CLOCKED and WAIT_UNCLOCKED mode with a simple
state tracking.  This becomes unnecessary since we can make the calls
from imx6q_pm_enter() directly now for suspend.

More importantly, the current call of imx6q_enable_wb() from
imx6q_set_lpm() is buggy.  The CLPCR register bits configured by
imx6q_enable_wb() will get lost, because imx6q_set_lpm() caches the same
register and write it back at the end of the function.  That's why the
imx6dl suspend/resume does not work currently - the wakeup from suspend
triggers a reset on imx6dl.

Moves the WB and RBC calls into imx6q_pm_enter() to save the state
tracking and fixes above bug, so that suspend/resume can start working
on imx6dl.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:39:25 +08:00
Shawn Guo 9e8147bb5e ARM: imx6q: move low-power code out of clock driver
The LPM (Low Power Mode) code that currently sits in imx6q clock driver
will be reused by imx6sl.  Let's move it into pm-imx6q.c, so that we
can keep clock driver SoC specific and reuse pm-imx6q.c on imx6sl.

In order to avoid adding another ioremap for CCM block,
imx6q_pm_set_ccm_base() is created to let clock driver set up ccm_base
for pm code.

During the move, the unused CCGR macros get removed.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:39:24 +08:00
Shawn Guo 803648db20 ARM: imx: drop extern with function prototypes in common.h
Since commit 70dc8a4 (checkpatch: warn when using extern with function
prototypes in .h files), we will get checkpatch warning when updating
common.h following the existing convention which has extern for function
prototypes.

Let's change the convention to not use extern with function prototypes
in this header.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:39:14 +08:00
Shawn Guo 6050d181a4 ARM: imx: reset core along with enable/disable operation
From hotplug stress test result, resetting core during enable/disable
operation can improve cpu hotplug stability.  So let's set
SRC reset bit in imx_enable_cpu() for the core when its enable bit is
accessed.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:37:32 +08:00
Shawn Guo fcd75f921d ARM: imx: do not return from imx_cpu_die() call
When imx_cpu_die() is being called, the cpu should never return from the
call but just in WFI and wait for hardware to take it down.  So let's
do cpu_do_idle() repeatly in the call.  Doing this help improve the
relibility of hotplug operation.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:37:31 +08:00
Fabio Estevam 85920f3960 ARM: imx_v6_v7_defconfig: Select CONFIG_PROVE_LOCKING
This is very useful for detecting 'circular locking dependency' issues.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:37:30 +08:00
Fabio Estevam 94425a1916 ARM: imx_v6_v7_defconfig: Enable LEDS_GPIO related options
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:37:28 +08:00
Fabio Estevam a0fb706e11 ARM: mxs_defconfig: Turn off CONFIG_DEBUG_GPIO
Having CONFIG_DEBUG_GPIO=y leads to several debug messages polluting kernel log:

[    0.580325] of_get_named_gpio_flags: can't parse gpios property of node '/regulators/3p3v[0]'
[    0.581185] 3P3V: 3300 mV
[    0.584827] of_get_named_gpio_flags exited with status 124
[    0.585852] vddio-sd0: 3300 mV
[    0.590023] of_get_named_gpio_flags exited with status 79
[    0.590770] fec-3v3: 3300 mV
[    0.594805] of_get_named_gpio_flags exited with status 105
[    0.595491] usb0_vbus: 5000 mV
[    0.599687] of_get_named_gpio_flags exited with status 104
[    0.600380] usb1_vbus: 5000 mV
[    0.604463] of_get_named_gpio_flags exited with status 126
[    0.605153] lcd-3v3: 3300 mV
[    0.608970] of_get_named_gpio_flags exited with status 77

Turn this option off, as these messages are not really useful for normal usage.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:37:27 +08:00
Shawn Guo 87a84b6982 ARM: imx: replace imx6q_restart() with mxc_restart()
The imx6q_restart() works fine with normal reboot but will run into
problem with emergency reboot like sysrq-b.  In that case, of_iomap()
gets called from interrupt context and hence triggers the BUG_ON in
__get_vm_area_node().

Actually, since commit c1e31d1 (ARM: imx: create
mxc_arch_reset_init_dt() for DT boot), imx6q/dl should try to use
mxc_restart() by calling mxc_arch_reset_init_dt() beforehand, where
things like of_iomap() can be done.

The patch updates mxc_restart() a little bit to get it work for imx6q/dl
and kill imx6q_restart() completely.

Reported-by: Nathan Lynch <nathan_lynch@mentor.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:36:53 +08:00
Fabio Estevam 6fc6c93eb6 ARM: mach-imx: mm-imx5: Retrieve iomuxc base address from dt
As mx53 is a dt-only SoC, we should retrieve the iomuxc base address from the
device tree, instead of using the old MX53_IO_ADDRESS method.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:35:57 +08:00
Fabio Estevam 823b2fe25a ARM: mach-imx: mm-imx5: Retrieve tzic base address from dt
As mx53 is a dt-only SoC, we should retrieve the tzic base address from the
device tree, instead of using the old MX53_IO_ADDRESS method.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:35:56 +08:00
Fabio Estevam bfcc7bcef5 ARM: mach-imx: clk-imx51-imx53: Retrieve base address and irq from dt
As mx53 is a dt-only SoC, we should retrieve the gpt base address and irq
from the device tree, instead of using the old MX53_IO_ADDRESS method.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:27:55 +08:00
Fabio Estevam a4de29044d ARM: mxs_defconfig: Add CHIPIDEA_UDC support
Generated by doing:

make mxs_defconfig
Manually selected the CHIPIDEA_UDC driver
make savedefconfig
cp defconfig arch/arm/configs/mxs_defconfig

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:13 +08:00
Thierry Reding 1ddd35be8b ARM: imx: Include linux/err.h
The IS_ERR() macro is defined in the linux/err.h header file, so include
it explicitly.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:12 +08:00
Fabio Estevam 15233e1db2 ARM: imx_v6_v7_defconfig: Add CHIPIDEA_UDC support
Generated by doing:

make imx_v6_v7_defconfig
Manually selected the CHIPIDEA_UDC driver
make savedefconfig
cp defconfig arch/arm/configs/imx_v6_v7_defconfig

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:10 +08:00
Fabio Estevam e39c3368aa ARM: imx_v6_v7_defconfig: Add SPDIF support
Generated by doing:

make imx_v6_v7_defconfig
Manually selected the IMX_SPDIF driver
make savedefconfig
cp defconfig arch/arm/configs/imx_v6_v7_defconfig

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:09 +08:00
Sean Cross 74b8031307 ARM: imx6q: clock and Kconfig update for PCIe support
Update imx6q clock initialization and Kconfig for PCIe support.

Signed-off-by: Sean Cross <xobs@kosagi.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:08 +08:00
Sean Cross bf22172158 ARM: imx: Add LVDS general-purpose clocks to i.MX6Q
The i.MX6 has two general-purpose LVDS clocks that can be driven
from a variety of sources.  This patch adds a mux and a gate for
both of these clocks.

Signed-off-by: Sean Cross <xobs@kosagi.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:07 +08:00
Shawn Guo 7655fe53f4 ARM: imx: remove stale mx53_display_revision() declaration
The mx53_display_revision() declaration in common.h is stale and used
nowhere, so remove it.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:15:06 +08:00
Shawn Guo a28875462b ARM: imx6: report soc info via soc device
The patch enables soc bus infrastructure and adds a function
imx_soc_device_init() to report soc info via soc device interface for
imx6qdl and imx6sl.  With the support, user space can get soc related
info by looking at sysfs like below.

  $ cat /sys/devices/soc0/machine
  Freescale i.MX6 Quad SABRE Smart Device Board
  $ cat /sys/devices/soc0/family
  Freescale i.MX
  $ cat /sys/devices/soc0/soc_id
  i.MX6Q
  $ cat /sys/devices/soc0/revision
  1.2

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:14:54 +08:00
Shawn Guo d8ce823fb3 ARM: imx: use imx_init_revision_from_anatop() on imx6sl
Add imx6sl support into imx_init_revision_from_anatop(), so that it can
be used to initialize cpu type and revision on imx6sl.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:13:13 +08:00
Shawn Guo f1c6f31472 ARM: imx: add a common function to initialize revision from anatop
The patch creates a common function imx_init_revision_from_anatop() by
merging imx6q_init_revision() and imx_anatop_get_digprog(), so that any
SoC that encodes revision info in anatop can use it to initialize
revision.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:13:12 +08:00
Shawn Guo 3f75978b37 ARM: imx6q: use common soc revision helpers
It calls imx_set_soc_revision() to set up soc revision in
imx6q_init_revision(), and replaces all the occurrences of
imx6q_revision() with common helper imx_get_soc_revision().

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:12:51 +08:00
Shawn Guo bfefdff8f9 ARM: imx: add soc revision helper functions
Similar to what we do for cpu type, the patch adds helper functions
imx_set_soc_revision() and imx_get_soc_revision() to maintain
imx_soc_revision in cpu.c.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:11:08 +08:00
Shawn Guo c7c3eac627 ARM: imx: add low-level debug for vybrid
Add low-level debug support for vybrid, so that earlyprintk can be
enabled for debugging early boot issue.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:11:07 +08:00
Michael Opdenacker 4c1dd3e5ed ARM: imx: remove IRQF_DISABLED
This flag is a NOOP since 2.6.35 and can be removed.

This is an update for 3.11 of a patch already sent for 3.10

Signed-off-by: Michael Opdenacker <michael.opdenacker@free-electrons.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:11:05 +08:00
Fugang Duan a9aec30dcf ARM: imx6sl: config iomux-gpr1 to select clock for fec
Config iomux-gpr1 to select clock source for fec system clock.
Clear gpr1[14], gpr1[18-17] bit to select the fec clock source
from internal anatop PLL.

Signed-off-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:11:04 +08:00
Nicolin Chen 64990a4314 ARM: imx6q: Add pll4_audio_div to clock tree
There's a pll4_audio_div clock, an extra divider for pll4, missing
in current clock tree, thus add it.

Signed-off-by: Nicolin Chen <b42378@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-21 09:11:02 +08:00
Shawn Guo 6886530bab Merge remote-tracking branch 'shesselba/clk-of-init-v2_for-3.13' into imx/soc 2013-10-21 09:10:56 +08:00
Bartlomiej Zolnierkiewicz ae3c5d74ea ARM: EXYNOS: remove CONFIG_MACH_EXYNOS[4, 5]_DT config options
EXYNOS is now Device Tree (DT) only platform so it makes no sense to have
config options responsible for enabling platform specific DT support.

Moreover the kernel image won't even link if neither CONFIG_MACH_EXYNOS4_DT
nor CONFIG_MACH_EXYNOS5_DT config option is enabled (linker fails with "no
machine record defined" error).

Remove CONFIG_MACH_EXYNOS[4,5]_DT config options and just use the standard
CONFIG_ARCH_EXYNOS[4,5] ones instead.

Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-21 06:35:47 +09:00
Heiko Stuebner 1fecf8958e ARM: S3C24XX: add dma pdata for s3c2410, s3c2440 and s3c2442
s3c2410 and s3c2442 share the same dma channels while s3c2440 has
slight differences. But on all three the reachable sources per dma
channel has constraints attached and thus encodes the usable
combinations using the S3C24XX_DMA_CHANREQ macro.

This also fixes the warning about s3c2410_dma_resource being unused
as reported by Olof Johansson.

Reported-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-21 05:32:48 +09:00
Heiko Stuebner da2f5f4852 ARM: S3C24XX: Fix possible dma selection warning
Currently the s3c sound support selects CONFIG_S3C2410_DMA on s3c24xx
architectures while the generic dma config is enabled by CONFIG_S3C24XX_DMA.

With the way the Kconfig options are layed out currently it is possible
to enable Samsung sound support without enabling the necessary dma support
resulting in warnings like
  warning: (SND_SOC_SAMSUNG && SND_S3C24XX_I2S && SND_S3C2412_SOC_I2S &&
       SND_SOC_SAMSUNG_SMDK2443_WM9710 && SND_SOC_SAMSUNG_LN2440SBC_ALC650)
  selects S3C2410_DMA which has unmet direct dependencies (ARCH_S3C24XX &&
       S3C24XX_DMA && (CPU_S3C2410 || CPU_S3C2442))

Therefore bring the s3c2410 dma support in line with the way the other
s3c24xx SoCs handle this by having the SoC dma-support selected if the generic
s3c dma support is enabled and have the sound support depend on S3C24XX_DMA
on these arches. The s3c2442 is using the same dma descriptors and therefore
also selected S3C2410_DMA.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-21 05:32:48 +09:00
Roger Quadros b462b05ab6 ARM: dts: omap3-beagle: Adapt USB OTG to generic PHY framework
The generic PHY framewrok expects different properties than the
old USB PHY framework. Supply those properties.

Fixes USB OTG port on beagle after the Generic PHY framework was
merged in greg/usb-next. [1]

[1] - https://lkml.org/lkml/2013/9/27/581

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:57 +02:00
Peter Ujfalusi b452985bfa ARM: dts: am335x-evmsk: Audio support
AM335x EVM-SK have only support for audio playback (stereo jack on the
board) via tlv320aic3106 codec connected to McASP1.
Enable the support for audio playback on the board:
- McASP1 configuration
- tlv320aic3106 configuration
- Machine driver.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:57 +02:00
Darren Etheridge f608f8dd31 ARM: dts: am335x-evm: Add audio support for am335x-evm.dts
Adds sound, tlv320aic3106, mcasp1, and am335x_evm_audio_pin nodes.

Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:56 +02:00
Jyri Sarha 0bee55ab78 ARM: dts: AM33XX: mcasp: Add location for data port registers to reg-property
This patch adds a second tuple to reg property. The new property tuple
describes the memory location for data port registers mapped trough
L3 bus on am33xx. The both property tuples are named accordingly in
the reg-names property.

Signed-off-by: Hebbar, Gururaja <gururaja.hebbar@ti.com>
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:56 +02:00
Pantelis Antoniou 3f72f87566 ARM: dts: AM33XX: Add mcasp0 and mcasp1 device tree entries
Add missing mcasp entries in the am33xx.dtsi include file.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:55 +02:00
Mugunthan V N e54686e4c7 ARM: dts: AM4372: Update Support for EPOS EVM
-> Adding pinmux for cpsw, i2c0.
-> Enabling the modules that are present in AM4372 EPOS EVM
These modules are tested on AM4372 EPOS EVM.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:55 +02:00
Lokesh Vutla 9e3269b8c6 ARM: dts: AM4372: Add L2, EDMA, mailbox, MMC and SHAM nodes
Populate nodes for l2-cache-controller, EDMA, mailbox,
mmc, sham.

Update as well DT properties for epwmss, aes, des.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Balaji T K <balajitk@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:54 +02:00
George Cherian c47ee6ee8b ARM: dts: OMAP5: Add dr_mode for dwc3
Added dr_mode property in dwc3 and set its default mode to device.

Signed-off-by: George Cherian <george.cherian@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:54 +02:00
Kishon Vijay Abraham I 46a25f1283 ARM: dts: omap5-uevm: remove always_on, boot_on from smps10_out1
smps10 should be enabled only in the case of host mode. So stop
doing always_on, boot_on from smps10_out1. The driver will enable
it in host mode.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:53 +02:00
Nishanth Menon c1bac171c4 ARM: dts: omap4-panda-es: Do not reset gpio1
Do not reset GPIO1 at boot-up because GPIO 7 in GPIO1 block is used on
OMAP4460 PandaBoard-ES to select voltage register in TPS62361 which
supplies VDD_MPU.

Without this, OMAP4460 PandaBoard-ES boards fail to boot-up because
MPU voltage switches over to VSET0 voltage value (boot voltage) which
is not sufficient to operate the device at OPP100.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:53 +02:00
Rajendra Nayak 6046adb6ad ARM: dts: am335x-evmsk: Do not reset gpio0
Do not reset GPIO0 at  boot-up because GPIO0 is used
on AM335x EVM-SK to control VTT regulators on DDR3.

Without this EVM-SK boards fail to boot-up because
of DDR3 corruption.

Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:42 +02:00
Rajendra Nayak f12ecbe2ea ARM: dts: omap: Add reset/idle on init bindings for OMAP
On OMAP we have co-processor IPs, memory controllers,
GPIOs which control regulators and power switches to
PMIC, and SoC internal Bus IPs, some or most of which
should either not be reset or idled or both at init.
(In some cases there are erratas which prevent an IP
from being reset)
Have a way to pass this information from DT.

Update the am33xx/omap4 and omap5 dtsi files with the
new bindings for modules which either should not be
idled. reset or both. A later patch would cleanup the
same information that exists today as part of the hwmod
data files.

Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:08 +02:00
Roger Quadros d2afcf09e6 ARM: dts: omap3: Adapt USB OTG to generic PHY framework
The generic PHY framewrok expects different properties than the
old USB PHY framework. Supply those properties.

Fixes USB OTG port on GAT04 and N900 after the Generic PHY framework was
merged in greg/usb-next. [1]

[1] - https://lkml.org/lkml/2013/9/27/581

Signed-off-by: Roger Quadros <rogerq@ti.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:16:08 +02:00
Sricharan R 5b025848e1 ARM: dts: OMAP5: Remove clock-frequency field for cpu timers
The arm arch timers frequency are now programmed in the CNTFREQ
per-cpu register by the timer code using the secure API [1].
So remove the redundant entry from the dts.

[1] http://marc.info/?l=linux-omap&m=138139106312786&w=2

Signed-off-by: Sricharan R <r.sricharan@ti.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-20 19:15:46 +02:00
Linus Walleij b41fb43911 Linux 3.12-rc6
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQEcBAABAgAGBQJSYt1vAAoJEHm+PkMAQRiGSosH/RrKaWc9bgfq7AoEXUC3vnhZ
 MX1btSuXMQadTQ8HQo3U33JdWQlqgz8Rj1rOEXPGw/7W3Oyog+jiWmqhdt4C4CKc
 74/RU1y+Rp+tynyUZyq08eaPo0iXTF/pFVuFFhPlqZbDlchjDKg0K3F+SynJlh92
 gD6liV/UjQZExfYGZ8KpoIMfA0cB8jqIYeOCiRu5uaoCz4xWXML2vWWkA4/15gWd
 8K12QVoaH5YcGK6JzkIJGiL2tcUrojTRZIGi3ERozfi7ulkIn14DoRpWZv5Q54/z
 FzNwgfNgcmo6q8ZdscCZa3kaA83BP4W40lYIZyZhpN7i5p0/1Dcw+DgOA2OqSx4=
 =pOPR
 -----END PGP SIGNATURE-----

Merge tag 'v3.12-rc6' into devel

Linux 3.12-rc6

Conflicts:
	drivers/gpio/gpio-lynxpoint.c
2013-10-19 23:24:03 +02:00
H Hartley Sweeten f7d4ffa923 ARM: ep93xx_defconfig: cleanup ep93xx_defconfig
Generate ep93xx_defconfig by doing:

make ep93xx_defconfig
make savedefconfig
mv defconfig arch/arm/configs/ep93xx_defconfig

No function change. This just refreshes the ep93xx_defconfig to make it
easier and cleaner when adding new entries.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Ryan Mallon <rmallon@gmail.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Lennert Buytenhek <kernel@wantstofly.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Olof Johansson <olof@lixom.net>
Cc: Russell King <linux@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-19 14:21:09 -07:00
Greg Kroah-Hartman 5584cfbafc Merge 3.12-rc6 into usb-next.
We want those USB fixes in here as well.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-19 13:19:07 -07:00
Greg Kroah-Hartman f7a0fd56e4 Merge 3.12-rc6 into staging-next.
We want these fixes in here as well.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-19 13:14:34 -07:00
Victor Kamensky a1af347448 ARM: tlb: ASID macro should give 32bit result for BE correct operation
In order for ASID macro to be used as expression passed to
inline asm as 'r' operand it needs to give 32 bit unsigned result,
not unsigned 64bit expression.

Otherwise when 64bit ASID is passed to inline assembler statement
as 'r' operand (32bit) compiler behavior is not well specified.
For example when __flush_tlb_mm function compiled in big endian
case, and ASID is passed to tlb_op macro directly, 0 will be passed
as 'mcr	15, 0, r4, cr8, cr3, {2}' argument in r4, unless ASID
macro changed to produce 32 bit result.

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:36 +01:00
Victor Kamensky 519ceb9fd1 ARM: mcpm: fix big endian issue in mcpm startup code
In big endian mode mcpm_entry_point is first function
that called on secondaries CPU. First it should switch
CPU into big endian code.

[ben.dooks@codethink.co.uk: merge fix patch from Victor into this]
Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:36 +01:00
Victor Kamensky 574e2b5111 ARM: signal: sigreturn_codes should be endian neutral to work in BE8
In case of BE8 kernel data is in BE order whereas code stays in LE
order. Move sigreturn_codes to separate .S file and use proper
assembler mnemonics for these code snippets. In this case compiler
will take care of proper instructions byteswaps for BE8 case.
Change assumes that sufficiently Thumb-capable tools are used to
build kernel.

Problem was discovered during ltp testing of BE system: all rt_sig*
tests failed. Tested against the same tests in both BE and LE modes.

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:36 +01:00
Victor Kamensky 2245f92498 ARM: atomic64: fix endian-ness in atomic.h
Fix inline asm for atomic64_xxx functions in arm atomic.h. Instead of
%H operand specifiers code should use %Q for least significant part
of the value, and %R for the most significant part of the value. %H
always returns the higher of the two register numbers, and therefore
it is not endian neutral. %H should be used with ldrexd and strexd
instructions.

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:36 +01:00
Ben Dooks 5a8b93fc94 ARM: kdgb: use <asm/opcodes.h> for data to be assembled as intruction
The arch_kgdb_breakpoint() function uses an inline assembly directive
to assemble a specific instruction using .word. This means the linker
will not treat is as an instruction, and therefore incorrectly swap
the endian-ness if running BE8.

As noted, this code means that kgdb is really only usable on arm32
kernels, and should be made dependant on not being a thumb2 kernel
until fixed. However this is not something to be added to this patch.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
2013-10-19 20:46:35 +01:00
Ben Dooks 63328070ef ARM: Correct BUG() assembly to ensure it is endian-agnostic
Currently BUG() uses .word or .hword to create the necessary illegal
instructions. However if we are building BE8 then these get swapped
by the linker into different illegal instructions in the text. This
means that the BUG() macro does not get trapped properly.

Change to using <asm/opcodes.h> to provide the necessary ARM instruction
building as we cannot rely on gcc/gas having the `.inst` instructions
which where added to try and resolve this issue (reported by Dave Martin
<Dave.Martin@arm.com>).

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
2013-10-19 20:46:35 +01:00
Ben Dooks 3460743e02 ARM: net: fix arm instruction endian-ness in bpf_jit_32.c
Use <asm/opcodes.h> to correctly transform instruction byte ordering
into in-memory ordering.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
2013-10-19 20:46:35 +01:00
Ben Dooks bfdef3b32d ARM: hardware: fix endian-ness in <hardware/coresight.h>
The <hardware/coresight.h> needs to take into account the endian-ness
of the processor when reading and writing data, so change to using
the readl/writel relaxed variants from the raw ones.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:35 +01:00
Ben Dooks 0ab89d0bf8 ARM: set --be8 when linking modules
To avoid having to make every text section swap the instruction order
of all instructions, make sure modules are built also built with --be8
(as is the current kernel final link).

If we do not do this, we would end up having to swap all instructions
when loading a module, instead of just the instructions that we are
applying ELF relocations to.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
2013-10-19 20:46:35 +01:00
Ben Dooks f592d323bc ARM: module: correctly relocate instructions in BE8
When in BE8 mode, our instructions are not in the same ordering as the
data, so use <asm/opcodes.h> to take this into account.

Note, also requires modules to be built --be8

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
2013-10-19 20:46:35 +01:00
Ben Dooks a79a0cb1d3 ARM: traps: use <asm/opcodes.h> to get correct instruction order
The trap handler needs to take into account the endian configuration of
the system when loading instructions. Use <asm/opcodes.h> to provide the
necessary conversion functions.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-10-19 20:46:34 +01:00
Ben Dooks 8592edf0de ARM: alignment: correctly decode instructions in BE8 mode.
If we are in BE8 mode, we must deal with the instruction stream being
in LE order when data is being loaded in BE order. Ensure the data is
swapped before processing to avoid thre following:

Change to using <asm/opcodes.h> to provide the necessary conversion
functions to change the byte ordering.

This stops the following warning messages from the kernel on a fault:

Unhandled fault: alignment exception (0x001) at 0xbfa09567
Alignment trap: not handling instruction 030091e8 at [<80333e8c>]

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-10-19 20:46:34 +01:00
Ben Dooks 98dec91fa3 ARM: vexpress: add big endian support
Add support for the versatile express systems to boot big-endian.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:34 +01:00
Ben Dooks bca028e7c2 ARM: mvebu: support running big-endian
Add indication we can run these cores in BE mode, and ensure that the
secondary CPU is set to big-endian mode in the initialisation code as
the initial code runs little-endian.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Jason Cooper <jason@lakedaemon.net>
2013-10-19 20:46:34 +01:00
Ben Dooks 50eec2fce4 ARM: highbank: enable big-endian
Apart from a xgmac driver issue, the highbank seems to work correctly in
big-endian mode. Allow the selection of big-endian in the system.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Acked-by: Rob Herring <rob.herring@calxeda.com>
2013-10-19 20:46:34 +01:00
Ben Dooks 099a480913 ARM: smp_scu: data endian fixes
The smp_scu driver needs to use the relaxed readl/write accessors
to avoid any issues with the endian mode the processor core is in.

Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:33 +01:00
Ben Dooks 2e874ea342 ARM: twd: data endian fix
Ensure the twd driver uses the correct calls to access the hardware
to ensure that we do not end up with data in the wrong endian format.

Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:33 +01:00
Ben Dooks 76e3faf156 ARM: pl01x debug code endian fix
The PL01X debug code needs to take into account which endian mode the
processor is running in. If it is big-endian, ensure the data is swapped
appropriately.

Note, we could do this slightly more efficiently if we have an macro to
do the necessary swap for the bits used by test.

Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:33 +01:00
Ben Dooks 97bcb0fea5 ARM: set BE8 if LE in head code
If we are booting in LE and compiled for BE8, then add code to
set the state to bE8. Since the instruction stream is always LE,
we do not need to do anything special to the instruction.

Also ensure that the secondary processors are started in the same mode.

Note, we do add about 20 bytes to the kernel image, but it seems easier
to do this than adding another configuration to change.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-10-19 20:46:33 +01:00
Ben Dooks 2f9bf9bedd ARM: fixup_pv_table bug when CPU_ENDIAN_BE8
The fixup_pv_table assumes that the instructions are in the same
endian configuration as the data, but when the CPU is running in
BE8 the instructions stay in little-endian format.

Make sure if CONFIG_CPU_ENDIAN_BE8 is set that we do all the
alterations to the instructions taking in to account the LDR/STR
will be swapping the data endian-ness.

Since the code is only modifying a byte, we avoid dual-swapping
the data, and just change the bits we clear and ORR in (in the
case where the code is not thumb2).

For thumb2, we add the necessary rev16 instructions to ensure that
the instructions are processed in the correct format, as it was
easier than re-writing the code to contain a mask and shift.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Dave Martin <Dave.Martin@arm.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-10-19 20:46:33 +01:00
Ben Dooks 457c2403c5 ARM: asm: Add ARM_BE8() assembly helper
Add ARM_BE8() helper to wrap any code conditional on being
compile when CONFIG_ARM_ENDIAN_BE8 is selected and convert
existing places where this is to use it.

Acked-by: Nicolas Pitre <nico@linaro.org>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:33 +01:00
Ben Dooks d10d2d4854 ARM: fix ARCH_IXP4xx usage of ARCH_SUPPORTS_BIG_ENDIAN
The Kconfig for arch/arm/mach-ixp4xx has a local definition
of ARCH_SUPPORTS_BIG_ENDIAN which could be used elsewhere.
This means that if IXP4xx is selected and this symbol is
selected eleswhere then an warning is produced.

Clean the following error up by making the symbol be
selected by the main ARCH_IXP4XX definition and have a
common definition in arch/arm/mm/Kconfig

warning: (ARCH_xxx) selects ARCH_SUPPORTS_BIG_ENDIAN which has unmet direct dependencies (ARCH_IXP4XX)
warning: (ARCH_xxx) selects ARCH_SUPPORTS_BIG_ENDIAN which has unmet direct dependencies (ARCH_IXP4XX)

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
2013-10-19 20:46:32 +01:00
Tero Kristo 49e0340232 ARM: OMAP3: control: add API for setting IVA bootmode
OMAP3 PM core requires IVA2 bootmode to be set to idle during init. Currently,
a direct register write is used for this. Add a new ctrl API for this purpose
instead.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-19 10:11:52 -06:00
Tero Kristo c6a2d839d0 ARM: OMAP3: CM/control: move CM scratchpad save to CM driver
OMAP3 PM code for off-mode currently saves the scratchpad contents for CM
registers within OMAP control module driver. However, as we are separating
CM code into its own driver, this must be moved also. This patch adds a
new API for saving the CM scratchpad contents and uses this from the high
level scratchpad save function.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-19 10:11:52 -06:00
Tero Kristo 7a90da2ad3 ARM: OMAP3: McBSP: do not access CM register directly
McBSP driver require special hacks to enable/disable the autoidle feature
for its interface clock for the proper function of the sidetone hardware.
Currently the driver just writes CM registers directly, which should be
avoided. Thus, changed the driver to use the new deny/allow_autoidle
clock API calls.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-19 10:11:51 -06:00
Tero Kristo 818b40e500 ARM: OMAP3: clock: add API to enable/disable autoidle for a single clock
Some drivers require direct access to the autoidle functionality of the
interface clocks. Added clock APIs for these, so that the drivers do not
need to access CM registers directly.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-19 10:11:51 -06:00
Tero Kristo cd6e9db277 ARM: OMAP2: CM/PM: remove direct register accesses outside CM code
Users of the CM funtionality should not access the CM registers directly
by themselves. Thus, added new CM driver APIs for the OMAP2 specific
functionalities which support the existing direct register accesses, and
changed the platform code to use these. This is done in preparation
for moving the CM code into its own individual driver.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-19 10:11:51 -06:00
Thierry Reding bd6a9ddcb9 ARM: tegra: Add Tegra114 powergate support
Extend the list of power gates found on Tegra114. Note that there are
now holes in the list, so perhaps a simple array is no longer the best
data structure to represent it.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:11 -06:00
Thierry Reding f0ea2e0bb8 ARM: tegra: Constify list of CPU domains
There's no need to modify these at runtime, it is static data and never
needs to change.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:11 -06:00
Thierry Reding c1e96da28c ARM: tegra: Remove duplicate powergate defines
Instead of duplicating powergate defines, reuse the ones from the
include/linux/tegra-powergate.h header file.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:10 -06:00
Joseph Lo f0c4ac1329 ARM: tegra: add LP1 support code for Tegra124
The LP1 suspend procedure is the same with Tegra30 and Tegra114. Just
need to update the difference of the register address, then we can
continue to share the code.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:10 -06:00
Joseph Lo 92e94fe1cd ARM: tegra: re-calculate the LP1 data for Tegra30/114
This patch re-calculates the LP1 data of tegra30/114_sdram_pad_address
to base on its label not rely on others. This can make easier to
maintain if some other Tegra chips keep re-using these codes in the
future. And change the name of tegra30_sdram_pad_save to
tegra_sdram_pad_save to make it more common to other chips.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:09 -06:00
Joseph Lo 24036fdc76 ARM: tegra: enable CPU idle for Tegra124
The CPUIdle function of Tegra124 is identical to Tegra114, so we share
the same driver with Tegra114.

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:09 -06:00
Joseph Lo d127e9c5c5 ARM: tegra: make tegra_resume can work with current and later chips
Because the CPU0 was the first up and the last down core when cluster
power up/down or platform suspend. So only CPU0 needs the rest of the
functions to reset flow controller and re-enable SCU and L2. We also
move the L2 init function for Cortex-A15 to there. The secondery CPU
can just call cpu_resume.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:08 -06:00
Joseph Lo 9997e62682 ARM: tegra: CPU hotplug support for Tegra124
The procedure of CPU hotplug for Tegra124 is same with Tegra114. We
re-use the same function with it.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:08 -06:00
Joseph Lo 6ca91f9d64 ARM: tegra: add PMC compatible value for Tegra124
The PMC HW is not identical to the existing Tegra SoC. Hence add to it.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:07 -06:00
Joseph Lo 7394447505 ARM: tegra: add Tegra124 SoC support
Add Tegra124 SoC support that base on CortexA15MP Core. And enable the
SMP function that can re-use the same procedure with Tegra114.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-18 16:28:07 -06:00
Stephen Warren 3bd1ae57f7 ARM: tegra: add fuses as device randomness
Various fuses on Tegra include information that's unique to an individual
chip, or a subset of chips. Call add_device_randomness() with this data
to perturb the initial state of the random pool.

Suggested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-18 16:28:06 -06:00
Kevin Hilman ee4383e0c1 Changes needed to drop legacy booting support for some
omap3 boards.
 
 Note that that these are based on a merge of the
 following for the dependencies:
 
 - v3.12-rc5 for fixes to pinctrl mask
 - omap-for-v3.13/dt-signed to avoid pointless merge conflicts
 - omap-for-v3.13/quirk-signed for legacy pdata handling
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQIcBAABAgAGBQJSYXP6AAoJEBvUPslcq6Vz2fcQAJyOHsHVNs3vxpB2CbFWzgl7
 D4tFyL3pHlq9+p/VJwthUoY6WIiWIgEcKoLACD39w+EQ3XThcG1coc0TFj8IPxTr
 QOCn5sMu1Z11OKhegcTEhySp8GUrmtNFplMCNK3jPsLjYLdVxOopjziO7qcCd49O
 7pjCPfHoU5NkAACcm2nmE2uAlYP4STpGDnzwsi/aHZZQSIni2MslyeN9LeXdwBrN
 of29pw8gTA0TVQSXemq0oLnMlEYzLd0ICG2SjSmJ/tWX0vXwjQl4fdDkqHwumPxo
 wyjVw744AuXy0WC7PZluQxadd0jEptAs7XSsYgTGOvececWtmZEJDzPGamfabhlX
 V6aHIqwVyDOGJXjQkUuaNuD5eO+afDwyaeVOla8YgE9ugwEs3xDXfHdks9nC8n4I
 OAk+hXfEBPpLQgItkP+Q3EnYIUJVh4ew5oWCHVfXM8ssKTH6bblWFVtJXP1eyC+0
 qkcHOHMR5oK4p+YAmRoRkeMG+Fe2pzT7dWOli4lPVXre1MAd/DQM5+NvgMaveW/E
 S8YHj5mRR7a13OAgOWtscjUz+hWE+WIBkCyFuo0w4+RMShKtsiuC+FJirsQpCxLp
 aFuwGG8ixT0F4WL/9Ao4iVmIOt15YIW3ND9ubHrPL2Ll0nGPwSmJSb+B7OgSFwqo
 G3r4/CSgwljeUq4FZox4
 =9Iuv
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/board-removal-signed-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

From Tony Lindgren:
Changes needed to drop legacy booting support for some
omap3 boards.

Note that that these are based on a merge of the
following for the dependencies:

- v3.12-rc5 for fixes to pinctrl mask
- omap-for-v3.13/dt-signed to avoid pointless merge conflicts
- omap-for-v3.13/quirk-signed for legacy pdata handling

* tag 'omap-for-v3.13/board-removal-signed-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (125 commits)
  ARM: OMAP2+: remove legacy support for IGEP boards
  ARM: OMAP2+: Remove legacy support for zoom platforms
  ARM: OMAP2+: Remove legacy booting support for omap3 EVM
  ARM: OMAP2: delete board-rm680
  ARM: dts: add minimal DT support for Nokia N950 & N9 phones
  ARM: dts: Add basic support for zoom3
  ARM: dts: Add basic support for TMDSEVM3730 (Mistral AM/DM37x EVM)
  ARM: dts: Add common support for omap3-evm
  ARM: dts: Shared file for omap GPMC connected smsc911x
  +Linux 3.12-rc5

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-18 11:30:37 -07:00
Russell King 8754c4bf2a Merge branch 'for-rmk/arm-mm-lpae' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into devel-stable
This series extends the existing ARM v2p runtime patching for 64 bit.
Needed for LPAE machines which have physical memory beyond 4GB.
2013-10-18 19:16:01 +01:00
Tony Lindgren ffd076eea3 ARM: OMAP1: Fix a bunch of GPIO related section warnings after initdata got corrected
Commit f8e7ba66 (ARM: OMAP1: fix incorrect placement of
__initdata tag) fixed things but we started seeing section
warnings. Looks like I missed those in my automatic
build scripts:

Section mismatch in reference from the variable omap7xx_gpio6 to the (unknown reference) .init.data:(unknown)
Section mismatch in reference from the variable omap7xx_gpio6 to the (unknown reference) .init.data:(unknown)
Section mismatch in reference from the variable omap7xx_gpio5 to the (unknown reference) .init.data:(unknown)
...

Fix the issue by removing __initdata for the resources.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-18 10:50:51 -07:00
Javier Martinez Canillas 06ff74fd19 ARM: OMAP2+: remove legacy support for IGEP boards
Device Tree support for IGEP boards in mainline is almost
finished. The only remaining bits are support for the
Marvell SD8686 wifi + BT and TFP410 DVI chips.

Adding support for these should be straightforward so let's
not block OMAP3 moving to Device Tree only boot and remove
the board file for IGEP boards.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-18 10:25:46 -07:00
Tony Lindgren 97411608fd ARM: OMAP2+: Remove legacy support for zoom platforms
We now have pretty decent device tree based support for
zoom platforms. It's not complete, but basics work for
me so adding more features should be quite trivial.

Looks like also 3630 sdp is zoom based, and looking
at it's board file should also be trivial to support
with the device tree based booting.

Patches are welcome if people are still using these.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-18 10:24:33 -07:00
Tony Lindgren 95807689ea ARM: OMAP2+: Remove legacy booting support for omap3 EVM
We now have pretty decent support with the device tree
based booting. Patches to add more features are welcome.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-18 10:24:33 -07:00
Aaro Koskinen dfcc11ad4a ARM: OMAP2: delete board-rm680
Delete board file for Nokia RM-680/RM-696 (N950/N9). DT-based booting
should be used for further development on this HW.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-18 10:24:33 -07:00
Aaro Koskinen df01318850 ARM: dts: add minimal DT support for Nokia N950 & N9 phones
Add minimal DT support for Nokia N950 & N9 phones. The same functionality
that is provided by the current board file should work: serial console,
USB, OneNAND and MMC.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-18 10:24:33 -07:00
Tony Lindgren c482525659 ARM: dts: Add basic support for zoom3
I've tested serial, MMC, smsc911x and wl12xx on zoom3. As my
omap is an early ES revision, I have not been able to test
off-idle on this one. But anyways, I'd say we have enough
device tree support for the zoom to be able to drop the
board-zoom files. Patches are welcome to add further features
to this .dts file.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-18 10:24:33 -07:00
Shawn Guo 5f7adc9762 ARM: imx: imx6sl iomuxc syscon is compatible to imx6q
The imx6sl iomuxc syscon is compatible to imx6q, so let's add
compatible string 'fsl,imx6q-iomuxc-gpr' for imx6sl iomuxc syscon node.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-18 23:27:37 +08:00
Kevin Hilman af43ef6770 First DT series for 3.13
- addition of sound for at91sam9n12
 - a little fix for MMC vs. SPI on at91sam9g20ek
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJSYUtRAAoJEAf03oE53VmQH+EH/1YhBDF7uL5s+TCKLBOyau+G
 i+W93uG4acZAdbUMRwY+/dP5HMwFu5ZSoKDD5LoRnG2O+jW5dB3rBPi1C42XRKa/
 ra1wQcabKFPERJGDJ8DWbuLoJ7WNiDNENDa5ckV3m+F7dRbflcNyUB7vPUiGW78c
 xe/WKCKB9Hhpytl1fAynRs+VEu/z3hW7KV7QFyVDatOtV11Vb4QSSJ5HjfMhfito
 T7zAsML26hIdcNRsDQs8/4Uwgy8Tevl6FbtLHvht18BJB7FSxRtiPrAGh0KAmwsl
 HwIT8RzgJqdDlXTi9z9BdLFlvFZkX83n12jrB7hGScOKav45kvmmC9pgwhFbRzk=
 =uw6I
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt' of git://github.com/at91linux/linux-at91 into next/dt

From Nicolas Ferre:
First DT series for 3.13
- addition of sound for at91sam9n12
- a little fix for MMC vs. SPI on at91sam9g20ek

* tag 'at91-dt' of git://github.com/at91linux/linux-at91:
  ARM: at91: remove pinctrl conflict between mmc and SPI for at91sam9g20ek
  ARM: at91: add sound support on at91sam9n12ek board
  ARM: at91: enable ssc on at91sam9n12ek board
  ARM: at91: enable wm8904 on at91sam9n12ek board
  ARM: at91: add ssc dma parameter for at91sam9n12
  ARM: at91: add at91sam9n12 ssc clock in look up table

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-18 08:21:28 -07:00
Kevin Hilman 76df26b5bb First cleanup series for 3.13
- a little non-urgent fix
 - addition of DT files to MAINTAINERS
 - more important, the splitting of .dtsi files
   that allows to precisely choose the peripherals
   that are present for a particular SoC.
   It is useful for upcoming move to common cloks.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJSYT2LAAoJEAf03oE53VmQfRMIAIgFQruxaCTlhpvdZaEyDeIK
 6+szV0Nn9irQyZqe2HvUR6Flb7FfmAGiyS0xj/OY4bEBbCOeau8Df/op3fVa6+Q2
 t510ricL9OWaSqaIsKgJqk3mjpq/7jMrXBQzBjQFgKVcJSA+zOJNiB6qabmE9KjY
 z/2+hYaBgG7WwWffHmJQ34NYrIqrWbqaGZczxY9IVw7i4kfDXPL2t2JZk2JTwstt
 4C4CRxKXx27EMF0gE2BOgH0r1euaqllSg4ogYlQkBn2canylvNYiRN2Eu36g4peE
 cGjtW/8R0ngz3udeoQWeHZ+nZoFT15m048xgIOUbxX5Ocy7u7HSL0tbaH+W9ciI=
 =VlMj
 -----END PGP SIGNATURE-----

Merge tag 'at91-cleanup' of git://github.com/at91linux/linux-at91 into next/cleanup

From Nicolas Ferre:
First cleanup series for 3.13
- a little non-urgent fix
- addition of DT files to MAINTAINERS
- more important, the splitting of .dtsi files
  that allows to precisely choose the peripherals
  that are present for a particular SoC.
  It is useful for upcoming move to common cloks.

* tag 'at91-cleanup' of git://github.com/at91linux/linux-at91:
  MAINTAINERS: Add patterns for DTS files for AT91
  ARM: at91: remove init_machine() as default is suitable
  ARM: at91/dt: split sama5d3 peripheral definitions
  ARM: at91/dt: split sam9x5 peripheral definitions
  ARM: at91: cam60: fix incorrect placement of __initdata tag
2013-10-18 07:57:17 -07:00
Kevin Hilman abcba009e5 Changes needed for am43xx for the hwmod data.
This will be the last new set of hwmod data for any SoC
 as future SoCs will use a driver and device tree based
 approach. But before that can be dealt with, we need to
 first sort out the pending driver/clk issues.
 
 Queued by Paul Walmsley <paul@pwsan.com>:
 
 Add hwmod and PRCM data for the TI AM43xx family of SoCs.
 
 Under normal circumstances, these patches would not be merged.
 The hwmod and PRCM data should be moved out either to DT data or
 to drivers/.  Also, the current implementation trades off lines
 of diff by dynamically rewriting static data at runtime, which is
 a bad practice - it causes future maintenance headaches.
 However, after speaking with my upstream, it sounds like it's
 better to merge these patches in their current state, due to long
 term considerations.
 
 Basic test logs are here:
 
 http://www.pwsan.com/omap/testlogs/am43xx_support_v3.13/20131015213706/
 
 Due to the lack of an AM43xx board and any available public
 documentation, it's impossible for me to review or test that
 platform in any meaningful way.  But at least the tests above
 verify that the patches don't affect existing platforms -
 particularly AM33xx.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSYCXAAAoJEBvUPslcq6VzDiIP/28rQiqboGE8VVj3UACFop13
 S+MME1ylvehHu5o/S39vaQ69OLXc5pdP8qaIWcJAJiEOQHoeVbPP+gGzBt1QAZC/
 1G5CTsVNG4uPtJUcsdS46bp6+T2ubs+bZg3ytgxLTC47R/NMI/73F/JUxw/QolYl
 7ppyasBF+UGxuwptHsF3ZPWBrausJswC4PMs47rWA0/cc72I47gmy4l+hrCjoBMA
 /PYgbvtFkEugqj2MJVEfr0u7Fm1L5pU9wbKBPQ+3pa3wLqW2hZc0ORGhyyalIVFd
 GSHyAqgdIbegtzQTivIaSpxlpqQUGFKih08K/dH7h4K7em2VRuDZmGErsmCniLsS
 KaWrJolBIyKR03jkdgqD+gz9jkUxTqnLqY0H9GYanq65vVUqkP33htKDARIJOsDQ
 XMXxkeQs54869D+Or31owAJ5zSq4OZL+TeqTAcWrRURhBCswyxtdTN5JjrNiJWKP
 FvXp3m9+++/rPd5rpyrn6Sb3wwd9j31CaMzOgEsDqAcLA0E/+i5ZjekhSBQy0GHy
 0ShWzkizn4xsHPbiHp9VVaZ5XkSS87m4C+k4cgT60qSgiqUO3K84ApMqiYiuTE2k
 rcPA2bEGQ8C+Wmp6EhQ+dU4KP9HtFsK9YLVWnqhjPGNa1w+1i7Ds5zpso8/VPBqO
 IoPtLJcE5fgQQUnU7Cbv
 =amRz
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/am43xx-hwmod-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

From Tony Lindgren:
Changes needed for am43xx for the hwmod data.

This will be the last new set of hwmod data for any SoC
as future SoCs will use a driver and device tree based
approach. But before that can be dealt with, we need to
first sort out the pending driver/clk issues.

Queued by Paul Walmsley <paul@pwsan.com>:

Add hwmod and PRCM data for the TI AM43xx family of SoCs.

Under normal circumstances, these patches would not be merged.
The hwmod and PRCM data should be moved out either to DT data or
to drivers/.  Also, the current implementation trades off lines
of diff by dynamically rewriting static data at runtime, which is
a bad practice - it causes future maintenance headaches.
However, after speaking with my upstream, it sounds like it's
better to merge these patches in their current state, due to long
term considerations.

Basic test logs are here:

http://www.pwsan.com/omap/testlogs/am43xx_support_v3.13/20131015213706/

Due to the lack of an AM43xx board and any available public
documentation, it's impossible for me to review or test that
platform in any meaningful way.  But at least the tests above
verify that the patches don't affect existing platforms -
particularly AM33xx.

* tag 'omap-for-v3.13/am43xx-hwmod-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2: hwmod: Add qspi data for am437x.
  ARM: OMAP2+: hwmod: Add USB hwmod data for AM437x.
  ARM: OMAP2+: AM43x PRCM init
  ARM: OMAP2+: AM43x: PRCM kbuild
  ARM: OMAP2+: hwmod: AM43x operations
  ARM: OMAP2+: hwmod: AM43x support
  ARM: OMAP2+: CM: AM43x clockdomain data
  ARM: OMAP2+: PM: AM43x powerdomain data
  ARM: OMAP2+: PRCM: AM43x definitions
  ARM: OMAP2+: hwmod: AM335x: remove static register offs
  ARM: OMAP2+: hwmod: AM335x: runtime register update
  ARM: OMAP2+: hwmod: AM335x/AM43x: move common data
  ARM: OMAP2+: CM: cm_inst offset s16->u16

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-18 07:50:51 -07:00
Jean-Christophe PLAGNIOL-VILLARD e483341ce8 ARM: at91: remove pinctrl conflict between mmc and SPI for at91sam9g20ek
These MMC and SPI buses can't be configured at the same time because they
share the same traces on the EK board.

Reported-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-18 16:50:13 +02:00
Kevin Hilman 9657b772e9 Fixes for v3.12
- correct typo 'samsung,pin-drv'
 - correct typo 'earlyprintk'
 - cpufreq regulator lookup for exynos4210-origen and trats
 - fix PL330 MDMA1 address for universal c210 board
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSXcEiAAoJEA0Cl+kVi2xqFhIP/3tSUZsXJk0r/uVCjDoPKqKV
 YT7/HOASpD2581wcppHgQuKOsMq4gH5e/04t3OyrmjYERTTyiPu14ChaYKsnxIWT
 8uJc1cTpkhvZeiZnYTZC1dB8Ab7Uo1LWMbTdjPiltmGk/j9aDc8Hk5w7f/S3PjB5
 RqOulsf2pas7RqvnANX5QH6XOOmEsULarP6EZJDQg4ULf+0/lXUtHJrV3DZGo9lm
 x+xu/+SLG/RAzNu7L/i3S+Aam/+jXodpgVnRr8UigpXVvc7lm6W70Ue8yFVVThdy
 5Fdw8gkH7fZMMI2EfOH+8xiDJrY3Ct5Zqzmwop2NPDMBTws0CRnbodfrsvPFLKt5
 B+DCt2/KFSZNsRrcEYuEDU8sfLnpLHpALhkIAVzyMamQ7tzelmqajmCdxBiP5rCa
 MIBBHFTlWytevNq6KQJpM2+eoHJuAsL+ePvXyfppJJrUZc2bU292xQU6giYbkeOB
 SBOQuqfCgfHHE4sQIMywfiOz1MiVm87krVvk3UgS2TUxwkSJev9UvBxMA0+pOZc7
 D5orO7dykSX+/VMRTx/MvA8kPdhbCwp8RZFfoj1ICJXbvGRY/g2KtMEU9SZ2is9+
 lJ2+tWqnQeG2PsR5eIcSy/F0GbZQRfHqb+SBi6a79Xc+Jt132ra/iXAGmuJwVkft
 cveLEIahwMKu3aWgWetz
 =LN5l
 -----END PGP SIGNATURE-----

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

From Kukjin Kim:
Fixes for v3.12
- correct typo 'samsung,pin-drv'
- correct typo 'earlyprintk'
- cpufreq regulator lookup for exynos4210-origen and trats
- fix PL330 MDMA1 address for universal c210 board

* tag 'samsung-fixes-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: dts: fix PL330 MDMA1 address in DT for Universal C210 board
  ARM: dts: Work around lack of cpufreq regulator lookup for exynos4210-origen and trats boards
  ARM: dts: Fix typo earlyprintk in exynos5440-sd5v1 and ssdk5440 boards
  ARM: dts: Correct typo in use of samsung,pin-drv for exynos5250

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-18 07:14:30 -07:00
Kevin Hilman 60cd8b09f1 Merge branch 'rockchip/boards' into next/boards
From Heiko Stübner:
Support for the RK3188 SoC, basic RK3188 based Radxa Rock board
and RK3066a based BQ Curie2 tablet.

* rockchip/boards:
  ARM: rockchip: add support for rk3188 and Radxa Rock board
  ARM: rockchip: add dts for bqcurie2 tablet
  ARM: rockchip: enable arm-global-timer
  ARM: rockchip: move shared dt properties to common source file
2013-10-18 07:02:04 -07:00
Kevin Hilman 80a18f5043 Romoval of obsolete (never used) dt properties
and fix for the selection of the TWD.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQEcBAABCAAGBQJSYDcLAAoJEPOmecmc0R2Bsk8IAJYlUERribDudz9RwlG5M9ml
 51VZqJfvc1h0odPS0FnuB+qc2SA4zzqfwWFmqDfBA1XttlC800TAFA9c3zcrqIKt
 saJdEnnV1DiCJxhayxDhARIuCQI3pQj/2b88sFrkf3EQZRCoXrpehJpvQrZRYqUn
 /Za7cbl5Krzvr9G33P5kIORdkNxxY7kygXmoEK6jsDxJmIuB9wIgHMz9SfavxGhH
 y0EfyXFJ093jrAOrs5oTxd7FB/Tb2Y4N81moZUxKTKGfv6hrVeBOhfJbrbTLvrP+
 ZgjmBpgZrn0bn3tox1b8ZCa9ZDJbYipZF+MkHzhXhTYMrqPIS2Ht9aSUZWORRHU=
 =0kg9
 -----END PGP SIGNATURE-----

Merge tag 'v3.13-rockchip-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into fixes-non-critical

From Heiko Stübner:
Romoval of obsolete (never used) dt properties
and fix for the selection of the TWD.

* tag 'v3.13-rockchip-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: rockchip: remove obsolete rockchip,config properties
  ARM: rockchip: fix wrong use of non-existent CONFIG_LOCAL_TIMERS
2013-10-18 06:36:33 -07:00
Linus Walleij 6e1484c276 ARM: ux500: register all SSP and SPI blocks
This adds the SSP and SPI blocks to the device tree and makes
them active. Only this way can their clocks be properly gated
off at boot.

Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-18 14:55:44 +02:00
Linus Walleij 72b3e249ce ARM: ux500: fix I2C4 clock bit
The PCLK for I2C4 is controlled by bit 10 in the PCKEN registers
while the KCLK is controlled by bit 9 on the KCKEN, it's
one of these odd assymetric things. Correct the PCLK bit to 10.

Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-18 14:55:43 +02:00
Linus Walleij d591640adc ARM: ux500: fix clock for GPIO blocks 6 and 7
The clock assignment in the device tree for GPIO blocks 6
and 7 was incorrect, indicating this was managed by bit 1 on
PRCC 2 while it was in fact bit 11 on PRCC 2.

Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-18 13:25:46 +02:00
Linus Walleij 84873cb773 ARM: ux500: fix clock for GPIO block 8
The clock assignment in the device tree for GPIO block 8 was
incorrect, indicating this was managed by bit 1 on PRCC 6
while it was in fact bit 1 on PRCC 5.

Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-18 13:25:21 +02:00
Huang Shijie d1b539758a ARM: dts: imx6sl-evk: enable the SPI NOR
enable the spi nor for imx6sl-evk boards.

Signed-off-by: Huang Shijie <b32955@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-18 16:27:45 +08:00
Huang Shijie dc1089206d ARM: dts: imx6sl: add a pinctrl for ECSPI1
add a pinctrl for ECSPI1. This pinctrl can be used in the imx6sl-evk board.

Signed-off-by: Huang Shijie <b32955@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-18 16:27:38 +08:00
Steffen Trumtrar 443b6585ac ARM: imx27: add missing #pwm-cells property
The pwm-node is missing its #pwm-cells property. The pwm-framework will
complain about this.

Add the missing property.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-18 16:27:01 +08:00
Christoffer Dall 9b5fdb9781 KVM: ARM: Transparent huge page (THP) support
Support transparent huge pages in KVM/ARM and KVM/ARM64.  The
transparent_hugepage_adjust is not very pretty, but this is also how
it's solved on x86 and seems to be simply an artifact on how THPs
behave.  This should eventually be shared across architectures if
possible, but that can always be changed down the road.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-17 17:06:30 -07:00
Christoffer Dall ad361f093c KVM: ARM: Support hugetlbfs backed huge pages
Support huge pages in KVM/ARM and KVM/ARM64.  The pud_huge checking on
the unmap path may feel a bit silly as the pud_huge check is always
defined to false, but the compiler should be smart about this.

Note: This deals only with VMAs marked as huge which are allocated by
users through hugetlbfs only.  Transparent huge pages can only be
detected by looking at the underlying pages (or the page tables
themselves) and this patch so far simply maps these on a page-by-page
level in the Stage-2 page tables.

Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-17 17:06:20 -07:00
Kevin Hilman 163556896d Merge branch 'tegra/defconfig' into next/boards
From Stephen Warren:
* tegra/defconfig:
  ARM: tegra: defconfig updates

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 16:06:25 -07:00
Kevin Hilman ec902c620b Merge branch 'tegra/dt' into next/dt
From Stephen Warren:
* tegra/dt:
  ARM: tegra: Use symbolic names for gr3d clocks
  ARM: tegra: Mark Tegra30 display controller compatible with Tegra20
  ARM: tegra: add GPIO controller to tegra124.dtsi
  ARM: tegra: enable LP1 suspend mode for Venice2
  ARM: tegra: enable Tegra RTC as default for Tegra124
  ARM: tegra: add Venice2 board support
  ARM: tegra: Add initial device tree for Tegra124
  ARM: tegra: add vcc supply for nct1008 to Cardhu
  ARM: tegra: add DT entry for nct1008 to Dalmore
  ARM: tegra: use dt-binding header for key code
  ARM: tegra: add palmas pincontrol to Dalmore device tree

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 16:02:51 -07:00
Josh Wu c8b11de040 iio: at91: introduce touch screen support in iio adc driver
AT91 ADC hardware integrate touch screen support. So this patch add touch
screen support for at91 adc iio driver.
To enable touch screen support in adc, you need to add the dt parameters:
  1. which type of touch are used? (4 or 5 wires), sample period time.
  2. correct pressure detect threshold value.

In the meantime, since touch screen will use a interal period trigger of adc,
so it is conflict to other hardware triggers. Driver will disable the hardware
trigger support if touch screen is enabled.

This driver has been tested in AT91SAM9X5-EK and SAMA5D3x-EK.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
CC: devicetree@vger.kernel.org
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2013-10-17 23:57:10 +01:00
Kevin Hilman b25a51cb16 ARM: tegra: cleanup for 3.13
This branch mainly removes dead code and defines that were useful only
 when booting using board files. A few other misc cleanups are also
 included.
 
 This branch is based on previous pull request
 tegra-for-3.13-deps-for-arm-init-time-cleanup.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSYDBlAAoJEMzrak5tbycxXIoP/2A5Vt2G11q+Fv/AX7zSLCPB
 f6eoTjao9ye2FGesHk9RkZFxaaPNmeI9OY+7SNnaPvDlRruQdlgd85C5DJjZGwge
 65mw/e7hyaWKhhHk9KUOCfRB9W4upVdkvn7rIQgt+Av1RU/P/vereFku85kpzYDp
 7eAawZuBoOOoeaQpK5s/+xlOUV/Zfc/ri0mwO6pJdaFfIrS8Suk2DncpuMsfhSFf
 L4FwMDkqfZ5vbFP97l2FsNlSlIAhjGoq/IOQ8GEfUG3TdVQrTC3vJVATw4wO4Ndx
 LxKvmEIZeys3PihwzbtYKRsv4gS3IRhj82D29a3l9/nM2hdfoaHVb3G5pivPEPaG
 jkguqSllXUSfWRM0PbT6Yon9yfynOGjuJkI+hxd0nW52Tglx7NiubBK3ywUu+Hkk
 lrVg+AL63feyYAxWJEhg5lS7+BkH31VNYbRu6U8NsDg3lgnQdhkd76QyAsF9Ep7T
 YY94oP8HqIPd/HE8gNkBdxltA8yo1+bxHnYbqtlacOqd+ASIVt5s4L639qpZyn+z
 Ykyfuj4XEYZfv4Czh5EcKRQZxUFI6vcWos2nifM2SRSWEQaNBRZqf/ZuOIiZ1N67
 piZA8tenwSWJiYo7gc75/DiPEpJf70XkKcwEd5lEUs4NXGswPJQp73DLhhiPMCiT
 ScS3GG65ndH5GUwHO7lb
 =5/r6
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.13-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/cleanup

ARM: tegra: cleanup for 3.13

This branch mainly removes dead code and defines that were useful only
when booting using board files. A few other misc cleanups are also
included.

This branch is based on previous pull request
tegra-for-3.13-deps-for-arm-init-time-cleanup.

* tag 'tegra-for-3.13-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: fix ARCH_TEGRA_114_SOC select sort order
  ARM: tegra: make tegra_init_fuse() __init
  ARM: tegra: remove much of iomap.h
  ARM: tegra: move resume vector define to irammap.h
  ARM: tegra: delete gpio-names.h
  ARM: tegra: delete stale header content
  ARM: tegra: remove common.c

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 15:37:59 -07:00
Kevin Hilman cb1110ca79 Highbank platform updates for 3.13
- convert Calxeda cpuidle driver to a platform driver and to use PSCI
 - convert highbank smp_ops and suspend to PSCI
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQEcBAABAgAGBQJSYCG/AAoJEMhvYp4jgsXiFkkIALhWCtYC7qcthorB/s9STVkv
 5VhPA7Jx9i9omnrsdzICXYC/HQaSN7gwgAPICYxTcAcen+qySHeXvk7jWh7PtQJ9
 OHLWd1tYVxLV1y9tnmiFYVbJn017W0Kq0m4kkZEh6Q8KW0qE1xcHGREWHs/+1D4k
 Rx798Tg6jgjt0nvg893aAcFQsgKxG53n5uqNySI9DKvxYcJBJkHD0/EgyHk+myVY
 TPZj6f9xGwLCv0rQU6Vr29NniX1w2bRt6lYEp0KGlGjEGbiuStcRf6xUUmhxmDCs
 faIspFMxpR4dqqeIq1Xh2x8S4QOMjDoiFGZmGBgrNdvLNOGNsd+QRhdLJiXuB88=
 =8WVt
 -----END PGP SIGNATURE-----

Merge tag 'highbank-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux into next/soc

From Rob Herring:
Highbank platform updates for 3.13

- convert Calxeda cpuidle driver to a platform driver and to use PSCI
- convert highbank smp_ops and suspend to PSCI

* tag 'highbank-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
  dts: calxeda: add ARM PSCI binding
  ARM: highbank: adapt to use ARM PSCI calls
  ARM: PSCI: remove unnecessary include of arm-gic.h
  cpuidle: calxeda: add support to use PSCI calls
  ARM: highbank: cpuidle: convert to platform driver
  cpuidle: calxeda: add cpu_pm_enter/exit calls
2013-10-17 15:27:54 -07:00
Christoffer Dall 86ed81aa2e KVM: ARM: Update comments for kvm_handle_wfi
Update comments to reflect what is really going on and add the TWE bit
to the comments in kvm_arm.h.

Also renames the function to kvm_handle_wfx like is done on arm64 for
consistency and uber-correctness.

Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-17 15:26:50 -07:00
Marc Zyngier 58d5ec8f8e ARM: KVM: Yield CPU when vcpu executes a WFE
On an (even slightly) oversubscribed system, spinlocks are quickly
becoming a bottleneck, as some vcpus are spinning, waiting for a
lock to be released, while the vcpu holding the lock may not be
running at all.

This creates contention, and the observed slowdown is 40x for
hackbench. No, this isn't a typo.

The solution is to trap blocking WFEs and tell KVM that we're
now spinning. This ensures that other vpus will get a scheduling
boost, allowing the lock to be released more quickly. Also, using
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT slightly improves the performance
when the VM is severely overcommited.

Quick test to estimate the performance: hackbench 1 process 1000

2xA15 host (baseline):	1.843s

2xA15 guest w/o patch:	2.083s
4xA15 guest w/o patch:	80.212s
8xA15 guest w/o patch:	Could not be bothered to find out

2xA15 guest w/ patch:	2.102s
4xA15 guest w/ patch:	3.205s
8xA15 guest w/ patch:	6.887s

So we go from a 40x degradation to 1.5x in the 2x overcommit case,
which is vaguely more acceptable.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-17 15:26:50 -07:00
Kevin Hilman 048e5a786a mvebu dt changes for v3.13 (round 3)
- dove
     - add audio devices
     - fix bad properties of si5351 clkout2 for CuBox
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQEcBAABAgAGBQJSX+yTAAoJEAi3KVZQDZAev1wIAJA521UnQR6efGNEU6wD3Yvq
 hjXEe+Da62FG2YUzZhOpLYIRrc0EvTrt/JIAbLbf5qrOnc9kzO6YdZVnRJJgWDP0
 Qzak9C0xqfsFeR7MxnDuyJ10/TYgM1iugvUcs6tqRDb7LdqcGBv92vv8zCdieiiJ
 XNtA56GVvEXo6LKp4KjC/dNv4vQBPEzDukSm81g/dfVDIhm7vbGMeNpFtHPHcNQa
 lASc6NjYzZXBZlz/ckRIZeT+MePpPkWusb8DOtLkv6/pRJjtSLaQqSLR82l52U+E
 eVb9SoQJWjxmrVLMEk3nUYvsWVgLtClND62snfpu+JP5ELb+DBwky4DzVvftpaY=
 =P7l9
 -----END PGP SIGNATURE-----

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

From Jason Cooper:
mvebu dt changes for v3.13 (round 3)

 - dove
    - add audio devices
    - fix bad properties of si5351 clkout2 for CuBox

* tag 'dt-3.13-3' of git://git.infradead.org/linux-mvebu:
  ARM: Dove: fix bad properties of the si5351 clkout2 used by Cubox audio
  ARM: Dove: Add the audio device to the Cubox DT
  ARM: Dove: Add the audio devices in DT
2013-10-17 15:22:29 -07:00
Kevin Hilman 0d481d4187 mvebu soc changes for v3.13 (round 2)
- kirkwood
     - remove mbus init, pcie clk init
     - retain MAC addr for DT ethernet (work around broken IP)
     - docs: clarify Armada SoCs
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQEcBAABAgAGBQJSX+mcAAoJEAi3KVZQDZAe4gkH/0xeBkWwJniwsz8R53wwTksP
 310LqWfo7zivlwVzU/9TRRnaFucak4z0+SK9iZLodSVmfM8vlax2dXBe7qpzPF06
 OSEzKU50cWQjoNKSSwbfiC6EQrMYqp+3yqnxfZkvxV9Jp02iRRCa3sHZJli9AIO8
 4j0vGeiVmqknjl1UNCXn+ptz0ii7DOlsq20/Lu3LBrkm3YD31uWEGsyBG7nlzDR3
 BNfGh3KWjqhUWdP3NVABSQYmmUsYGACWqIna6ecmFTeK4dIiOTpHVkc94sE/tcy5
 zcM8AXSNZyKoBPU8CrpaNuvRIfujMFJqsQBi7rcuefX7JPwEQ2dHI+ULhRuxK6s=
 =X30r
 -----END PGP SIGNATURE-----

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

From Jason Cooper:
mvebu soc changes for v3.13 (round 2)

 - kirkwood
    - remove mbus init, pcie clk init
    - retain MAC addr for DT ethernet (work around broken IP)
    - docs: clarify Armada SoCs

* tag 'soc-3.13-2' of git://git.infradead.org/linux-mvebu:
  Documentation: arm/Marvell: clarify Armada SoCs that match 78xx0 pattern
  ARM: kirkwood: retain MAC address for DT ethernet
  ARM: kirkwood: Remove unneeded PCIe clock adding
  ARM: kirkwood: Remove unneeded MBus initialization
  ARM: kirkwood: Add standby support

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 15:05:15 -07:00
Kevin Hilman 751bfe3e55 General cleanups for MSM for 3.13
Some small cleanups for MSM.  Removes extraneous irq definitions that
 aren't used on DT targets, moves the single existing board file to
 board-dt.c in antipication of additional targets, and renames the
 existing DT files to have a common 'qcom' prefix.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQIcBAABAgAGBQJSXtIiAAoJEOa6n1xeVN+CY7sP/iuakgBntGaz1/cDjvTAg0cO
 Op4SwhoZJ2zXDsdmGU+Mrl17sFse82Fup8f9r7YKtsrEqanIBzc8A6BJK2sAzr9y
 pSXBDHunuIsWb2JVWMtB0zlrA2lPjgSJi+SI/mmb51ZXzH162rQ2Yt43Nod6eS3p
 1MuzM4GwyQccr28usXe+VJI2OW+WBKML5E2SA/Wkct3AZAJ1ur3NeHv3fcIu4kIP
 2GN1RFvp/dT/1QU12BrMGIXVuLGHFfJ/EAd4ITBNzSbpHDqePkMDl9geelTcYN7z
 F7V9Yg8budyd1qmE9OxVij/EMksSrpD9NMHTAbsq45+q+iJ5L8LcDojW/ABZr/qL
 SxUc/zWYlnHqA2gI1a2TgEe6qaRE6yQyNl9ZuNnpDzeCz1RJCzvKvmA61gMP/dPB
 wL45DnXNjwU4/ZutE0J8fv5poZ6YK2L6U2sk/IRPLCNJm3sMvqIlVklNNN0Yo6rx
 FBXsc9TE2EwFD3JwwYEPFSL+WXzSRLd3qBlCNpVBVObK80g07rDKVJsMf/UDQ6LS
 KqBzSG4cS25ouPTiMxQXom50oY3lJhZFlegqjBY0n0W17kI7xrOULfZKuJOFjdoQ
 1B7nqXm3RCr8JbX99U0gtWUtgPJ19zO8Cx2Z/s6Ouwkg6whHZ74O3Phbf+B0BXGK
 mQ3ln7H3kz/GcsiXNKM9
 =xAJK
 -----END PGP SIGNATURE-----

Merge tag 'msm-cleanup-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm into next/cleanup

From David Brown:
General cleanups for MSM for 3.13

Some small cleanups for MSM.  Removes extraneous irq definitions that
aren't used on DT targets, moves the single existing board file to
board-dt.c in antipication of additional targets, and renames the
existing DT files to have a common 'qcom' prefix.

* tag 'msm-cleanup-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm:
  ARM: msm: Rename msm devicetrees to have standard 'qcom' prefix
  ARM: msm: Create a common board-dt and config ARCH_MSM_DT
  ARM: msm: Remove irqs-*.h files for DT based targets

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 14:49:37 -07:00
Kevin Hilman 7bc13d78c6 Integrator patches for the v3.13 kernel cycle:
- Fix up the LED support
 - Update the Integrator defconfig
 - Remove ATAG boot path
 - Move some stuff over to the device tree
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSXoSXAAoJEEEQszewGV1zHI0P/2D0qWnhx+0t4GQiLRC6uQsA
 SN5u+W45vX/WSwWi1QJB9jNTtnUr5mRLSM3FDlhBE2goGrYXCUdMl/IgqnoNMiv1
 Jj20hP1tjK2FxuuXVK1XoAa0wIMkeRHErw6EbzLE3PYEasC1ixoXmawgvkyKDXXo
 v/ZBlv+utSbnCtibUKir0rcHuYN9olTOCyP+vqWJ2zxiHXhZoJT+vaG1dLCPdzRo
 0DilbdDZrk96W8H2g7f8VhaDAiGrreR1dNhkvWepTFad09jiysxb5bpTiBp8ofoz
 nKpi6iJp3NRlVMj7VOqvlciHCwbUmWNsUNhHebGDpUhqFd5NWAlDLQFt1jC2spfe
 bYa1CtYu+mBa4aUNT7Y0gVNVgbzAL8l3KBE78CCmWQmKhUhiuH92BaoUvRtYMH6s
 t20MNK2KAcFLnjQbW9XZgma7v+U8cWmtxH7PKzBHmX9mkHCaOFffCgRwhUlFR303
 yVKkzK3SX/SY7BTMdKxnN7IGQr13hdnS1XlaCD97d/rL0cXFBV+ZC3WzYlTBrOa4
 JzjxsUJf5yE0oBD7M/XgVRYVI0OdWKhtgIfgwUOOtxkVceZiB1F3Rx6ab8wNjUwp
 6FSw2kHNBo9aqA73KIpdZB2roBk7YeurBrDuCpEws+EDBMvQ8/TNfwR6yFQnwdFe
 Gh7WRsV5/qWChcSeM/UG
 =p2Z9
 -----END PGP SIGNATURE-----

Merge tag 'integrator-for-v3.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator into next/soc

From Linus Walleij:
Integrator patches for the v3.13 kernel cycle:
- Fix up the LED support
- Update the Integrator defconfig
- Remove ATAG boot path
- Move some stuff over to the device tree

* tag 'integrator-for-v3.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  ARM: integrator: core module registers from compatible strings
  ARM: integrator: use devm_ioremap() to remap CM
  cpufreq: probe the Integrator cpufreq driver from DT
  ARM: integrator: move CM base into device tree
  ARM: integrator: decommission the <mach/irqs.h> header
  ARM: integrator: delete non-devicetree boot path
  ARM: integrator: print the Linux IRQ in LL_DEBUG code
  ARM: integrator: get the LM interrupts from DT
  ARM: integrator: update defconfig
  ARM: integrator: get the CM control register by proxy

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 14:43:00 -07:00
Kevin Hilman 1723f2a18d Merge branch 'davinci/soc' into next/soc
From Sekhar Nori:
* davinci/soc:
  ARM: davinci: convert to clockevents_config_and_register

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-17 14:37:25 -07:00
Uwe Kleine-König bf94d09dda ARM: davinci: convert to clockevents_config_and_register
clockevents_config_and_register is superior compared to setting
shift/mult and {min,max}_delta_ns by hand.

Tested-by: Prabhakar Lad <prabhakar.csengg@gmail.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
[nsekhar@ti.com: fix an alignment related checkpatch warning]
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
2013-10-17 14:36:24 -07:00
Thierry Reding c71d39090e ARM: tegra: Use symbolic names for gr3d clocks
Commit 05849c9381 (ARM: tegra30: convert
device tree files to use CLK defines) updated the Tegra30 device tree to
use symbolic clock names but forgot to update this node.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-17 11:42:47 -06:00
Tony Lindgren 811e7c8734 Add hwmod and PRCM data for the TI AM43xx family of SoCs.
Under normal circumstances, these patches would not be merged.
 The hwmod and PRCM data should be moved out either to DT data or
 to drivers/.  Also, the current implementation trades off lines
 of diff by dynamically rewriting static data at runtime, which is
 a bad practice - it causes future maintenance headaches.
 However, after speaking with my upstream, it sounds like it's
 better to merge these patches in their current state, due to long
 term considerations.
 
 Basic test logs are here:
 
 http://www.pwsan.com/omap/testlogs/am43xx_support_v3.13/20131015213706/
 
 Due to the lack of an AM43xx board and any available public
 documentation, it's impossible for me to review or test that
 platform in any meaningful way.  But at least the tests above
 verify that the patches don't affect existing platforms -
 particularly AM33xx.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQIcBAABAgAGBQJSXwhxAAoJEMePsQ0LvSpL/aMP/0aF9YE5sSlMYatmrLw3v+8q
 lPF2xHWC5geJkSHtXHUFf76HAe35qWDvG5UXLl0DigC72D2Ky2oaksStQK0mjx6G
 FQGuzWiZHmv6aaO/ZIjoE3fikom9C2HZZBxMJAuQhVZ00btkEEb951Io+ge4l94x
 km1FjIGPnJqfL4PVcg3FxJ6x0Ilg6w+aK7k1Y75J9FI2drPMHeEwCwaaoMJRNzL2
 xcO7gnbXNx/0CZlD/7Y93c26xZsLaEo24XAZkRh4K+wRUFGSY25lobUESvTNfIyX
 WPypWuIzfR1tmxnof4Z+NJIOv5l79amvcgcG9diwOWNU7BCbfmqm6+xGSdrMVl5Q
 xXUemh4dIUHV64bO6Pw4rr9JnAN9A4Qnarf8lemxFfzB0KZM/Nh1/XH4HWm76pCq
 9vxAq96cXahzBRagBswukMfucFXZxSGj/a/7Pbcpb+8AqRLyWHZGmxRUYWXWLyfo
 IePtfupQeMWCkD1LqdPDEUYP0W2ljvg8adcd4W2H1XdT7KfJTHqJC3gLROSOUW9R
 QZWxUpbGVc93gCHteTrk46bC7kHwYHrgJcWlusW7nuz5XJZ9vuAfHjTXlF4lKPcZ
 pFrMxZhN6OUy8sX4BT1pUCCoJVogG8yeZFtRIoKfkil738pwjqvs975Vz/1zqkHj
 Hlo3cVX/9zSdZt9Fz2Ia
 =PrDf
 -----END PGP SIGNATURE-----

Merge tag 'for-v3.13/am43xx-support' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.13/hwmod

Add hwmod and PRCM data for the TI AM43xx family of SoCs.

Under normal circumstances, these patches would not be merged.
The hwmod and PRCM data should be moved out either to DT data or
to drivers/.  Also, the current implementation trades off lines
of diff by dynamically rewriting static data at runtime, which is
a bad practice - it causes future maintenance headaches.
However, after speaking with my upstream, it sounds like it's
better to merge these patches in their current state, due to long
term considerations.

Basic test logs are here:

http://www.pwsan.com/omap/testlogs/am43xx_support_v3.13/20131015213706/

Due to the lack of an AM43xx board and any available public
documentation, it's impossible for me to review or test that
platform in any meaningful way.  But at least the tests above
verify that the patches don't affect existing platforms -
particularly AM33xx.
2013-10-17 10:37:27 -07:00
Thierry Reding 05465f4e25 ARM: tegra: Mark Tegra30 display controller compatible with Tegra20
The display controller found on Tegra30 SoCs is backwards-compatible
with the one on Tegra20 SoCs.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-17 11:30:42 -06:00
Gleb Natapov 13acfd5715 Powerpc KVM work is based on a commit after rc4.
Merging master into next to satisfy the dependencies.

Conflicts:
	arch/arm/kvm/reset.c
2013-10-17 17:41:49 +03:00
Aneesh Kumar K.V 5587027ce9 kvm: Add struct kvm arg to memslot APIs
We will use that in the later patch to find the kvm ops handler

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
2013-10-17 15:49:23 +02:00
Jean-Christophe PLAGNIOL-VILLARD 6b625891c6 ARM: AT91: DT: pm: Select ram controller standby based on DT
Move non-dt selection to ioremap_registers init which is only called not
non-dt board.

So we can support sam9n12/sam9x5/sama5d3 too.

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-16 23:51:47 +02:00
Jean-Christophe PLAGNIOL-VILLARD 2d2c476f3c ARM: AT91: pm: Factorize standby function
Detect presence of second bank. So we do not need to have on function per SoC

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2013-10-16 23:51:36 +02:00
Daniel Lezcano 1ce3c48e6c ARM: at91: cpuidle: Move driver to drivers/cpuidle
As the cpuidle driver code has no more the dependency with the pm code, the
'standby' callback being passed as a parameter to the device's platform data,
we can move the cpuidle driver in the drivers/cpuidle directory.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

Conflicts:

	drivers/cpuidle/Kconfig.arm
	drivers/cpuidle/Makefile
2013-10-16 23:49:35 +02:00
Daniel Lezcano 5ad945ea58 ARM: at91: cpuidle: Convert to platform driver
Using the platform driver model is a good way to separate the cpuidle specific
code from the low level pm code. It allows to remove the dependency between
these two components.

The platform_device is located in the pm code and a 'set' function has been
added to set the standby function from the AT91_SOC_START initialization
function. Each SoC with a cpuidle driver will set the standby function in the
platform_data field at init time. Then pm code will register the cpuidle
platform device.

The cpuidle driver will register the platform_driver and use the device's
platform_data as a standby callback in the idle path.

The at91_pm_enter function contains a { if then else } based on cpu_is_xx
similar to what was in cpuidle. This is considered dangerous when adding a new
SoC. Like the cpuidle driver, a standby ops is defined and assigned when the
SoC init function specifies what is its standby function and reused in the
at91_pm_enter's 'case' block.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-16 23:46:13 +02:00
Sylwester Nawrocki e66f233dc7 ARM: Samsung: Remove the MIPI PHY setup code
Generic PHY drivers are used to handle the MIPI CSIS and MIPI DSIM
DPHYs so we can remove now unused code at arch/arm/plat-samsung.
In case there is any board file for S5PV210 platforms using MIPI
CSIS/DSIM (not any upstream currently) it should use the generic
PHY API to bind the PHYs to respective PHY consumer drivers and
a platform device for the PHY provider should be defined.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-16 13:48:08 -07:00
Nicolas Ferre f123248e17 ARM: at91: remove init_machine() as default is suitable
Since 883a106b08 (ARM: default
machine descriptor for multiplatform) we can remove the SoC-specific
callback init_machine() to use the default code.
This cleans up the code and reduces the number of lines.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2013-10-16 15:47:08 +02:00
Boris BREZILLON d7d1d45cc4 ARM: at91/dt: split sama5d3 peripheral definitions
This patch splits the sama5d3 SoCs definition:
- a common base for all sama5d3 SoCs (sama5d3.dtsi)
- several optional peripheral definitions which will be included by sama5d3
  specific SoCs (sama5d3_'periph name'.dtsi)
- sama5d3 specific SoC definitions (sama5d3x.dtsi)

This provides a better representation of the real hardware (drop unneed
dt nodes) and avoids peripheral id conflict (which is not the case for
current sama5d3 SoCs, but could be if other SoCs of this family are
released).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
[nicolas.ferre@atmel.com: add more "sama5d3?" compatibility strings]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-16 15:47:08 +02:00
Boris BREZILLON d195608acc ARM: at91/dt: split sam9x5 peripheral definitions
This patch splits the sam9x5 peripheral definitions into:
- a common base for all sam9x5 SoCs (at91sam9x5.dtsi)
- several optional peripheral definitions which will be included by specific
  sam9x5 SoCs (at91sam9x5_'periph name'.dtsi)

This provides a better representation of the real hardware (drop unneeded
dt nodes) and avoids future peripheral id conflict (lcdc and isi both use
peripheral id 25).

Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-16 15:47:07 +02:00
Gleb Natapov d570142674 Updates for KVM/ARM including cpu=host and Cortex-A7 support
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJSXeGaAAoJEEtpOizt6ddyeyYH/AnWdKGUELjxC0lIBDkTitnD
 znyzSxqXG6z1Z6d+EYI3XCL1eB3dtyOBSJsZj45adG4HXGkCmGqosgDzivGO6GcI
 yhjYgXGhP8ZvIwky1ijbVQODaEE70SEYqKwyCpU4rLJw2uRkbfRaxTrpgnusL8Bg
 RG37uaOS/sasLoNxCe5GEUjm8BFGbvZGVAjcL7yJTPBw5qd7GYBxndFSTILa2iRQ
 ikoBD0bUVhoaBUqSNQenoNllUBwDpFJF1HiEXKMJkUIxX/FggrSvRp8A/MAWDBw0
 6Ef1P8Pt/hMfMQpOOeu8QFWM2s+smh2rTkO/O9mqi/tSvEf5YcZHMAl48B8OR88=
 =tJ2u
 -----END PGP SIGNATURE-----

Merge tag 'kvm-arm-for-3.13-1' of git://git.linaro.org/people/cdall/linux-kvm-arm into next

Updates for KVM/ARM including cpu=host and Cortex-A7 support
2013-10-16 15:30:32 +03:00
Linus Walleij df36680f1a ARM: integrator: core module registers from compatible strings
This augments the core machine code for the Integrator platforms
to get their references to the core module device nodes by
using compatible strings instead of predefined node names
and rename the CP syscon node to be simply "syscon".

Reported-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:10:14 +02:00
Linus Walleij 99d14a1d9b ARM: integrator: use devm_ioremap() to remap CM
In the PCIv3 driver, use devm_ioremap() instead of just ioremap()
when remapping the system controller in the PCIv3 driver, so
the mapping will be automatically released on probe failure.

Reported-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:10:10 +02:00
Linus Walleij bb4dbefe4c ARM: integrator: move CM base into device tree
This moves the core module (CM) control base into the device
tree. It is a simple memory range of 0x200 bytes. Move the
cm header down into the machine directory and unexport the
cm_control() symbol as no modules are using it.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:56 +02:00
Linus Walleij 578fdfdf32 ARM: integrator: decommission the <mach/irqs.h> header
This header is no longer needed when we boot from the device tree.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:52 +02:00
Linus Walleij d7057e1de8 ARM: integrator: delete non-devicetree boot path
The Device Tree boot path now supports everything the ATAG
boot can provide, and the two are equivalent. This deletes
the ATAG boot path from the Integrator/AP and
Integrator/CP platforms to move them on to the future.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:49 +02:00
Linus Walleij 50564a794d ARM: integrator: print the Linux IRQ in LL_DEBUG code
The static HW irqs have no meaning in the interrupt handler
and does not correlate to the /proc/interrupts IRQ numbers
anymore, print the Linux IRQ number instead.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:45 +02:00
Linus Walleij a67202583f ARM: integrator: get the LM interrupts from DT
The OF/DT boot path needs to get the LM (Logical Module)
IRQs from the device tree for coherency. This augments the
DT syscon node to contain these IRQs and alter the DT LM
code to get them from there.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:38 +02:00
Linus Walleij c791f4d339 ARM: integrator: update defconfig
This updates the integrator defconfig, apart from the usual
re-shuffling of symbols due to restructuring of the kernel Kconfig
this will also:

- Enable IM-PD1 so all hardware is enabled out-of-the-box
- Enable the LEDs class and heartbeat trigger, so that the
  LED driver in plat-versatile/ is compiled.
- Enale some debug code like the CLK debug.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:34 +02:00
Linus Walleij fb61f86223 ARM: integrator: get the CM control register by proxy
The CM_CTRL register was accessed directly from the LED driver,
which does not work now that we get the base for the register
from the device tree. Add an accessor function to do this and
make the LED driver compile again.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-10-16 14:09:31 +02:00
Linus Walleij 263c43a447 Linux 3.12-rc4
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQEcBAABAgAGBQJSUc9zAAoJEHm+PkMAQRiG9DMH/AtpuAF6LlMRPjrCeuJQ1pyh
 T0IUO+CsLKO6qtM5IyweP8V6zaasNjIuW1+B6IwVIl8aOrM+M7CwRiKvpey26ldM
 I8G2ron7hqSOSQqSQs20jN2yGAqQGpYIbTmpdGLAjQ350NNNvEKthbP5SZR5PAmE
 UuIx5OGEkaOyZXvCZJXU9AZkCxbihlMSt2zFVxybq2pwnGezRUYgCigE81aeyE0I
 QLwzzMVdkCxtZEpkdJMpLILAz22jN4RoVDbXRa2XC7dA9I2PEEXI9CcLzqCsx2Ii
 8eYS+no2K5N2rrpER7JFUB2B/2X8FaVDE+aJBCkfbtwaYTV9UYLq3a/sKVpo1Cs=
 =xSFJ
 -----END PGP SIGNATURE-----

Merge tag 'v3.12-rc4' into devel

Linux 3.12-rc4
2013-10-16 10:05:53 +02:00
Thierry Reding bf4d252a29 ARM: shmobile: Initialize PWM backlight enable_gpio field
The GPIO API defines 0 as being a valid GPIO number, so this field needs
to be initialized explicitly.

Acked-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2013-10-16 09:20:04 +02:00
Thierry Reding a63652f1a7 ARM: SAMSUNG: Initialize PWM backlight enable_gpio field
The GPIO API defines 0 as being a valid GPIO number, so this field needs
to be initialized explicitly.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2013-10-16 09:05:57 +02:00
Thierry Reding db01120c5f ARM: pxa: Initialize PWM backlight enable_gpio field
The GPIO API defines 0 as being a valid GPIO number, so this field needs
to be initialized explicitly.

A special case is the Palm Tungsten|C board. Since it doesn't use any
quirks that would require the existing .init() or .exit() hooks it can
simply use the new enable_gpio field.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2013-10-16 09:05:57 +02:00
Thierry Reding d46055af1c ARM: OMAP: Initialize PWM backlight enable_gpio field
The GPIO API defines 0 as being a valid GPIO number, so this field needs
to be initialized explicitly.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2013-10-16 09:05:57 +02:00
Sourav Poddar 70b0d5f583 ARM: OMAP2: hwmod: Add qspi data for am437x.
Add hwmod data for qspi for AM437x.

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-15 23:49:43 -06:00
Linus Torvalds 34ec4de42b Device tree fixes and reverts for v3.12-rc5
One bug fix and three reverts. The reverts back out the slightly
 controversial feeding the entire device tree into the random pool and
 the reserved-memory binding which isn't fully baked yet. Expect the
 reserved-memory patches at least to resurface for v3.13. The bug fixes
 removes a scary but harmless warning on SPARC that was introduced in the
 v3.12 merge window. v3.13 will contain a proper fix that makes the new
 code work on SPARC.
 
 On the plus side, the diffstat looks *awesome*. I love removing lines of code.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQEcBAABAgAGBQJSXbO9AAoJEJZcAETA+ZUxuH4IAI/KF71fq0/O7en7GHo6ofcZ
 3nA3fUyYpnjehaqmKDXxix4TUgKTYU1ZP6tn8VfM6fn0QthR2YXPYAqiIaRot3ab
 arCPvJ9N52CU04Ug8dqMPEuFlSqRfTYc0EVPTbdgv8GYWX+rjP4qmOWS13exorai
 hJSRFmbyvwOVvRAl7KtkBPEZ3ri40mfkTrMs61v55GajhaZFyoTQgMMNhboUskI7
 qztWiecw1stlvbfQEoN+BA11ohp5kDf4d5jeTCMNFx81liBbZHYfwWbmwYPCH7/z
 6s4gX6PQeCuygdhQK65q1tYebTmRbFxkuf8P/tO7lEpmR3fKIVBr+oMJff0q9ww=
 =8W6e
 -----END PGP SIGNATURE-----

Merge tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux

Pull device tree fixes and reverts from Grant Likely:
 "One bug fix and three reverts.  The reverts back out the slightly
  controversial feeding the entire device tree into the random pool and
  the reserved-memory binding which isn't fully baked yet.  Expect the
  reserved-memory patches at least to resurface for v3.13.

  The bug fixes removes a scary but harmless warning on SPARC that was
  introduced in the v3.12 merge window.  v3.13 will contain a proper fix
  that makes the new code work on SPARC.

  On the plus side, the diffstat looks *awesome*.  I love removing lines
  of code"

* tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux:
  Revert "drivers: of: add initialization code for dma reserved memory"
  Revert "ARM: init: add support for reserved memory defined by device tree"
  Revert "of: Feed entire flattened device tree into the random pool"
  of: fix unnecessary warning on missing /cpus node
2013-10-15 17:14:13 -07:00
Linus Torvalds ba0a062ef5 Merge branch 'fixes-for-v3.12' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping
Pull DMA-mapping fix from Marek Szyprowski:
 "A bugfix for the IOMMU-based implementation of dma-mapping subsystem
  for ARM architecture"

* 'fixes-for-v3.12' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:
  ARM: dma-mapping: Always pass proper prot flags to iommu_map()
2013-10-15 17:13:34 -07:00
Viresh Kumar e50322a59a cpufreq: sa11x0: Fix build breakage after "Expose frequency table"
Fix build breakage introduced by commit 22c8b4f (cpufreq: sa11x0:
Expose frequency table).

[rjw: Changelog]
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-10-16 00:50:35 +02:00
Viresh Kumar 3bc28ab6da cpufreq: remove CONFIG_CPU_FREQ_TABLE
CONFIG_CPU_FREQ_TABLE will be always enabled when cpufreq framework is used, as
cpufreq core depends on it. So, we don't need this CONFIG option anymore as it
is not configurable. Remove CONFIG_CPU_FREQ_TABLE and update its users.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-10-16 00:50:33 +02:00
Viresh Kumar dd9f263956 cpufreq: sa11x0: Use generic cpufreq routines
Most of the CPUFreq drivers do similar things in .exit() and .verify() routines
and .attr. So its better if we have generic routines for them which can be used
by cpufreq drivers then.

This patch uses these generic routines in the sa11x0 driver.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-10-16 00:50:27 +02:00
Bartlomiej Zolnierkiewicz 22c9859209 ARM: dts: fix PL330 MDMA1 address in DT for Universal C210 board
Revision 0 of Exynos4210 SoC (used on Universal C210 board) requires
'secure' PL330 MDMA1 address (0x12840000) instead of 'non-secure' one
(0x12850000). Fix it by overriding the default PL330 MDMA1 address in
exynos4210-universal_c210.dts.

This is a Device Tree (DT) version of commit 91280e7 ("ARM: EXYNOS:
PL330 MDMA1 fix for revision 0 of Exynos4210 SOC") and fixes recent
regression caused by conversion to DT-only setup on ARM EXYNOS.

Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-16 07:25:41 +09:00
Tomasz Figa db9f31696a ARM: dts: Work around lack of cpufreq regulator lookup for exynos4210-origen and trats boards
Exynos cpufreq drivers does not support device tree based regulator
lookup, so it can get the VDD ARM regulator only by its name. To get
cpufreq working for now, this patch works this around by renaming the
regulator in board dts files to vdd_arm, which is the name expected by
the driver.

This fixes a regression introduced by dropping support of board file
based bootup of Exynos 4210 boards that rendered cpufreq inoperable on
Trats and Origen boards.

Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-16 07:25:40 +09:00
Youngmin Nam fc017072f0 ARM: dts: Fix typo earlyprintk in exynos5440-sd5v1 and ssdk5440 boards
This patch removes '_' from "early_prink" on Exynos5440 dts
files in according to kernel-parameters document.

Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com>
Reviewed-by: Sachin Kamat <sachin.kamat@linaro.org>
Tested-by: Jungseok Lee <jays.lee@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-16 07:23:55 +09:00
Al Stone f744812ba9 ARM: dts: Correct typo in use of samsung,pin-drv for exynos5250
Corrects an obvious typo in the Arndale pinctrl descriptions in DT.
The samsung-pinctrl driver uses the correct name.

Signed-off-by: Al Stone <al.stone@linaro.org>
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-10-16 07:23:42 +09:00
Stephen Warren 0a9375d129 ARM: tegra: add GPIO controller to tegra124.dtsi
The Tegra124 GPIO controller is identical to Tegra30, so copy the
DT node from tegra30.dtsi to tegra124.dtsi.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Thierry Reding <treding@nvidia.com>
2013-10-15 09:25:28 -06:00
Marek Szyprowski cebf3e40b0 Revert "ARM: init: add support for reserved memory defined by device tree"
This reverts commit 10bcdfb8ba. There is
no consensus on the bindings for the reserved memory, so the code for
handing it will be reverted.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Grant Likely <grant.likely@linaro.org>
2013-10-15 09:25:53 +01:00
Kevin Hilman 5b5bbc20fd Platform data changes for omaps for the display subsystem and
n900 secure mode changes. Note that the n900 secure mode changes
 will still be needed for device tree based booting also.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSWIbiAAoJEBvUPslcq6VzEEIP/2XAv48R7AEtHwnNbrqGlWb3
 H/QcxXeWtfNNLeQg1nlfYsY5cYDSXvVUrnzb6xFuxeOkEvmFqciTgvnbOCz7dSgr
 Gbkwn+aL7hNvZIfHFNsj3c8qreq17Qv+ktAasH+tuIUPkxhwzTTrxEMHQ5ESTHvm
 FQSaHjqWiLI6dfN+NU6ZteMEuIRe6J4q7+CiU+7/hjvp5+KXU8F1tw79fKrnfnMo
 ZmY/aVnvuj6BRdF9yz0a6XrvLOo9wp2NM3vqDXaHsXoAbUFKiPbuD6+gIVK/abim
 Bbt4T1pQbobDy2oTd6MddlV1I3TVYQbqKgOaMTZ0s9zpCSO8lqC7mGyFSutaVL4p
 iwnPMLWYBYBnCyadPamGfbqPVI5mOE4qngYhFDbKHjWWgC1XtVLUEbCRQEO6pZkI
 +vsDqOCYMf+YM5kpHqFF6ibW6WrmhRUw3qiazOLOM4ATPSiFscPGGcbTsaJkxduv
 TcdRj8aMq6zzjpvTd1rRGjUvqaAvot5Qo2GBSnnoRVUApX7F3bRbmJfksUSc7tsU
 Fs+9Rqx/jK+8t1P3XnXc3Y7z6G3i73wvO60bmvw8RF7PDxttvMTYbrvQTtuzu8Mg
 umSKFGKMNfRwtfX8MyL8socL4y5qTqhc4JbEk92Itj/ax5mGTx+KtOOxgtKjG94W
 fnZTpz133jdLFz5vOfom
 =WRd/
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/board-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/boards

From Tony Lindgren:
Platform data changes for omaps for the display subsystem and
n900 secure mode changes. Note that the n900 secure mode changes
will still be needed for device tree based booting also.

* tag 'omap-for-v3.13/board-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (508 commits)
  ARM: OMAP2+: display: Create omap_vout device inside omap_display_init
  ARM: OMAP2+: display: Create omapvrfb and omapfb devices inside omap_display_init
  ARM: OMAP2+: display: Create omapdrm device inside omap_display_init
  ARM: OMAP2+: drm: Don't build device for DMM
  RX-51: Add support for OMAP3 ROM Random Number Generator
  ARM: OMAP3: RX-51: ARM errata 430973 workaround
  ARM: OMAP3: Add secure function omap_smc3() which calling instruction smc #1
  +Linux 3.12-rc4

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 15:46:42 -07:00
Kevin Hilman 94f53f1f08 SoC related changes for omaps to support the realtime
counter on newer omaps, and to fail early for omap5 es1.0
 SoCs that don't have any support merged for them in the
 mainline tree.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSWJfdAAoJEBvUPslcq6VzViYQAIz0P4wVnmEexEAFfT6VDuX5
 eJP1gvtjjjiSpFt6PIUhTzvUThZpx53Jir707cZ0nOKxvVjTpoVljQmw0b2JGuZX
 Kgl6D044jU9aH0W9CQWif+SxiNLPD03pQ3hk1sPBGusIFpTp7mzqGvw8Q8WH/xAb
 Hn3pEK8/FMsP0pD837BuvRR/JLqC06USz/1xVN5BJ845Eba1FOA1WSPKGW8AqRSc
 d77U9CNdWGd/TskJ6tTOkxXhp4qQcyB8O4HP4QG0p/g5/1y8yEwK3wW5S8HQi4ae
 v6nIwPiKl3MEj1GLAUp2pUiNYi2WguMLClZjNHTwRY2TU8BgoMpGwPx+7Uyv/WZQ
 dD3VqdUYjPycdYy8/tQthndtAKjbaX5dlNjL8tRyM5Kv9EOoQdUSs3qg7PHtaqkP
 V6/qPKaoBX8YkNNrCYZNB67TE6TAlZ753r2rp1WMW1GzeGXnQqqUbnPLfvAxxDku
 FSxBppOqlk3WbM7ecoqDTm9CsaB0XQ/Ab2mI0slNKOgSrZfkqJ/UDTAtMwnspqxY
 9HvQOnOrutuWdZFUz0noaElZe7Zjjg5v1dmUcIKKC3k9/ACFFOMMlRxyRw33s4tG
 i7dkAn098X6n/RGyfzE985NLMW7mgj1u666XTTPg2+P5LU+5QU98qBPnojxw5mRn
 6IW9qDLh/mghe+lmWQja
 =GhHB
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/soc-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

From Tony Lindgren:
SoC related changes for omaps to support the realtime
counter on newer omaps, and to fail early for omap5 es1.0
SoCs that don't have any support merged for them in the
mainline tree.

* tag 'omap-for-v3.13/soc-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: Fix build error for realtime counter init if not enabled
  ARM: OMAP5/DRA7: realtime_counter: Configure CNTFRQ register
  ARM: OMAP5: id: Remove ES1.0 support
  ARM: OMAP2+: DRA7: realtime_counter: Add ratio registers for 20MHZ sys-clk frequency

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 15:42:20 -07:00
Kevin Hilman a2f9663a12 omap hwmod related changes via Paul Walmsley <paul@pwsan.com>:
Some OMAP hwmod changes for 3.13.  Significant changes here include:
 
 - support for moving some of the hwmod flags to DT data
 
 - support for the SSI, hardware spinlock, USB host/TLL, and RNG IP
   blocks for various OMAPs
 
 - a fix that again decouples hwmod data changes from unrelated DT data
   patchsets
 
 Basic test logs are available at:
 
 http://www.pwsan.com/omap/testlogs/prcm_fixes_v3.13/20131009094936/
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSWId7AAoJEBvUPslcq6Vz3pgQALkDFszXFotjTXhKxyokL4F6
 BB0WZLCtPg618pvan0Ob+ZyluxeaV4w0d0DgvRuk/BE6X4vDBuEZzso3Gucc5dqM
 b8cRQ9/0IudkCPVFV/beeelkxsO26SKD5E0XD843NkieBmU6H/nAn4LZzHl3D+SD
 w724WWXZz31zrwbE6TuTTKxK50Oqtw8FnuBcCUQrLagfxhK5XmoqzNTnhYqta+Fv
 Vl32xJkh51N5tQnKWGFprqit5nYEyWlJQ98QsovuNMvh66dH3P4TBS5Bwnl8oig5
 JkuJlKmP82ApnIRTTFMzqIISQ1JOY5PssTVp1kI0KdSNlDQABxR5dnox5opm3Eyh
 GFK4/ICKJ2L0lmoUGghcRqzqb+WLlwSbnR4nipcqibJp21oEnMlkS96LfvpI+qOp
 3wprb20rAeBkB0fzClG/tgynpOUBAtAhmH487cc+ZFUdfS7n2HMo4cuQAhSTVUol
 CD4sOLZRHhDVQlWJpm7oVuJxOVZ2jM0pK8bbVD3c94oDg3FJcT8bLwqB+Y1uCUCo
 0Wb07Ym7J7sk42BJudl68FtBI9CZSC9hyQCXlO4pI2NaC88BRNKeDhnu6F3aQiyN
 hn90+HNs/gngxdKCO3MJCchmV0wCrjThiLpQt3kcGDdOQXlOgh38Or3UT7Px6keW
 dXyczvdP3JckBIeKIRC6
 =zytU
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/hwmod-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

From Tony Lindgren:
omap hwmod related changes via Paul Walmsley <paul@pwsan.com>:

Some OMAP hwmod changes for 3.13.  Significant changes here include:

- support for moving some of the hwmod flags to DT data

- support for the SSI, hardware spinlock, USB host/TLL, and RNG IP
  blocks for various OMAPs

- a fix that again decouples hwmod data changes from unrelated DT data
  patchsets

Basic test logs are available at:

http://www.pwsan.com/omap/testlogs/prcm_fixes_v3.13/20131009094936/

* tag 'omap-for-v3.13/hwmod-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP5: hwmod: add missing ocp2scp hwmod data
  ARM: AM33xx: hwmod: Add RNG module data
  ARM: OMAP2+: hwmod: Extract no-idle and no-reset info from DT
  ARM: OMAP2+: hwmod: cleanup HWMOD_INIT_NO_RESET usage
  ARM: AM33xx: hwmod_data: add the sysc configuration for spinlock
  ARM: OMAP5: hwmod data: Add spinlock data
  ARM: OMAP5: hwmod data: Add USB Host and TLL modules
  ARM: OMAP2+: hwmod data: Add SSI information
  ARM: OMAP2+: hwmod: check for module address space during init
2013-10-14 15:38:13 -07:00
Kevin Hilman fd781337b6 omap device tree related changes via Benoit Cousson <bcousson@baylibre.com>:
Add the minimal DTS support for DRA7xx based SoC core.
 Add the initial support for N900 and gta04 phones.
 Enable USB3 on OMAP5 evm board.
 Add support for cryto accelerators
 Add new IGEP AQUILA board
 Add AM33XX EDMA support
 Update HSUSB node to use the reset-gpios fmwk
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSWIe0AAoJEBvUPslcq6Vz9RwP/iZ3rnaPUUYmuw4SmlOcgXe4
 NaMOPAWspcKVfL5hxTKRaMBNLvbwDcD/WY0VH7Tt/Yx6+aDdtifc3bgPnwAX8kyW
 408QlT3R4cOOyieDNLyFYdc0z3X5LvVaEW0bDzj1Sxdg/9uv8yKrVcPxXjo3rP4Z
 6NVgYdXYYKPGOCyhs3z+7sPXb6WZeneCYoYbuXbuaIem37fhMYm4OWbKToT/0CKS
 nkE+bNzoYaeouIOeNwLWs8o7yp9W9psnhkAmfSDujw8h+Y2cpemIaQQrYyy/td2P
 pF6UL67fNyVtcf5Oj2/N4a6OUSyac2mbkBLvbdxDoE/PjVIBTVNqFFphQvWivTBC
 WCjx9/skFS/t5P2MldmDp4qek8hTJUXFK0WbzFn00mC+i6+DOVBVEXIWO6ESWoPi
 X+B3417QCzZEab+q6NlVX+WjuStNuYUc9UAExC75q43rAoS8TpBZZK+dtKZE8lRB
 +xh9okQqKfybNunZbcsYTL5AJNqQQvBS5jNSmSXeCfrBBaZumfo8fg7c4dQ+ARwf
 GEnJH+ntCazNJRO66mBLf5wZ9OXF0g4TtCfLWXsmj4wdWjpokg1jEJSjtOmEg3xN
 cBGrfhP/o0prx/JSYAWU6ogh4bBvbkOZ4/jEsQMKOzUFHFyQ78qOt/7GZOq074p0
 4/luoHeG3Ri4QoVwIf8y
 =808Q
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

From Tony Lindgren:
omap device tree related changes via Benoit Cousson <bcousson@baylibre.com>:

Add the minimal DTS support for DRA7xx based SoC core.
Add the initial support for N900 and gta04 phones.
Enable USB3 on OMAP5 evm board.
Add support for cryto accelerators
Add new IGEP AQUILA board
Add AM33XX EDMA support
Update HSUSB node to use the reset-gpios fmwk

* tag 'omap-for-v3.13/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (58 commits)
  ARM: dts: dra7-evm: Add mmc2 node for eMMC support
  ARM: dts: dra7-evm: Add mmc1 node for micro-sd support
  ARM: dts: omap5-uevm: mark TWL6037 as system-power-controller
  ARM: dts: omap3-igep0020: use standard constant for IRQ flags
  ARM: dts: omap3-igep0020: Add HS USB Host support
  ARM: dts: omap3-igep: Add USB OTG support
  ARM: dts: AM33XX beagle black: add pinmux and hdmi node to enable display
  ARM: dts: AM33XX: Add LCDC info into am335x-evm
  ARM: dts: AM437X: Add DES node
  ARM: dts: AM437X: Add AES node
  ARM: dts: AM33XX: Fix AES interrupt number
  ARM: dts: AM33XX: Add AES data and documentation
  ARM: dts: AM33XX: Add SHAM data and documentation
  ARM: dts: OMAP4: Add DES3DES node
  ARM: dts: OMAP4: Add AES node
  ARM: dts: am335x-evm[sdk]: switch mmc1 to 4-bit mode
  ARM: dts: am335x-bone-common: correct mux mode for cmd line
  ARM: dts: AM33XX: Add support for IGEP AQUILA EXPANSION board.
  ARM: dts: AM33XX: Add support for IGEP COM AQUILA
  ARM: dts: am335x-boneblack: move fixed regulator to board level
  ...

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 15:35:21 -07:00
Kevin Hilman 7587b5965f Changes needed to prepare for making omap3 device tree only:
- Always build in board-generic, and add pdata quirks and auxdata
   support for it so we have all the pdata related quirks
   in the same place.
 
 - Merge of the drivers/pinctrl changes that are needed for PM
   to continue working on omap3 and also needed for other omaps
   eventually. The three pinctrl related patches have been acked
   by Linus Walleij and are pulled into both the pinctrl tree
   and this branch.
 
 - Few defconfig related changes for drivers needed.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSWIMoAAoJEBvUPslcq6VzudIQAKVjdFI26yxmI3xpYjNVS2P8
 JWaUTTjHAR7Lc0EWwtuGj6CqCtbNXUH1bTnChQrkzhT7fPMGQGFbgErnoaYQdwwJ
 qI15T7qcwy4q54vzeaOMAUS9UNZzr4lChEvxt9uYNoEhHlu7i6/ntyk5fgRfHMsh
 yK439VA7W/2rLNinpUmIAghx6+gUuRIBbVtfJ71gg5roXL7fY2hYizEoIkDKqWSD
 i1F24Xt33LAjNhy3n4/6JxCldee7ib2z0YrOUOrTdXWh/L1G9tDTslkdga6rAA5c
 A+B4nP7zP7i9c1SlTPbwRyguwjHhfSPuNTRhyhuePbwVk4bscglQZx8A7dH8BwS0
 pSCUxCTe2+CPEEzeN/ee9TgXwyX9Ab/r5BM092xFrX2lBbV3KxPl1F7rAxJ4HQTu
 Bh/M5bnKGupO7H9MOKqmLAf1y3a3JCrXVUuQljDMJnvauB8QFTx0nYQvZ/bQCJLZ
 /wfADHtooJ/FGHFS7Vb+HSLX7ifF2HyES9FgnQag5H77VfXS+bqI5yHsTcYHTgP1
 MlW8mObg0vJ+oUuowhhrk9pzQ1l1VFIaMqOKOouL3X6GHAHFiBSCti1fRiSE7d4U
 feW7a0NSyIjue+MAwxCjSLXOpHCATgnQ1mp9s8ByD0IF98iPugpnp9d6NGH/wp9A
 bgK7SGeOWXGoc+kN672c
 =bqsS
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v3.13/quirk-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

From Tony Lindgren:
Changes needed to prepare for making omap3 device tree only:

- Always build in board-generic, and add pdata quirks and auxdata
  support for it so we have all the pdata related quirks
  in the same place.

- Merge of the drivers/pinctrl changes that are needed for PM
  to continue working on omap3 and also needed for other omaps
  eventually. The three pinctrl related patches have been acked
  by Linus Walleij and are pulled into both the pinctrl tree
  and this branch.

- Few defconfig related changes for drivers needed.

* tag 'omap-for-v3.13/quirk-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (523 commits)
  ARM: configs: omap2plus_defconfig: enable dwc3 and dependencies
  ARM: OMAP2+: Add WLAN modules and of_serial to omap2plus_defconfig
  ARM: OMAP2+: Run make savedefconfig on omap2plus_defconfig to shrink it
  ARM: OMAP2+: Add minimal 8250 support for GPMC
  ARM: OMAP2+: Use pdata quirks for wl12xx for omap3 evm and zoom3
  ARM: OMAP: Move DT wake-up event handling over to use pinctrl-single-omap
  ARM: OMAP2+: Add support for auxdata
  pinctrl: single: Add support for auxdata
  pinctrl: single: Add support for wake-up interrupts
  pinctrl: single: Prepare for supporting SoC specific features
  ARM: OMAP2+: igep0020: use display init from dss-common
  ARM: OMAP2+: pdata-quirks: add legacy display init for IGEPv2 board
  +Linux 3.12-rc4

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 15:29:24 -07:00
Kevin Hilman 6a9d10d529 Updates to dts file structure for Altera's SOCFPGA
* Does not include any new bindings or bindings change
 * Add dts file for a SOCFPGA with an Arria V FPGA
 * Add a clocks property for the TWD timer
 * Add support for Terasic SocKit Board which has Cyclone5 FPGA
 * From Steffen Trumtrar:
 "This series includes some minor cleanups (indentation and clock labels) and
 reorders the socfpga dts hierarchy from:
 	socfpga.dtsi
 	-> socfpga_$board.dts
 	-> socfpga_$otherboard.dts
 to
 	socfpga.dtsi
 	-> socfpga_cyclone5.dtsi
 	--> socfpga_cyclone5_$board.dts
 	--> socfpga_cyclone5_$otherboard.dts
 "
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSVdPOAAoJEBmUBAuBoyj0pJcQALhtTLPhih/7GLlMUPEeH9JK
 KEx6IyPjg/+70Ap+dwdalv5WM13SoVy9beIEBceLgk7q/iRRmMtlrCgpHZkkGktp
 s4DF+xIqtJRtOjiJQwbAEpknE1MgiaDCJjtQAKUDppq9g2swik0nztpzDwgDIvFF
 dGwJffRYQUwvCQ6UqFdIyUudbGvDpHgsuI67/mRsR7jzdJMPhO1BX8A6X4i7feRY
 QP8RJWVpO8/6Vvh93rCF4AfapBZIpnRoUU60vfhgXHLw6BiPIwMCI4l60ccvXIzy
 yKfM68FZAPq8Loz4YKFcvH/AiHBlUVNHNPZtPd8HsPoKP6pn9kFsbz8S+0VfVH5Y
 PDiuaFSIFE98YyPIZ/YsCkMENAOoSmiYQFGnErIp1Ve8BIyjMWytnt7uxdMl41SM
 tYsjVyfMobnRwcyd6gWuQACgOeqSzWJJwH2m8Wz+HiugcOgQtnXmMmu9YaZyaOxK
 aS65w5jtxLje+tN7HmY3vUBVxMSDxd01wVFaDfxsjOAUWbOVnFh+hUtVkUL/5zOJ
 7R5S1yVZw3pe6OY+N4gy0V+1w2T0WxfLxXly97B5JN5baeHtEvJmAj9/ukf92LES
 O4Ub2wEjrz72kl2IY20vWLBiAD+Q6405b7hfNJUKZ+ugKkcsdDseiMguv10aDREG
 kdp6J7h8aLxUBWWgAkVH
 =jmLh
 -----END PGP SIGNATURE-----

Merge tag 'socfpga-dts-updates-for-v3.13' of git://git.rocketboards.org/linux-socfpga-next into next/dt

From Dinh Nguyen:
Updates to dts file structure for Altera's SOCFPGA

* Does not include any new bindings or bindings change
* Add dts file for a SOCFPGA with an Arria V FPGA
* Add a clocks property for the TWD timer
* Add support for Terasic SocKit Board which has Cyclone5 FPGA
* From Steffen Trumtrar:
"This series includes some minor cleanups (indentation and clock labels) and
reorders the socfpga dts hierarchy from:
	socfpga.dtsi
	-> socfpga_$board.dts
	-> socfpga_$otherboard.dts
to
	socfpga.dtsi
	-> socfpga_cyclone5.dtsi
	--> socfpga_cyclone5_$board.dts
	--> socfpga_cyclone5_$otherboard.dts
"

* tag 'socfpga-dts-updates-for-v3.13' of git://git.rocketboards.org/linux-socfpga-next:
  dts: socfpga: Add support for Altera's SOCFPGA Arria V board
  ARM: socfpga: dts: fix s2f_* clock name
  ARM: socfpga: dts: cleanup indentation
  ARM: socfpga: dts: Add support for terasic SoCkit
  ARM: socfpga: dts: Move common nodes to cyclone5 dtsi
  arm: socfpga: Add clock for smp_twd timer

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 15:13:44 -07:00
Heiko Stuebner 6bcf60f8d5 ARM: rockchip: add support for rk3188 and Radxa Rock board
Basic devicetree files for the rk3188 SoC. Also provided is a board
dts file for the upcoming Radxa Rock board using this SoC.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2013-10-14 23:04:09 +02:00
Heiko Stuebner 9586609619 ARM: rockchip: add dts for bqcurie2 tablet
The BQ Curie2 is a tablet based on the rk3066a SoC.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2013-10-14 23:03:46 +02:00
Heiko Stuebner f95a2b3d98 ARM: rockchip: enable arm-global-timer
RK2928 and RK3066 contain a dw_apb timer component, while the rk3188 uses
a slightly similar but still different timer component. But all of them
support the ARM-global-timer that got added as clocksource driver recently.

So enable support for it to get a working clocksource for rk3188.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2013-10-14 23:03:23 +02:00
Heiko Stuebner f75efdd768 ARM: rockchip: move shared dt properties to common source file
The rk3188 SoC shares a lot of peripherals with the rk3066 SoC,
but not all. Therefore move the common parts to a shared dtsi.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2013-10-14 23:03:20 +02:00
Kevin Hilman 4fd0376356 Merge branch 'renesas/boards2' into next/boards
From Simon Horman:
* renesas/boards2: (64 commits)
  ARM: shmobile: marzen: enable INTC IRQ
  ARM: shmobile: bockw: add SMSC support on reference
  ARM: shmobile: Use SMP on Koelsch
  ARM: shmobile: Remove KZM9D reference DTS
  ARM: shmobile: Let KZM9D multiplatform boot with KZM9D DTB
  ARM: shmobile: Remove non-multiplatform KZM9D reference support
  ARM: shmobile: Use KZM9D without reference for multiplatform
  ARM: shmobile: Sync KZM9D DTS with KZM9D reference DTS
  ARM: shmobile: Use arch timer on Koelsch
  ARM: shmobile: Use r8a7791_add_standard_devices() on Koelsch
  ARM: shmobile: Genmai support
  ARM: shmobile: marzen: enable DMA for SDHI0
  ARM: shmobile: bockw: enable DMA for SDHI0
  ARM: shmobile: ape6evm: add DMA support to MMCIF
  ARM: shmobile: r8a7791 SMP support
  ARM: shmobile: r8a7779: split r8a7779_init_irq_extpin() for DT
  ARM: shmobile: r8a7778: split r8a7778_init_irq_extpin() for DT
  ARM: shmobile: r7s72100 SCIF support
  ARM: shmobile: Initial r7s72100 SoC support
  ARM: shmobile: r8a7791 Arch timer workaround
  ...

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 14:00:10 -07:00
Kevin Hilman 7a093c74c7 Merge branch 'renesas/dt2' into next/dt
From Simon Horman:
* renesas/dt2: (21 commits)
  ARM: shmobile: bockw: fixup ether node naming
  ARM: shmobile: r8a7779: add irqpin default status on DTSI
  ARM: shmobile: marzen: fixup SMSC IRQ number on DTS
  ARM: shmobile: bockw: add SMSC support on DTS
  ARM: shmobile: r8a7778: add renesas_intc_irqpin support on DTSI
  ARM: shmobile: r8a7791 SMP device tree node
  ARM: shmobile: r8a7791 Arch timer device tree node
  ARM: shmobile: r8a7791 IRQC device tree node
  ARM: shmobile: armadillo800eva-reference: add SDHI and MMCIF interfaces
  ARM: shmobile: armadillo-reference: Add PWM backlight node to DT
  ARM: shmobile: r8a73a4: add a DT node for the DMAC
  ARM: shmobile: r8a7790: add I2C DT nodes
  ARM: shmobile: only enable used I2C interfaces in DT on all Renesas boards
  ARM: shmobile: r8a7778: add usb phy power control function
  ARM: shmobile: r8a7778: add USBHS clock
  ARM: shmobile: r8a7791 CMT support
  ARM: shmobile: r8a7791 SCIF support
  ARM: shmobile: Initial r8a7791 SoC support
  ARM: shmobile: r8a7778: add SSI/SRU clock support
  ARM: shmobile: r8a7790: Add DU and LVDS clocks
  ...

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 13:53:12 -07:00
Heiko Stuebner 1b6dc1e478 ARM: rockchip: remove obsolete rockchip,config properties
These were used only in one intermediate variant of the pinctrl
driver but forgotten in the dtsi file. rockchip,config properties are
neither part of the actual binding nor handled by the pinctrl driver
at all, so remove them.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2013-10-14 21:01:53 +02:00
Heiko Stuebner f350f82386 ARM: rockchip: fix wrong use of non-existent CONFIG_LOCAL_TIMERS
CONFIG_LOCAL_TIMERS was removed in february, so the twd never gets
selected. Fix this by making the twd depend on SMP directly.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2013-10-14 21:01:12 +02:00
Tony Lindgren 5992234bc5 ARM: dts: Add basic support for TMDSEVM3730 (Mistral AM/DM37x EVM)
I've tested the serial, MMC, smsc911x, wl12xx, and off-idle support
with the pinctrl patches, so it probably works better than the
board-*.c files ever did. Also the board-omap3evm.c file is broken
for the DSS, and has been for a while. Patches are welcome to fix
it in this .dts file, let's just drop the board-*.c file for this.

Note that off-idle currently requires doing request_irq() on the
wake-up pin from pinctrl-single IRQ domain until we can handle
that in some Linux generic way.

[tony@atomide.com: updated for make dtbs build fix]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-14 11:34:37 -07:00
Tony Lindgren 465ce68b46 ARM: dts: Add common support for omap3-evm
Looks like the main difference between the TMDSEVM3530 and
TMDSEVM3730 is just the omap processor:

http://www.ti.com/tool/tmdsevm3530
http://www.ti.com/tool/tmdsevm3730

So let's add a common file for the EVMs, and fix the description
for the omap3-evm.dst as that's clearly for the TMDSEVM3530
since it includes omap34xx.dtsi. It cannot support the TMDSEVM3730
properly, and we need a separate file for that in the following
patch.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-14 11:34:37 -07:00
Tony Lindgren 6b2978ac40 ARM: dts: Shared file for omap GPMC connected smsc911x
Looks like at least Igep, Zoom and EVM boards can use a
common file for the GPMC connected smsc911x.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-14 11:34:37 -07:00
Tony Lindgren f41509ad0d Merge branches 'omap-for-v3.13/dt' and 'omap-for-v3.13/quirk' into omap-for-v3.13/board-removal
We need the fixes in v3.12-rc5, dts changes in omap-for-v3.13/dt, and
the platform data quirk changes in omap-for-v3.13/quirk to start
removing omap3 board files without breaking things.
2013-10-14 11:33:07 -07:00
Kevin Hilman 8620d2c536 ARM: keystone: fix PM domain initcall to be keystone only
initcalls need to have platform specific checks so they are not run in
multi-platform builds.

Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-14 11:10:33 -07:00
George Cherian facfbc49b4 ARM: OMAP2+: hwmod: Add USB hwmod data for AM437x.
Add hwmod for USBSS and the OCP2SCP for AM437x.
AM437x has got 2 instances of USBSS.

Signed-off-by: George Cherian <george.cherian@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-14 11:46:52 -06:00
Linus Torvalds d6099aeb4a Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm
Pull ARM fixes from Russell King:
 "Some more ARM fixes, nothing particularly major here.  The biggest
  change is to fix the SMP_ON_UP code so that it works with TI's Aegis
  cores"

* 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
  ARM: 7851/1: check for number of arguments in syscall_get/set_arguments()
  ARM: 7846/1: Update SMP_ON_UP code to detect A9MPCore with 1 CPU devices
  ARM: 7845/1: sharpsl_param.c: fix invalid memory access for pxa devices
  ARM: 7843/1: drop asm/types.h from generic-y
  ARM: 7842/1: MCPM: don't explode if invoked without being initialized first
2013-10-14 10:02:23 -07:00
Masanari Iida 8c88126bbb treewide: Fix typo in Kconfig
Correct spelling typo in Kconfig.

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2013-10-14 15:23:02 +02:00
Bo Shen 551a409ca6 ARM: at91: add sound support on at91sam9n12ek board
Add sound support on at91sam9n12ek board with wm8904 as codec.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-14 09:43:26 +02:00
Bo Shen 476090661a ARM: at91: enable ssc on at91sam9n12ek board
Enable ssc on at91sam9n12ek board

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-14 09:43:12 +02:00
Bo Shen e6f7991660 ARM: at91: enable wm8904 on at91sam9n12ek board
Enable wm8904 codec on at91sam9n12ek board, which is connect
to i2c0 bus with 0x1a as address.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-14 09:42:53 +02:00
Bo Shen ffcd77e279 ARM: at91: add ssc dma parameter for at91sam9n12
Add ssc dma parameter for at91sam9n12

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-14 09:42:38 +02:00
Bo Shen 45cf70c0dc ARM: at91: add at91sam9n12 ssc clock in look up table
Add at91sam9n12 ssc clock in look up table

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-10-14 09:42:19 +02:00
Christoffer Dall dc6f6763df KVM: ARM: Get rid of KVM_HPAGE defines
The KVM_HPAGE_DEFINES are a little artificial on ARM, since the huge
page size is statically defined at compile time and there is only a
single huge page size.

Now when the main kvm code relying on these defines has been moved to
the x86 specific part of the world, we can get rid of these.

Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Gleb Natapov <gleb@redhat.com>
2013-10-14 10:11:56 +03:00
Ambresh K 8835cf6e47 ARM: OMAP2+: AM43x PRCM init
Initialise AM43x HWMOD, powerdomains and clockdomains.

Signed-off-by: Ambresh K <ambresh@ti.com>
Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:49:16 -06:00
Afzal Mohammed d9df6e1e1c ARM: OMAP2+: AM43x: PRCM kbuild
Build AM43x power domain, clock domain and hwmod data.

Many of AM43x IP's and interconnects are similar as that in AM335x,
hence AM335x hwmod data is being reused with necessary changes.

Earlier the plan was to reuse AM335x specific PRCM code, but as AM43x
PRCM register layout is much similar to OMAP4/5, AM335x PRCM is
divorced and instead married with OMAP4/5 PRCM for AM43x.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:49:06 -06:00
Afzal Mohammed c8b428a5b1 ARM: OMAP2+: hwmod: AM43x operations
Reuse OMAP4 operations on AM43x.

Context related ops are not used on AM43x, as this would not add value
when using DT and AM43x is DT only boot. This additionally helps not to
add context register offset for each hwmod.

Signed-off-by: Ambresh K <ambresh@ti.com>
Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:48:57 -06:00
Afzal Mohammed 6913952f56 ARM: OMAP2+: hwmod: AM43x support
Add hwmod support for IP's that are present in AM43x, but not in AM335x.
AM43x additional ones added here are,
1. synctimer
2. timer8-11
3. ehrpwm3-5
4. spi2-4
5. gpio4-5

AM43x pruss interconnect which is different as compared to AM335x, has
been taken care.

And register offsets for same hwmod's shared with AM335x is different,
AM43x register offsets are updated appropriately.

ocp clock of those in l4_wkup is fed from "sys_clkin_ck" instead of
"dpll_core_m4_div2_ck", so "ocpif" for those in AM43x l4_wkup has been
added seperately.

hwmod's has been added for those that have main clock (wkup_m3, control,
gpio0) and clock domain (l4_hs) different from AM335x. debugss and
adc_tsc that have different clocks and clockdomains repectively has not
been added due to the reasons mentioned below.

AM43x also has IP's like qspi, hdq1w, vpfe, des, rng, usb, dss, debugss,
adc_tsc. These are not handled here due to both/either of following
reasons,
1. To avoid churn; most of them don't have DT bindings, which would
   necessitate adding address space in hwmod, which any way would have
   to be removed once DT bindings happen with driver support.
2. patches would come in from sources other than the author

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:48:46 -06:00
Ambresh K c9218fe63f ARM: OMAP2+: CM: AM43x clockdomain data
Add the data file to describe clock domains in AM43x SoC.
OMAP4 clockdomain operations is being reused here.

Signed-off-by: Ambresh K <ambresh@ti.com>
Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:48:36 -06:00
Ambresh K eadc62fc43 ARM: OMAP2+: PM: AM43x powerdomain data
Add the data file to describe all power domains in AM43x SoC.
OMAP4 powerdomain operations is being reused here.

Signed-off-by: Ambresh K <ambresh@ti.com>
Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:48:25 -06:00
Afzal Mohammed 37fbc27e2c ARM: OMAP2+: PRCM: AM43x definitions
Add AM43x CMINST, CDOFFS, RM_RSTST & RM_RSTCTRL definitions - minimal
ones that would be used.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:48:15 -06:00
Afzal Mohammed 205e39b5a0 ARM: OMAP2+: hwmod: AM335x: remove static register offs
Hwmod common to AM43x and AM335x has register offsets different. It is
now updated based on SoC detection at run time, hence remove statically
initialized ones.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:48:04 -06:00
Afzal Mohammed 1c7e224dff ARM: OMAP2+: hwmod: AM335x: runtime register update
Most of IP's in AM335x is present on AM43x and so in those cases both
will use same hwmod database (except for a few cases where clock related
details differ), but there is difference w.r.t register offset between
these. Update register offsets at runtime based on the SoC detected to
help in sharing otherwise same hwmod.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:47:56 -06:00
Afzal Mohammed 26649467ad ARM: OMAP2+: hwmod: AM335x/AM43x: move common data
AM335x and AM43x have most of the IP's and interconnect's similar.
Instead of adding redundant hwmod data, move interconnects and hwmod
similar between AM335x and AM43x to a common location. This helps in
reuse on AM43x.

AM335x interconnects that has difference and not present in AM43x are
not moved. ocp clock of those in l4_wkup is fed from a different source
for AM43x. Also pruss interconnect is different.

AM335x hwmod's that has difference other than prcm register offsets
(difference is in clocks of wkup_m3, control, gpio0, debugss and clock
domain of l4_hs, adc_tsc as compared to AM43x) and those that are not
present in AM43x are not moved.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:47:39 -06:00
Ankur Kishore d3f5d551df ARM: OMAP2+: CM: cm_inst offset s16->u16
Most of the AM43x CM reg address offsets are with MSB bit '1' (on
16-bit value) leading to arithmetic miscalculations while calculating
CLOCK ENABLE register's address because cm_inst field was a type of
"const s16", so make it "const u16".

Also modify relevant functions so as to take care of the above.

[afzal@ti.com: fixup and cleanup]

Signed-off-by: Ankur Kishore <a-kishore@ti.com>
Signed-off-by: Afzal Mohammed <afzal@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
2013-10-13 22:46:38 -06:00
Linus Walleij 29114fd7db ARM: integrator: deactivate timer0 on the Integrator/CP
This fixes a long-standing Integrator/CP regression from
commit 870e2928cf
"ARM: integrator-cp: convert use CLKSRC_OF for timer init"

When this code was introduced, the both aliases pointing the
system to use timer1 as primary (clocksource) and timer2
as secondary (clockevent) was ignored, and the system would
simply use the first two timers found as clocksource and
clockevent.

However this made the system timeline accelerate by a
factor x25, as it turns out that the way the clocking
actually works (totally undocumented and found after some
trial-and-error) is that timer0 runs @ 25MHz and timer1
and timer2 runs @ 1MHz. Presumably this divider setting
is a boot-on default and configurable albeit the way to
configure it is not documented.

So as a quick fix to the problem, let's mark timer0 as
disabled, so the code will chose timer1 and timer2 as it
used to.

This also deletes the two aliases for the primary and
secondary timer as they have been superceded by the
auto-selection

Cc: stable@vger.kernel.org
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Russell King <linux@arm.linux.org.uk>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2013-10-13 14:07:21 -07:00
AKASHI Takahiro 3c1532df5c ARM: 7851/1: check for number of arguments in syscall_get/set_arguments()
In ftrace_syscall_enter(),
    syscall_get_arguments(..., 0, n, ...)
        if (i == 0) { <handle ORIG_r0> ...; n--;}
        memcpy(..., n * sizeof(args[0]));
If 'number of arguments(n)' is zero and 'argument index(i)' is also zero in
syscall_get_arguments(), none of arguments should be copied by memcpy().
Otherwise 'n--' can be a big positive number and unexpected amount of data
will be copied. Tracing system calls which take no argument, say sync(void),
may hit this case and eventually make the system corrupted.
This patch fixes the issue both in syscall_get_arguments() and
syscall_set_arguments().

Cc: <stable@vger.kernel.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2013-10-13 18:54:33 +01:00
Linus Torvalds 3552570a21 ARM: SoC fixes for 3.12-rc
A small batch of fixes this week, mostly OMAP related. Nothing stands out
 as particularly controversial.
 
 Also a fix for a 3.12-rc1 timer regression for Exynos platforms, including
 the Chromebooks.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSWs1jAAoJEIwa5zzehBx3OLEQAKQCQxbZ+LatgSK3Usk7I9s8
 BXsAvzb26e1frZBQqN8V2o3Mz7sIDwOLJE9pPMgm/Q63+7+EAGR4S1ZO9fLHk7l8
 vSHm/KJicTFtYZkppjnxyULN9biuhBxXJZUwqqNdrC6rmee/OiE4llKpbgPsU3k0
 ZWLwFiPL6ZLgfezsOQNOP7exC48oex1aRok9glAExmryqsk2Cj6l+o8iV8T7Lpok
 mvdoKnCHfhYX8hB+NBlSpedvCOWMwos10+JuXC5MbpewqE7xpX8zLWuGhB3my33a
 EQPQGvpbi9qhcaXX/Bwe3ybnLDA6yi2GCeRA/5wb7uTxCTR/vWzLYWLDpgV0lcv1
 EunPa79U2qj1mcyUNno0tRkjSCefJy7ruW53h4xRWdrBqUbGWVsZ62JKK7hNJP1V
 5oIdEidFnOfXsPxiBg1o/WtjPk9DelSn9zz82l81Vqew+H9Dj684nssCJRXwUxaB
 X2AT+nlxSskQmhK05ZSn8qejQueV7LeUL17Xh9WNFVDsg7YYqi24npg/6gwpfkzC
 i+Pxvk3UseTyThOoUVGWOZy1aeyLHDQO9VccEzrRZRjWtOfpc/ubYVZpGyvgHOY0
 QSaPfLZxsDPoa8bUY/qKiZP/tSSR4GqUzEB3aLYrvuXhasrR5txHbOQtIMEQR4tQ
 udb80OrLAt/vVl5vhDJh
 =HpMx
 -----END PGP SIGNATURE-----

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

Pull ARM SoC fixes from Olof Johansson:
 "A small batch of fixes this week, mostly OMAP related.  Nothing stands
  out as particularly controversial.

  Also a fix for a 3.12-rc1 timer regression for Exynos platforms,
  including the Chromebooks"

* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: exynos: dts: Update 5250 arch timer node with clock frequency
  ARM: OMAP2: RX-51: Add missing max_current to rx51_lp5523_led_config
  ARM: mach-omap2: board-generic: fix undefined symbol
  ARM: dts: Fix pinctrl mask for omap3
  ARM: OMAP3: Fix hardware detection for omap3630 when booted with device tree
  ARM: OMAP2: gpmc-onenand: fix sync mode setup with DT
2013-10-13 09:59:10 -07:00
Yuvaraj Kumar C D 4d594dd302 ARM: exynos: dts: Update 5250 arch timer node with clock frequency
Without the "clock-frequency" property in arch timer node, could able
to see the below crash dump.

[<c0014e28>] (unwind_backtrace+0x0/0xf4) from [<c0011808>] (show_stack+0x10/0x14)
[<c0011808>] (show_stack+0x10/0x14) from [<c036ac1c>] (dump_stack+0x7c/0xb0)
[<c036ac1c>] (dump_stack+0x7c/0xb0) from [<c01ab760>] (Ldiv0_64+0x8/0x18)
[<c01ab760>] (Ldiv0_64+0x8/0x18) from [<c0062f60>] (clockevents_config.part.2+0x1c/0x74)
[<c0062f60>] (clockevents_config.part.2+0x1c/0x74) from [<c0062fd8>] (clockevents_config_and_register+0x20/0x2c)
[<c0062fd8>] (clockevents_config_and_register+0x20/0x2c) from [<c02b8e8c>] (arch_timer_setup+0xa8/0x134)
[<c02b8e8c>] (arch_timer_setup+0xa8/0x134) from [<c04b47b4>] (arch_timer_init+0x1f4/0x24c)
[<c04b47b4>] (arch_timer_init+0x1f4/0x24c) from [<c04b40d8>] (clocksource_of_init+0x34/0x58)
[<c04b40d8>] (clocksource_of_init+0x34/0x58) from [<c049ed8c>] (time_init+0x20/0x2c)
[<c049ed8c>] (time_init+0x20/0x2c) from [<c049b95c>] (start_kernel+0x1e0/0x39c)

THis is because the Exynos u-boot, for example on the Chromebooks, doesn't set
up the CNTFRQ register as expected by arch_timer. Instead, we have to specify
the frequency in the device tree like this.

Signed-off-by: Yuvaraj Kumar C D <yuvaraj.cd@samsung.com>
[olof: Changed subject, added comment, elaborated on commit message]
Signed-off-by: Olof Johansson <olof@lixom.net>
2013-10-13 09:33:54 -07:00
Olof Johansson 98ead6e001 Few fixes for omap3 related hangs and errors that people have
noticed now that people are actually using the device tree
 based booting for omap3.
 
 Also one regression fix for timer compile for dra7xx when
 omap5 is not selected, and a LED regression fix for n900.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSVFFqAAoJEBvUPslcq6VzmMwP+wYGQ1a0Dyq/nHvHFbsm8Ny2
 QQJBcz2QqiOUk3gCENl5MJ2CWeKr9vsB9JoC+BAWbaJ2qc20ru/LcT8vrd1bvFFm
 qfvQzdSQubV+6//aTTjWc0pCfNw5ElpfjVztR3NbA6r1x4N3UISsLhLM20UOlq7v
 aS6tIcP66H2haJRX5SIQkow8/zT1/YRZ3w368JDRCUWD+Lj+ceDasgyJVpPkIscV
 q15EFSi4RWboxY6d6u5LkQwdxnX4cBL5/TWD/jHP2OGtDwdpg3aXW9uLrewETXlT
 4OGh7igHe7mBXnUpWgOB5vjElp3i7zN81//hIe7rNys4hj4ED7t71n/qy90EOJWm
 fH2mou/lOmqIXhEB68vOT88BeGlrELBRu6hrA56aem7LWOZKkIRIPEhC2qE/r18l
 YIcBMsNlxxWY0ebmJvmvYCDxUyJpMIxePZ3k1xwybNojbSI0CRGd1qZMQoDWV6Yd
 dbnvs+f0sCy7lOjrg9u/miCZJnc+wrkoKDQUfFiP2gHWQpQyBswOFO76VD7zW4DX
 zLZs4oGml+Tc3LyLlTFdoMKeeW2AmQHKBNEupUzWhL0AjndTTetD4S3YwU8EfAVS
 hPkzT0gI5oum3TypIdCr9Wmobn0tzJGI/rLxe5UJCeVbWpDfwqyccEy1wF/ET4FO
 bVvy4NsDCHOSeDbAi8Xe
 =yVzH
 -----END PGP SIGNATURE-----

Merge tag 'fixes-against-v3.12-rc3-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

From Tony Lindgren:

Few fixes for omap3 related hangs and errors that people have
noticed now that people are actually using the device tree
based booting for omap3.

Also one regression fix for timer compile for dra7xx when
omap5 is not selected, and a LED regression fix for n900.

* tag 'fixes-against-v3.12-rc3-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2: RX-51: Add missing max_current to rx51_lp5523_led_config
  ARM: mach-omap2: board-generic: fix undefined symbol
  ARM: dts: Fix pinctrl mask for omap3
  ARM: OMAP3: Fix hardware detection for omap3630 when booted with device tree
  ARM: OMAP2: gpmc-onenand: fix sync mode setup with DT

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-10-13 09:33:32 -07:00
Jonathan Austin e8c2d99f82 KVM: ARM: Add support for Cortex-A7
This patch adds support for running Cortex-A7 guests on Cortex-A7 hosts.

As Cortex-A7 is architecturally compatible with A15, this patch is largely just
generalising existing code. Areas where 'implementation defined' behaviour
is identical for A7 and A15 is moved to allow it to be used by both cores.

The check to ensure that coprocessor register tables are sorted correctly is
also moved in to 'common' code to avoid each new cpu doing its own check
(and possibly forgetting to do so!)

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-12 17:45:30 -07:00
Jonathan Austin 5e497046f0 KVM: ARM: fix the size of TTBCR_{T0SZ,T1SZ} masks
The T{0,1}SZ fields of TTBCR are 3 bits wide when using the long descriptor
format. Likewise, the T0SZ field of the HTCR is 3-bits. KVM currently
defines TTBCR_T{0,1}SZ as 3, not 7.

The T0SZ mask is used to calculate the value for the HTCR, both to pick out
TTBCR.T0SZ and mask off the equivalent field in the HTCR during
read-modify-write. The incorrect mask size causes the (UNKNOWN) reset value
of HTCR.T0SZ to leak in to the calculated HTCR value. Linux will hang when
initializing KVM if HTCR's reset value has bit 2 set (sometimes the case on
A7/TC2)

Fixing T0SZ allows A7 cores to boot and T1SZ is also fixed for completeness.

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-12 17:44:39 -07:00
Jonathan Austin 1158fca401 KVM: ARM: Fix calculation of virtual CPU ID
KVM does not have a notion of multiple clusters for CPUs, just a linear
array of CPUs. When using a system with cores in more than one cluster, the
current method for calculating the virtual MPIDR will leak the (physical)
cluster information into the virtual MPIDR. One effect of this is that
Linux under KVM fails to boot multiple CPUs that aren't in the 0th cluster.

This patch does away with exposing the real MPIDR fields in favour of simply
using the virtual CPU number (but preserving the U bit, as before).

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2013-10-12 17:44:39 -07:00
Dong Aisheng fa87dfd6d0 ARM: dts: imx6sl: add pinctrl uhs states for usdhc
This is needed for SD3.0 cards working on UHS mode.

Signed-off-by: Dong Aisheng <b29396@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-12 16:48:09 +08:00
Rogerio Pimentel 2f35c0c41f ARM: dts: imx6qdl-sabresd: Add backlight support for lvds
This patch adds support for lvds backlight on boards
i.MX6q-SabreSD and i.MX6dl-SabreSD

Signed-off-by: Rogerio Pimentel <rogerio.pimentel@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-10-12 16:15:05 +08:00
Tony Lindgren d5da94b88e ARM: OMAP2+: Fix build error for realtime counter init if not enabled
Otherwise we can get an error with some configs:

arch/arm/mach-omap2/timer.c:73: undefined reference to `omap_smc1'

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 17:28:04 -07:00
Jingoo Han a4b3f029c9 ARM: SAMSUNG: Remove unused s5p_device_ehci
Since commit ca91435 "ARM: EXYNOS: Remove unused board files",
s5p_device_ehci is not used anymore. Thus, s5p_device_ehci can
be removed. Also, unnecessary S5P_DEV_USB_EHCI option is removed.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-10-11 16:53:42 -07:00
Tony Lindgren 9e490f486e Merge branch 'omap-for-v3.13/n900' into omap-for-v3.13/board 2013-10-11 16:14:23 -07:00
Felipe Balbi 8d71528343 ARM: configs: omap2plus_defconfig: enable dwc3 and dependencies
DWC3 enables USB3 functionality for OMAP5 boards,
it's safe to enable those drivers in omap2plus_defconfig.

Signed-off-by: Felipe Balbi <balbi@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
[tony@atomide.com: updated against other defconfig changes]
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 15:41:25 -07:00
Benoit Cousson 254f57a929 ARM: OMAP5: hwmod: add missing ocp2scp hwmod data
Add this hwmod data to allow USB3 to work in OMAP5 boards.

Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
[tony@atomide.com: updated to apply against Paul's changes]
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 15:37:05 -07:00
Kevin Hilman f797bd4a02 SOC updates for Keystone II devices:
- Clock tree support
 - Clock management support using PM core
 - Keystone config update for EMDA with ack from Vinod
 - Enable SPI and I2C drivers
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSV0ACAAoJEHJsHOdBp5c/ExIP/1DYAcJoHnSx0MZwXIl0mmHu
 klHWr1QDH+kqwlbxnylAJ8LgsPFDmhdW0TD1vuvSBYjH19Yrm4HwWNLJ1V26F0uq
 kd3fVYTx8Zm5YNk6kI4SJDeWC3GPtB6QgSwenTv9LpRggM99vkw9iLLEouuVKK0C
 AzDNg4CI+8pHRZIqWoGS5o0e14+x1zCcORL3J4mpsgbT88Lu0lbuKuPLhGquuWRP
 FeCvL8CSc4iqP81eFm1vy5Gix6bOIPaXCkey8xeMCKUhx4po1kj5hdiPwDlm4w8R
 M8iMotbaeZazo8tZGy2++XA4viAaIWbioDi/AhvfVuoSdtsHK6X/7+bnhK77R7wh
 rpVyhlnHSewFHLMDd5IE+mVGpzBkp2neLFwY5xbS/Acqplwcdlpa9cbQk/lYXZ7k
 0esShfBgMf42h+bWMXpgxV8To4Qisy0bQ723AKEZwgVVM8YkKNNwIHO70rEqWp5+
 M7qtKJF6AfvH8IRWwTB9Ce99g6k3OAfidDEgC7BMLKv3zc6/bTR1N4xjobp109eq
 sSgVfZERdnBriNvjZWxICpCqoMVN8hqkL4IeLR16s3cXuU8H4rxq5HqnH5/AEDa5
 1agJYGnE0CzmurMCyMrsT9IQjd7C+zJftp7TrO2y48OzAQKW4wdbuK6xPH0chFR0
 dtMA3wY/nB+FOb51bmnf
 =d2uA
 -----END PGP SIGNATURE-----

Merge tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/soc

From Santosh Shilimkar:
SOC updates for Keystone II devices:

- Clock tree support
- Clock management support using PM core
- Keystone config update for EMDA with ack from Vinod
- Enable SPI and I2C drivers

* tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: (510 commits)
  ARM: keystone: Enable I2C and SPI bus support
  ARM: keystone: Select TI_EDMA to be able to enable SPI driver
  dma: Allow TI_EDMA selectable for ARCH_KEYSTONE
  ARM: dts: keystone: Add the SPI nodes
  ARM: dts: keystone: Add i2c device nodes
  ARM: keystone: add PM domain support for clock management
  ARM: keystone: Enable clock drivers
  ARM: dts: keystone: Add clock phandle to UART nodes
  ARM: dts: keystone: Add clock tree data to devicetree
  +Linux 3.12-rc4

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-11 15:01:36 -07:00
Stephen Boyd 9485099209 ARM: Remove temporary sched_clock.h header
This header file is no longer needed now that the ARM sched_clock
framework is generic and all users have moved to linux/sched_clock.h
instead of asm/sched_clock.h. Remove it.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-11 14:50:10 -07:00
Stephen Boyd 5bd8e16de3 ARM: clps711x: Use linux/sched_clock.h
The sched_clock.h include is under include/linux now.

Cc: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-10-11 14:50:10 -07:00
Balaji T K 6cf02dbb4b ARM: dts: dra7-evm: Add mmc2 node for eMMC support
Add mmc2 dt node to dra7-evm board
and model eMMC vcc as fixed regulator.

Signed-off-by: Balaji T K <balajitk@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:15:02 +02:00
Balaji T K bf1788df8f ARM: dts: dra7-evm: Add mmc1 node for micro-sd support
Add mmc1 dt node to dra7-evm board.
Input for ldo1 regulator is controlled by gpio 5 of pcf8575 chip (0x21)
on i2c1 bus. When dt support for gpio-pcf857x is available, input supply
will be modelled as cascaded regulator.

Signed-off-by: Balaji T K <balajitk@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:14:32 +02:00
Nishanth Menon 86583375aa ARM: dts: omap5-uevm: mark TWL6037 as system-power-controller
This allows the palmas pm_power_off to kick in on power off command
and switch off the board.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:44 +02:00
Javier Martinez Canillas 2892aef29f ARM: dts: omap3-igep0020: use standard constant for IRQ flags
Commit 840ef8b7 ("ARM: dt: add header to define IRQ flags") added
constants for IRQ edge/level triggered types so use it instead of
a magic number to enhance the DT readability.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:44 +02:00
Javier Martinez Canillas 339e834fe0 ARM: dts: omap3-igep0020: Add HS USB Host support
Add device nodes for the HS USB Host port 1, USB PHY and its
required regulator and also pin mux setup for HS USB1 pins.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Tested-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Acked-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:43 +02:00
Javier Martinez Canillas aa496bde78 ARM: dts: omap3-igep: Add USB OTG support
Commit ad871c10b ("ARM: dts: OMAP: Add usb_otg and glue data to O
added USB OTG support for most OMAP boards but some OMAP3 boards
such as IGEP boards were not updated. This patch adds an USB OTG
device node to these board.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Tested-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:43 +02:00
Darren Etheridge 559a08e893 ARM: dts: AM33XX beagle black: add pinmux and hdmi node to enable display
Enable the hdmi output and the LCD Controller on BeagleBone
Black. Also configure the correct pinmux for output of
video data from the SoC to the HDMI encoder.

Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:42 +02:00
Benoit Parrot d6cfc1e266 ARM: dts: AM33XX: Add LCDC info into am335x-evm
Add LCDC device node in DT for am33xx
Add LCDC and Panel info in DT for am335x-evm

Changes:
- remove redundant/unnecessary SoC specific setting in the board dts
- resolved conflicts on for_3.13/dts

Signed-off-by: Benoit Parrot <bparrot@ti.com>
Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:42 +02:00
Joel Fernandes 099f3a8548 ARM: dts: AM437X: Add DES node
AM437x SoC has a DES3DES module similar to the one on OMAP4.
Add DT node for the same.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:42 +02:00
Joel Fernandes 6e70a510b4 ARM: dts: AM437X: Add AES node
AM437x SoC has AES module similar to the one on OMAP4.
Add DT node for the same.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:41 +02:00
Joel Fernandes 7af8884a17 ARM: dts: AM33XX: Fix AES interrupt number
AES interrupts were previously not used, but after recent changes
to omap-aes driver, its being used.
Correct the interrupt number to have working PIO mode.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:41 +02:00
Mark A. Greer 99919e5e15 ARM: dts: AM33XX: Add AES data and documentation
Add the generic AM33XX AES module's device tree data and
enable it for the am335x-evm, am335x-evmsk, and am335x-bone
platforms.  Also add Documentation file describing the data
for the AES module.

Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Joel Fernandes <joelf@ti.com>
[joelf@ti.com: Dropped interrupt-parent property, documentation fixups]
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:40 +02:00
Mark A. Greer f8302e1efa ARM: dts: AM33XX: Add SHAM data and documentation
Add the generic AM33XX SHAM module's device tree data and
enable it for the am335x-evm, am335x-evmsk, and am335x-bone
platforms.  Also add Documentation file describing the data
for the SHAM module.

Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Joel Fernandes <joelf@ti.com>
[joelf@ti.com: Dropped interrupt-parent property, documentation fixups]
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:40 +02:00
Joel Fernandes 806e943153 ARM: dts: OMAP4: Add DES3DES node
OMAP4 has an DES3DES  module that uses the omap-des crypto driver.
Add DT entries for the same.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:39 +02:00
Joel Fernandes dd6317dffc ARM: dts: OMAP4: Add AES node
OMAP4 has an AES module that uses the omap-aes crypto driver.
Add DT entries for the same.

Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:39 +02:00
Balaji T K 0d8d40fc66 ARM: dts: am335x-evm[sdk]: switch mmc1 to 4-bit mode
Set bus-width to make SD card operate in 4 bit mode.

Signed-off-by: Balaji T K <balajitk@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:38 +02:00
Balaji T K af905b2225 ARM: dts: am335x-bone-common: correct mux mode for cmd line
Set pinmux_emmc_pins mux mode for cmd line to MODE2 in order
to detect eMMC on BBB and BBW + eMMC cape.

Signed-off-by: Balaji T K <balajitk@ti.com>
Tested-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:38 +02:00
Enric Balletbo i Serra 5cda1620f4 ARM: dts: AM33XX: Add support for IGEP AQUILA EXPANSION board.
The IGEP AQUILA EXPANSION board is a development platform
for the IGEP COM AQUILA AM335x boards.

The board adds the following connectivity:

    o USB OTG
    o USB HOST
    o HDMI
    o Ethernet
    o Serial Debug (3.3V)
    o 2x46 pin headers
    o EEPROM

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:37 +02:00
Enric Balletbo i Serra e415245c68 ARM: dts: AM33XX: Add support for IGEP COM AQUILA
The IGEP COM AQUILA is industrial processors SODIMM module with
following highlights:

   o AM3352/AM3354/AM3358/AM3359 Texas Instruments processor
   o Cortex-A8 ARM CPU
   o 3.3 volts Inputs / Outputs use industrial
   o 256 MB DDR3 SDRAM / 128 Megabytes FLASH
   o MicroSD card reader on-board
   o Ethernet controller on-board
   o JTAG debug connector available
   o Designed for industrial range purposes

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:37 +02:00
Nishanth Menon ea5b7c10d4 ARM: dts: am335x-boneblack: move fixed regulator to board level
3.3V fixed regulator does not belong to TPS node - as a result
the fixed regulator is never probed and MMC is continually deferred
due to lack of regulator.

Move the fixed regulator to be at root of platform.

Cc: Joel Fernandes <joelf@ti.com>
Cc: Sekhar Nori <nsekhar@ti.com>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Felipe Balbi <balbi@ti.com>
Tested-by: Balaji T K <balajitk@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:36 +02:00
Roger Quadros 816602086b ARM: dts: omap3-beagle: Add USB OTG PHY details
Add information about the USB OTG PHY. Without this
the OTG port on beagle will not work.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:36 +02:00
Roger Quadros aaba94429a ARM: dts: omap3-beagle-xm: Add USB Host support
Provide RESET GPIO and Power regulator for the USB PHY,
the USB Host port mode and the PHY device for the controller.
Also provide pin multiplexer information for USB host pins.

We also relocate omap3_pmx_core pin definations so that they
are close to omap3_pmx_wkup pin definations.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:35 +02:00
Roger Quadros 8ae9b5953c ARM: dts: omap5-uevm: Use reset-gpios for hsusb2/3_reset
We no longer need to model the RESET line as a regulator since
the USB phy-nop driver accepts "reset-gpios" property.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:35 +02:00
Roger Quadros 4cbdc86d63 ARM: dts: omap4-panda: Use reset-gpios for hsusb1_reset
We no longer need to model the RESET line as a regulator since
the USB phy-nop driver accepts "reset-gpios" property.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:35 +02:00
Roger Quadros 633b940fc0 ARM: dts: omap3-beagle: Use reset-gpios for hsusb2_reset
We no longer need to model the RESET line as a regulator since
the USB phy-nop driver accepts "reset-gpios" property.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:34 +02:00
Dan Murphy 8170056d3c ARM: dts: AM33XX: add ethernet alias's for am33xx
Set the alias for ethernet0 and ethernet1 so that uBoot
can set the MAC address appropriately.

Currently u-boot cannot find the alias and there for does
not set the MAC address.

Signed-off-by: Dan Murphy <dmurphy@ti.com>
Tested-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:34 +02:00
Keerthy c56a831ca4 ARM: dts: DRA7: Add TPS659038 PMIC nodes
Add DT nodes for TPS659038 PMIC on DRA7 boards.

It is based on top of:
http://comments.gmane.org/gmane.linux.ports.arm.omap/102459.

Documentation:
- Documentation/devicetree/bindings/mfd/palmas.txt
- Documentation/devicetree/bindings/regulator/palmas-pmic.txt

Boot Tested on DRA7 d1 Board.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Acked-by: Nishanth Menon <nm@ti.com>
[bcousson@baylibre.com: Fix indentation and changelog]
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:33 +02:00
Aaro Koskinen 6283513b6e ARM: dts: omap3-devkit8000: fix a typo in GMPC node
"gpmc,sync-clki-ps" is not defined/documented, it should be
"gpmc,sync-clk-ps" instead.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:33 +02:00
Javier Martinez Canillas e0efaafbb5 ARM: dts: AM33XX: don't redefine OCP bus and device nodes
The On Chip Peripherals (OCP) device node is a simplified
representation of the AM33XX SoC interconnect. An OCP dev
node is already defined in the am33xx.dtsi Device Tree
source file included by am33xx based boards so there is
no need to redefine this on each board DT file.

Also, the OCP and IP modules directly connected to it are SoC
internal details that is better to keep outside of board files.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:32 +02:00
Javier Martinez Canillas 82d75afcb7 ARM: dts: AM33XX: use pinmux node defined in included file
am33xx boards DTS include the am33xx.dtsi Device Tree
source file that already define a pinmux device node for
the AM33XX SoC Pin Multiplex.

Redefining this for each board makes the Device Tree files
harder to modify and maintain so let's just use what is
already defined in the included .dtsi file.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:32 +02:00
Koen Kooi ec8a75979f ARM: dts: am335x-bone-common: add cpu0 and mmc1 triggers
This matches the vendor 3.8.x configuration that is shipping
with the boards.

The LED layout is now:
 USR0: heartbeat
 USR1: mmc0 (micro-SD slot)
 USR2: cpu0
 USR3: mmc1 (eMMC)

The cpu0 triggers was put in between the mmc triggers to make
is easier to see where the disk activity is.

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Tested-by: Kevin Hilman <khilman@linaro.org>
Reviewed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:31 +02:00
Koen Kooi 757a90e66c ARM: dts: am335x-bone-common: switch mmc1 to 4-bit mode
The micro-SD slot hooks up all four data pins so lets' use them.

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Tested-by: Kevin Hilman <khilman@linaro.org>
Reviewed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:31 +02:00
Koen Kooi 1aac4a9903 ARM: dts: am335x-boneblack: add eMMC DT entry
The pinmux is specified in am335x-bone-common.dtsi to be
reused by the eMMC cape.

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Tested-by: Kevin Hilman <khilman@linaro.org>
Reviewed-by: Nishanth Menon <nm@ti.com>
[bcousson@baylibre.com: Fix traling spaces and useless comments]
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:30 +02:00
Alexander Holler 3045ffffcf ARM: dts: am335x-bone: add CD for mmc1
This enables the use of MMC cards even when no card was inserted at boot.

Signed-off-by: Alexander Holler <holler@ahsoftware.de>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Tested-by: Kevin Hilman <khilman@linaro.org>
Reviewed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:30 +02:00
Matt Porter 55b4452b4b ARM: dts: AM33XX: Add MMC support and documentation
Adds AM33XX MMC support for am335x-bone, am335x-evm and am335x-evmsk boards.

Also added is the DMA binding definitions based on the generic DMA request
binding.

Additional changes made to DTS:
* Interrupt, reg and compatible properties added
* ti,needs-special-hs-handling added

Signed-off-by: Matt Porter <mporter@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Joel Fernandes <joelf@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:29 +02:00
Matt Porter f5e2f807b7 ARM: dts: AM33XX: Add SPI DMA support
Adds DMA resources to the AM33XX SPI nodes.

Signed-off-by: Matt Porter <mporter@ti.com>
Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:29 +02:00
Matt Porter 505975d380 ARM: dts: AM33XX: Add EDMA support
Adds AM33XX EDMA support to the am33xx.dtsi as documented in
Documentation/devicetree/bindings/dma/ti-edma.txt

[Joel Fernandes <joelf@ti.com>]
Drop DT entries that are non-hardware-description as discussed in [1]

[1] https://patchwork.kernel.org/patch/2226761/

Signed-off-by: Matt Porter <mporter@ti.com>
Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
2013-10-11 21:06:28 +02:00
Joseph Lo 6ec1d127ee ARM: tegra: enable LP1 suspend mode for Venice2
Enable LP1 suspend mode for Tegra124 Venice2 board.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-11 12:32:17 -06:00
Tony Lindgren 487e5f2868 ARM: OMAP2+: Add WLAN modules and of_serial to omap2plus_defconfig
Many boards have either WL12XX or MWIFIEX, so let's
build modules for those by default. This also makes it
easier to test WLAN on pandaboard to avoid regressions
like we had with the move to device tree based booting.

And at least the zoom boards need the of_serial for the
UARTs connected to the GPMC bus.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 09:21:50 -07:00
Tony Lindgren fb23ba55ea ARM: OMAP2+: Run make savedefconfig on omap2plus_defconfig to shrink it
We can save few tens of lines this way, and it is easier
to generate minimal patches against omap2plus_defconfig.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 09:21:50 -07:00
Tony Lindgren f2bf0e72d0 ARM: OMAP2+: Add minimal 8250 support for GPMC
Just initialize things using the bootloader timings like
we've been doing for the legacy booting too. It should be
possible to patch in the GPMC timings for the based on the
TL16CP743C/TL16C754C manual at:

http://www.ti.com/lit/ds/slls644g/slls644g.pdf

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 09:21:50 -07:00
Tony Lindgren 79b39f7918 ARM: OMAP2+: Use pdata quirks for wl12xx for omap3 evm and zoom3
As the wl12xx bindings are still pending, this way we can
get things working for omap3 evm and zoom platforms.

Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-10-11 09:21:49 -07:00
Joseph Lo bd4e301bda ARM: tegra: enable Tegra RTC as default for Tegra124
This patch makes the Tegra RTC enabled as default for Tegra124 platform.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-10-11 09:55:55 -06:00
Ingo Molnar ec0ad3d01f Merge branch 'core/urgent' into sched/core
Merge in asm goto fix, to be able to apply the asm/rmwcc.h fix.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
2013-10-11 07:39:37 +02:00
Ingo Molnar 3f0116c323 compiler/gcc4: Add quirk for 'asm goto' miscompilation bug
Fengguang Wu, Oleg Nesterov and Peter Zijlstra tracked down
a kernel crash to a GCC bug: GCC miscompiles certain 'asm goto'
constructs, as outlined here:

  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670

Implement a workaround suggested by Jakub Jelinek.

Reported-and-tested-by: Fengguang Wu <fengguang.wu@intel.com>
Reported-by: Oleg Nesterov <oleg@redhat.com>
Reported-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Suggested-by: Jakub Jelinek <jakub@redhat.com>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: <stable@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2013-10-11 07:39:14 +02:00
Linus Torvalds 2d9d028283 Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull kbuild fix from Michal Marek:
 "Here is an ARM Makefile fix that you even acked.  After nobody wanted
  to take it, it ended up in the kbuild tree"

* 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
  arm, kbuild: make "make install" not depend on vmlinux
2013-10-10 18:15:23 -07:00
Santosh Shilimkar a77e0c7b27 ARM: mm: Recreate kernel mappings in early_paging_init()
This patch adds a step in the init sequence, in order to recreate
the kernel code/data page table mappings prior to full paging
initialization.  This is necessary on LPAE systems that run out of
a physical address space outside the 4G limit.  On these systems,
this implementation provides a machine descriptor hook that allows
the PHYS_OFFSET to be overridden in a machine specific fashion.

Cc: Russell King <linux@arm.linux.org.uk>

Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: R Sricharan <r.sricharan@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2013-10-10 20:28:19 -04:00
Sricharan R f52bb72254 ARM: mm: Correct virt_to_phys patching for 64 bit physical addresses
The current phys_to_virt patching mechanism works only for 32 bit
physical addresses and this patch extends the idea for 64bit physical
addresses.

The 64bit v2p patching mechanism patches the higher 8 bits of physical
address with a constant using 'mov' instruction and lower 32bits are patched
using 'add'. While this is correct, in those platforms where the lowmem addressable
physical memory spawns across 4GB boundary, a carry bit can be produced as a
result of addition of lower 32bits. This has to be taken in to account and added
in to the upper. The patched __pv_offset and va are added in lower 32bits, where
__pv_offset can be in two's complement form when PA_START < VA_START and that can
result in a false carry bit.

e.g
    1) PA = 0x80000000; VA = 0xC0000000
       __pv_offset = PA - VA = 0xC0000000 (2's complement)

    2) PA = 0x2 80000000; VA = 0xC000000
       __pv_offset = PA - VA = 0x1 C0000000

So adding __pv_offset + VA should never result in a true overflow for (1).
So in order to differentiate between a true carry, a __pv_offset is extended
to 64bit and the upper 32bits will have 0xffffffff if __pv_offset is
2's complement. So 'mvn #0' is inserted instead of 'mov' while patching
for the same reason. Since mov, add, sub instruction are to patched
with different constants inside the same stub, the rotation field
of the opcode is using to differentiate between them.

So the above examples for v2p translation becomes for VA=0xC0000000,
    1) PA[63:32] = 0xffffffff
       PA[31:0] = VA + 0xC0000000 --> results in a carry
       PA[63:32] = PA[63:32] + carry

       PA[63:0] = 0x0 80000000

    2) PA[63:32] = 0x1
       PA[31:0] = VA + 0xC0000000 --> results in a carry
       PA[63:32] = PA[63:32] + carry

       PA[63:0] = 0x2 80000000

The above ideas were suggested by Nicolas Pitre <nico@linaro.org> as
part of the review of first and second versions of the subject patch.

There is no corresponding change on the phys_to_virt() side, because
computations on the upper 32-bits would be discarded anyway.

Cc: Russell King <linux@arm.linux.org.uk>

Reviewed-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Sricharan R <r.sricharan@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2013-10-10 20:25:06 -04:00