leds-an30259a: LED fading/blinking support

credits to Yank555

modified by Andip71 to initialize led_slope for fading

- adjustable brightness
- added stock CM behaviour
- added stock Samsung behaviour

SysFS interface:

 * /sys/class/sec/led/led_fade (rw)
 *
 *   0 : blink (Samsung style)
 *   1 : fade (CyanogenMod style)
 *
 * /sys/class/sec/led/led_intensity (rw)
 *
 *        0 : stock CM behaviour
 *    1- 39 : darker than Samsung stock
 *       40 : stock Samsung behaviour
 *   41-255 : brighter than Samsung stock
 *
 *    NB: Low power mode respected, applied brightness is divided by 0x8, except in CM mode, where it's never applied
 *
 * /sys/class/sec/led/led_speed (rw)
 *
 *   1 : normal rate
 *   2 : 2x faster
 *   3 : 3x faster
 *   4 : 4x faster
 *   5 : 5x faster
 *
 * /sys/class/sec/led/led_slope (rw)
 *
 *   takes 4 parameters, each between 0 and 5 (steps of 4ms) for :
 *
 *      slope up operation 1
 *      slope up operation 2
 *      slope down operation 1
 *      slope down operation 2
dyn_sync_cntrl: dynamic sync control 1.1

The dynamic sync control interface uses Android kernel's unique early
suspend / late resume interface.

While screen is on, file sync is disabled
when screen is off, a file sync is called to flush all outstanding writes
and restore file sync operation as normal.
 display: capability for CPU frequency based LCD freq scaling - credit…

…s to AndreiLux

Signed-off-by: ZaneZam <cyxman@yahoo.com>