video: sunxi: disp: fix screen wakeup when using earlysuspend

Commit 1ede6cfd2b ("sunxi-disp: Unify early and normal suspend paths")
causes BSP_disp_*_[close|open] to be called twice when earlysuspend is
in use. This commit skips those calls on the normal suspend path used
when earlysuspend is enabled.

Signed-off-by: Emilio López <turl@linux-sunxi.org>
mmc: Change behavior when fex have not valid sdio section

Fix oops when I tryed load bcm4330.ko wich not present in my hw
configuration:

    [  428.020000] [mmc_pm]: No sdio card, please check your config !!
    [  428.020000] Config Error: not for huawei mw269x sdio wifi module
    [  428.020000] [mmc_pm]: No sdio card, please check your config !!
    [  428.030000] kernel BUG at drivers/mmc/sunxi-host/host_op.c:585!
    [  428.050000] Unable to handle kernel NULL pointer dereference at virtual address 00000000
    [  428.060000] pgd = d7a4c000
    [  428.070000] [00000000] *pgd=52d15831, *pte=00000000, *ppte=00000000
    [  428.080000] Internal error: Oops: 817 [#1] PREEMPT
    [  428.080000] Modules linked in: bcm4330(+) mali ump
    [  428.080000] CPU: 0    Not tainted  (3.0.62+ #2)
    [  428.080000] PC is at __bug+0x24/0x30
    [  428.080000] LR is at __schedule+0x2f4/0x58c
    [  428.080000] pc : [<c00393ec>]    lr : [<c04f5bd4>]    psr: 400f0013
    [  428.080000] sp : d2d03e48  ip : d2d03cd8  fp : d2d03e54
    [  428.080000] r10: bf06a000  r9 : c0089864  r8 : bf05b074
    [  428.080000] r7 : d2d02000  r6 : c0739b80  r5 : bf05b150  r4 : 00000002
    [  428.080000] r3 : 00000000  r2 : d2d02000  r1 : 00000002  r0 : 00000049
mmc: Change error behavior on invalid function parameters

sdxc_prepare_pio handle invalid parameners in unusual way - it crash
even when only one caller have error handling.
ft5x_ts:Implement power port hardware feature

On some devices like (DNS Airpad M82) ts controller's power controled via
MOSFET for powersaving. This patch enable power control with GPIO
pin ctp_power_port in ctp_para, make touchscreen work on simular hardware
configurations.
led-triggers: create a trigger for CPU activity

Attempting to consolidate the ARM LED code, this removes the
custom RealView LED trigger code to turn LEDs on and off in
response to CPU activity and replace it with a standard trigger.

(bryan.wu@canonical.com:
It introduces several syscore stubs into this trigger.
It also provides ledtrig_cpu trigger event stub in <linux/leds.h>.
Although it was inspired by ARM work, it can be used in other arch.)

Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Bryan Wu <bryan.wu@canonical.com>
Reviewed-by: Jamie Iles <jamie@jamieiles.com>
Tested-by: Jochen Friedrich <jochen@scram.de>
ledtrig-cpu: kill useless mutex to fix sleep in atomic context

Seeing the following every time the CPU enters or leaves idle on a
Beagleboard:

BUG: sleeping function called from invalid context at kernel/mutex.c:269
in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper/0
no locks held by swapper/0/0.
[<c001659c>] (unwind_backtrace+0x0/0xf8) from [<c05aaa7c>] (mutex_lock_nested+0x24/0x380)
[<c05aaa7c>] (mutex_lock_nested+0x24/0x380) from [<c043bd1c>] (ledtrig_cpu+0x38/0x88)
[<c043bd1c>] (ledtrig_cpu+0x38/0x88) from [<c000f4b0>] (cpu_idle+0xf4/0x120)
[<c000f4b0>] (cpu_idle+0xf4/0x120) from [<c07e47c8>] (start_kernel+0x2bc/0x30c)

Miles Lane has reported seeing similar splats during system suspend.

The mutex in struct led_trigger_cpu appears to have no function: it
resides in a per-cpu data structure which never changes after the
trigger is registered.  So just remove it.

Reported-by: Miles Lane <miles.lane@gmail.com>
Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Bryan Wu <roc@roc-samos.(none)>
Integrate ledtrig-cpu.

Backport of fa8bbb13 from Linus master.

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Get disk size from block device in nand partition driver.

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Use in-kernel crc32 function for nand partition check.

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Remove private header reference from nand mbr.h

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Remove private data reference from nand mbr.h

Remove same declaration from nand_blk.c

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Remove duplicates of nand mbr.h

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Move nanda-nando compat naming to partition-generic.c

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi-nand: Remove nand partition handling cruft.

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
sunxi:pm: Fix suspend to RAM

This patch fixes crash in try to suspend to RAM for sun4i and sun5i
machines
Suspend framebuffer on sustem suspend.

Signed-off-by: Michal Suchanek <hramrach@gmail.com>
video:sunxi:disp:Sparse fixes and remove dead code

One possibly fatal warning in disp_lcd.c (mixing enum types)

Signed-off-by: Jari Helaakoski <tekkuli@gmail.com>
video:sunxi:disp:Remove unused b_reg_change variable

Signed-off-by: Jari Helaakoski <tekkuli@gmail.com>
video:sunxi:Remove unused defines

Signed-off-by: Jari Helaakoski <tekkuli@gmail.com>
video:sunxi:Use read(b/w/l) and write(b/w/l) part1

Signed-off-by: Jari Helaakoski <tekkuli@gmail.com>