linaro-base.conf: enable GPIO_SYSFS

It's required by powerdebug.

Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
ARM: kprobes: Prevent known test failures stopping other tests running

Due to a long-standing issue with Thumb symbol lookup [1] the jprobes
tests fail when built into a kernel compiled as Thumb mode. (They work
fine for ARM mode kernels or for Thumb when built as a loadable module.)

Rather than have this problem terminate testing prematurely lets instead
emit an error message and carry on with the main kprobes tests, delaying
the final failure report until the end.

[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2011-August/063026.html

Signed-off-by: Jon Medhurst <tixy@linaro.org>
ARM: kprobes: Disallow instructions with PC and register specified shift

ARM data processing instructions which have a register specified shift
are defined as UNPREDICTABLE if PC is used for any register, not just
the shift value as the code was previous assuming. This issue manifests
on A15 devices as either test case failures or undefined instructions
aborts.

Reported-by: David Long <dave.long@linaro.org>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
ARM: kprobes: Fix test code compilation errors for ARMv4 targets

Conditionally compile kprobes test cases for ARMv5 instructions to avoid
compilation errors with ARMv4 targets like:

/tmp/cc7Tx8ST.s:16740: Error: selected processor does not support ARM mode `clz r0,r0'

Signed-off-by: Jon Medhurst <tixy@linaro.org>
ARM: uprobes need icache flush after xol write

After instruction write into xol area, on ARM V7
architecture code need to flush dcache and icache to sync
them up for given set of addresses. Having just
'flush_dcache_page(page)' call is not enough - it is
possible to have stale instruction sitting in icache
for given xol area slot address.

Introduce arch_uprobe_ixol_copy weak function
that by default calls uprobes copy_to_page function and
than flush_dcache_page function and on ARM define new one
that handles xol slot copy in ARM specific way

flush_uprobe_xol_access function shares/reuses implementation
with/of flush_ptrace_access function and takes care of writing
instruction to user land address space on given variety of
different cache types on ARM CPUs. Because
flush_uprobe_xol_access does not have vma around
flush_ptrace_access was split into two parts. First that
retrieves set of condition from vma and common that receives
those conditions as flags.

Note ARM cache flush function need kernel address
through which instruction write happened, so instead
of using uprobes copy_to_page function changed
code to explicitly map page and do memcpy.

Note arch_uprobe_copy_ixol function, in similar way as
copy_to_user_page function, has preempt_disable/preempt_enable.

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
vexpress64.conf: disable CONFIG_CPU_IDLE to workaround boot failure

There's a known issue with ARM trusted firmware:
CPU idle does not work on the advertised version of the Foundation FVP.
Some FVP fixes are required that are not available externally at the time
of writing.

Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
vexpress64.conf: enable CONFIG_PREEMPT to workaround boot failure

The workaround to disable CONFIG_CPU_IDLE doesn't work for all the models.
Let's use the other one.

Signed-off-by: Andrey Konovalov <andrey.konovalov@linaro.org>
firmware: Add EDID firmware blob for 1080p display

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
kbuild: Add support to extract information about current git commit HEAD

Many cases it is difficult to get to the exact commit at which the
current kernel is compiled.

Adding an additional print statement to explicitly tell the current
HEAD.

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
ARM: EXYNOS: Fix UART hang during suspend/resume

While resuming from suspend, the system hangs due to some spurious
uart interrupts. This patch temporarily masks uart interrupts during
reset_port to solve this problem.

Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
ARM: dts: Add pmu nodes for Exynos5420

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
ARM: dts: Remove mau_pd node for Exynos5420

MAU powerdomain provides clocks for Audio sub-system block. This block
comprises of the I2S audio controller, audio DMA blocks and Audio
sub-system clock registers.

Right now, there is no way to hook up power-domains with clock providers.
During late boot when this power-domain gets disabled, we get following
external abort.

Unhandled fault: imprecise external abort (0x1406) at 0x00000000
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000007

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
i2c: exynos5: Initialise Samsung High Speed I2C controller early

This patch moves initialization code to subsys_initcall() to ensure
that the i2c bus is available early so the regulators can be quickly
probed and available for other devices on their probe() call.

Such solution has been proposed by Mark Brown to fix the problem of
the regulators not beeing available on the peripheral device probe():
http://lists.infradead.org/pipermail/linux-arm-kernel/2010-March/011971.html

http://article.gmane.org/gmane.linux.drivers.i2c/18463

Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
ARM: dts: Add peach-pit board support

Adds the google peach-pit board dts file which uses
exynos5420 SoC.

http://article.gmane.org/gmane.linux.kernel.samsung-soc/29954

Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Signed-off-by: Doug Anderson <dianders@chromium.org>
ARM: exynos_defconfig: Enable USB3503 for network support on Arndale

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
asix: Add support to read MAC address from cmdline

Inherited from arch/mips/rb532/devices.c

Example: bootargs="mac=00:40:5c:26:0a:5b"

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
asix: Modify MAC address for subsequent devices

In case there are multiple USB-Ethernet devices (through USB-Ethernet
dongles), then all of them used to get the same MAC address passed
from bootloader.

Reported-by: Fathi Boudra <fathi.boudra@linaro.org>
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
ASoC: Samsung: Fix build error if LPAE is enabled

Without this, we get following error.
sound/built-in.o: In function `dma_enqueue':
sound/soc/samsung/dma.c:79: undefined reference to `__aeabi_uldivmod'
sound/built-in.o: In function `iis_irq':
sound/soc/samsung/idma.c:285: undefined reference to `__aeabi_uldivmod'

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
ASoC: codec: i2s_stub: Add a dummy I2S based codec driver

HDMI (in Samsung EXYNOS based SoCs) can be configured to source audio
data from I2S bus. For boards on which there are no external audio chips,
we still need to create a I2S-based soundcard with a dummy codec driver
to enable I2S subsystem to pump data to the I2S bus, which can be used
by HDMI module.

This patch adds a I2S stub audio codec driver which can be used to create
a I2S soundcard when external chip is not there.

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
ASoC: SAMSUNG: Add I2S soundcard using stub codec

HDMI can be configured to source audio data from I2S bus. For boards
on which there are no external audio chips, we still need to create
a I2S-based soundcard with a dummy codec driver to enable I2S subsystem
to pump data to the I2S bus, which can be used by HDMI module.

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>