s3cfb: tl2796: do not read calibration data on aries

The original driver on aries kernel did not read this data and
some devices do not come properly calibrated. Solves the
"blue screen" issue experienced by some users.

Change-Id: I13f60ff0e4079dad9dc37cf43894d792fc137235
Revert "s3cfb: tl2796: do not read calibration data on aries"

Causes yellowish screen for some users.

This reverts commit 0ed294753497de0b2d5b69c9975d8f174e9464d6.

Change-Id: Ief57842517e4cdf9ed5c2f33b2c0304b0866fec2
s3cfb: tl2796: detect invalid factory calibration data

When an invalid factory calibration data is detected, use some sane
defaults.

Change-Id: I0095e1a4f530e61bb4f53a3aeed3fb4c01ea4e22
ARM: 7527/1: uaccess: explicitly check __user pointer when !CPU_USE_DOMAINS

commit 8404663f81d212918ff85f493649a7991209fa04 upstream.

The {get,put}_user macros don't perform range checking on the provided
__user address when !CPU_HAS_DOMAINS.

This patch reworks the out-of-line assembly accessors to check the user
address against a specified limit, returning -EFAULT if is is out of
range.

[will: changed get_user register allocation to match put_user]
[rmk: fixed building on older ARM architectures]

Change-Id: I3e3ddeaa51e47798bcf27181afd3785ccc015317
Reported-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>