HACK: sunxi: video: change kernel framebuffer mapping to writecombine

The kernelspace mapping of framebuffer (needed for fbcon) had CPU
caching enabled by some mistake. This caused glitches and artifacts
in the framebuffer console, which can be easily reproduced as reported
on IRC:

  <buZz> supereasy to reproduce;
         1) type a multiword command on (fbdev) console
         2) ctrl-left a word
         3) delete its first character
         4) tada, sticky pixels

The solution is to change the kernel framebuffer memory mapping to
writecombine, just like it is done for the userspace mapping.

This patch is definitely *not* a clean solution. It is cutting some
corners by doing exactly what was NAK'ed by the ARM kernel maintainers:
  http://lists.infradead.org/pipermail/linux-arm-kernel/2011-April/048844.html
  http://lists.infradead.org/pipermail/linux-arm-kernel/2011-June/052233.html

The ioremap restriction (intended to prevent creating aliased mappings
with different memory attributes) has been introduced with 309caa9cc6ff39d2,
later relaxed in 06c10884486a63a1, and finally re-introduced again
in 67cfa23ac9df810d.

Even though this patch is not perfect, it can be used as a stopgap solution.

= changes in v2 revision:
    Fix for the problems with disp module loading/unloading in dual-monitor
    configuration. Added debugging messages and fallback code for the case
    if ioremap_wc() fails.

Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
arm:mach-sun4i:clock: Fix for "[ccmu] try to set apb1 parent to sata_pll failed!" warning print. U-boot also uses OSC24M for apb1.
tty:serial:8250_sunxi: Fix module unload
sunxi-serial: Fix bad pointer access in sw_serial_pm

The sunxi-serial code assumes that the struct uart_port *port parameter
passed to the pm callback it the address of the struct it used to register.

But this is completely wrong! The argument passed to serial8250_register_port
is only a template, it is copied not used directly. Instead store the
correct address in port->private_data and use that.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
sunxi-serial: No need to keep the port struct in memory

Since it is only a template we don't need to keep it around.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
sunxi-serial: Get rid of sw_serial global array

There is no need for global state here, instead store the line-number we
got from registering together with our other info in the sw_serial_port
struct.

While at it, also add proper error checking for the serial8250_register_port
call.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
sunxi-serial: Get rid of useless sw_serial_get_config

All info gathered there is never uses, so while we're cleaning up the
sunxi-serial code lets nuke this.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
input:touchscreen:ft5x_ts: Make device visible under /sys/class/input/input*
arch:arm:configs add ext4 fs capabilities

add ext4 fs capabilities to defconfigs.

this allows fedora 17 packages to be updated as rpm uses capabilities
in preference to setuid.

Signed-off-by: Robin Humble <robin.humble+sunxi@anu.edu.au>
sunxi: disp_ump: Introduce a new ioctl for UMP wrapping the whole framebuffer

There are two ioctls (GET_UMP_SECURE_ID_BUF1 and GET_UMP_SECURE_ID_BUF2)
available for similar purpose already. And they are used by xf86-video-mali
X11 DDX driver.

In order not to clash with them, we just can add a new ioctl. This ioctl is
needed for the new, soon to be announced xf86-video-sunxifb X11 DDX driver.

Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>