ARM: at91/DT: at91sam9x5ek: fix USB host property to enable port C

Device Tree "num-ports" property of USB host node has to be
set to maximum number of ports available.
The possibility to activate a particular port is done by specifying the proper
gpio configuration for its vbus.

This patch fixes the USB host node by configuring the 3 ports available on the
product and letting "port A" available for USB gadget usage.

Reported-by: Rodolfo Giometti <giometti@enneenne.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Bo Shen <voice.shen@atmel.com>
drivers/platform: vexpress: add Serial Power Controller (SPC) support

The TC2 versatile express core tile integrates a logic block that provides
the interface between the dual cluster test-chip and the M3 microcontroller
that carries out power management. The logic block, called Serial Power
Controller (SPC), contains several memory mapped registers to control among
other things low-power states, wake-up irqs and per-CPU jump addresses
registers.

This patch provides a driver that enables run-time control of features
implemented by the SPC power management control logic with an API to
be used by different subsystem drivers on top.

The SPC control logic is required to be programmed very early in the boot
process to reset secondary CPUs on the TC2 testchip, set-up jump addresses
and wake-up IRQs for power management. Hence, waiting for core changes to
be made in the device core code to enable early registration of platform
devices, the driver puts in place an early init scheme that allows kernel
drivers to initialize the SPC driver directly from the components requiring
it, if their initialization routine is called before this driver init
function during the boot process.

Device tree bindings documentation for the SPC component is also provided.

Cc: Olof Johansson <olof@lixom.net>
Cc: Amit Kucheria <amit.kucheria@linaro.org>
Cc: Jon Medhurst <tixy@linaro.org>
Signed-off-by: Achin Gupta <achin.gupta@arm.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Sudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com>
Acked-by: Pawel Moll <pawel.moll@arm.com>
[ np: moved from drivers/mfd/ to drivers/platform/vexpress/ ]
Signed-off-by: Nicolas Pitre <nico@linaro.org>
ARM: vexpress/TC2: basic PM support

This is the MCPM backend for the Virtual Express A15x2 A7x3 CoreTile
aka TC2.  This provides cluster management for SMP secondary boot and
CPU hotplug.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Pawel Moll <pawel.moll@arm.com>
Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
ARM: vexpress/TC2: implement PM suspend method

Similar to power_down(), except that for a suspend, the firmware
mailbox address has to be set prior entering low power mode.

The residency argument is not used yet, so the last man always shuts
down the cluster for now.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Pawel Moll <pawel.moll@arm.com>
arm-soc: add back contents file

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge branch 'fixes' into for-next

* fixes: (23 commits)
  ARM: highbank: Only touch common coherency control register fields
  ARM: footbridge: fix overlapping PCI mappings
  dmaengine: shdma: fix a build failure on platforms with no DMA support
  ARM: STi: Set correct ARM ERRATAs.
  ARM: dts: STi: Fix pinconf setup for STiH416 serial2
  ARM: nomadik: configure for NO_HZ and HRTIMERS
  ARM: nomadik: update defconfig base
  ARM: nomadik: Update MMC defconfigs
  ARM: davinci: defconfig: enable EDMA driver
  ARM: davinci: make file local variables static
  ARM: edma: remove duplicated include from edma.c
  ARM: OMAP2+: Provide alias to USB PHY clock
  ARM: dts: imx51-babbage: Pass a real clock to the codec
  ARM: dts: Add missing vmmc2 regulator for twl
  ARM: multi_v7: Enabled omap4430 sdp nfsroot
  ARM i.MX53: mba53: Fix PWM backlight DT node
  ARM: imx: fix vf610 enet module clock selection
  ARM: mxs: saif0 is the clock provider to sgtl5000
  ARM: i.MX6Q: correct emi_sel clock muxing
  ARM i.MX6Q: Fix IOMUXC GPR1 defines for ENET_CLK_SEL and IPU1/2_MUX
  ...
Merge branch 'fixes' into for-next

* fixes:
  ARM: zynq: fix compilation warning
  ARM: keystone: fix compilation warning
Merge branch 'fixes' into for-next

* fixes:
  ARM: pxa: propagate errors from regulator_enable() to pxamci
Merge branch 'fixes' into for-next

* fixes:
  ARM: multi_v7_defconfig: Select USB chipidea driver
Merge branch 'next/cleanup' into for-next

* next/cleanup:
  ARM: smp: Remove local timer API
  clocksource: time-armada-370-xp: Divorce from local timer API
  clocksource: time-armada-370-xp: Fix sparse warning
  ARM: msm: Divorce msm_timer from local timer API
  ARM: PRIMA2: Divorce timer-marco from local timer API
  ARM: EXYNOS4: Divorce mct from local timer API
  ARM: OMAP2+: Divorce from local timer API
  ARM: smp_twd: Divorce smp_twd from local timer API
  ARM: smp: Remove duplicate dummy timer implementation

Signed-off-by: Olof Johansson <olof@lixom.net>
ARM: EXYNOS: Skip C1 cpuidle state for exynos5440

This patch skips the deep C1(AFTR -Arm off top running) state
for exynos5440 soc as this soc does not support this state.
All the cpu's only allows the basic C0 state.

Signed-off-by: Amit Daniel Kachhap <amit.daniel@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Merge branch 'fixes' into for-next

* fixes:
  ARM: omap5: Only select errata 798181 if SMP
  ARM: EXYNOS: Update CONFIG_ARCH_NR_GPIO for Exynos
  ARM: EXYNOS: Fix low level debug support
  ARM: SAMSUNG: Save/restore only selected uart's registers
  ARM: SAMSUNG: Add SAMSUNG_PM config option to select pm
  ARM: S3C24XX: Add missing clkdev entries for s3c2440 UART
  ARM: EXYNOS: Enable 64-bit DMA for EXYNOS5440 if LPAE is enabled
  ARM: EXYNOS: change the PHYSMEM_BITS and SECTION_SIZE
  ARM: EXYNOS: skip pm support on exynos5440
Merge branch 'fixes' into for-next

* fixes:
  mfd: max8925: fix dt code for backlight
Merge branch 'next/cleanup' into for-next

* next/cleanup:
  ARM: imx: fix mismerge of localtimer code
  ARM: OMAP2+: Fix fallout from localtimer divorce and SMP=n

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge branch 'next/cleanup' into for-next

* next/cleanup: (22 commits)
  ARM: shmobile: Remove unused mach/dma.h
  ARM: shmobile: r8a7778: remove r8a7778_init_irq()
  ARM: shmobile: Fix EMEV2 clock comment typo
  ARM: shmobile: Make EMEV2 platform devices more compact
  ARM: shmobile: Remove unused EMEV2/KZM9D early console
  ARM: shmobile: Remove redundant r8a7790 callback
  ARM: shmobile: Remove unused sh73a0 auxdata table
  ARM: shmobile: Remove unused sh7372 auxdata table
  ARM: shmobile: Remove unused r8a7779 auxdata table
  ARM: shmobile: Remove unused r8a7778 auxdata and callback
  ARM: shmobile: Remove unused r8a7740 auxdata table
  ARM: shmobile: Remove unused EMEV2 auxdata and callback
  ARM: shmobile: kzm9g: Remove init_irq declaration in machine description
  ARM: shmobile: sh73a0: Remove init_irq declaration in machine description
  ARM: shmobile: lager: Remove init_irq declaration in machine description
  ARM: shmobile: r8a7790: Remove init_irq declaration in machine description
  ARM: shmobile: ape6evm: Remove init_irq declaration in machine description
  ARM: shmobile: r8a73a4: Remove init_irq declaration in machine description
  ARM: shmobile: emev2: Remove init_irq declaration in machine description
  ARM: shmobile: sh73a0 pinmux platform device cleanup
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge branch 'next/boards' into for-next

* next/boards:
  ARM: mach-shmobile: ag5evm: Use bd6107 backlight driver
  sh: kfr2r09: Use lv5207lp backlight
  sh: ecovec24: Use gpio-backlight
  ARM: mach-shmobile: mackerel: Use gpio-backlight
  backlight: Add ROHM BD6107 backlight driver
  backlight: Add Sanyo LV5207LP backlight driver
  backlight: Add GPIO-based backlight driver

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge branch 'next/dt' into for-next

* next/dt:
  ARM: shmobile: Add SMSC ethernet chip to KZM9D DT reference
  ARM: shmobile: KZM9D DT reference implementation
  ARM: shmobile: r8a7790: add MMCIF and SDHI DT templates
  ARM: shmobile: r8a73a4: add MMCIF and SDHI DT templates
  ARM: shmobile: EMEV2 map_io update
  ARM: shmobile: Use DT for SMP on EMEV2 and KZM9D
  ARM: shmobile: Use DT for GIC on EMEV2 and KZM9D
  ARM: shmobile: Add GIO to EMEV2 dtsi
  ARM: shmobile: Update KZM9D dts command line
  ARM: shmobile: ape6evm: add CPUFreq support
  ARM: shmobile: r8a73a4: add I2C controller DT nodes

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge branch 'next/fixes-non-critical' into for-next

* next/fixes-non-critical:
  ARM: shmobile: r8a7740: Fix TPU clock name
  ARM: shmobile: Insert align directives before 4 bytes data
  ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs
  ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=y
  ARM: shmobile: Update romImage to relocate appended DTB

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge branch 'next/fixes-non-critical' into for-next

* next/fixes-non-critical:
  ARM: dove: fix missing __init section of dove_mpp_gpio_mode

Signed-off-by: Olof Johansson <olof@lixom.net>
Merge tag 'msm-3.11-fix1' of git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm into fixes

From David Brown:
Fixes for MSM for 3.11

Two small fixes for MSM.

The first fixes the a gpio controller register address.  I didn't see
any acks from the devicetree maintainers, so I've copied them on this
pull request.  The change itself is minor, and just to the register
address.

The second change removes the gpiomux V1 code from MSM.  This was
breaking compilation for some of the targets.

* tag 'msm-3.11-fix1' of git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm:
  ARM: msm: Consolidate gpiomux for older architectures
  ARM: msm: dts: Fix the gpio register address for msm8960

Signed-off-by: Olof Johansson <olof@lixom.net>