Support for faux123 gamma control
LG Mako gamma control - add mirror interface while leaving
faux's interface in place, respecting his rollover char checksum.

Mirror interface should be a little easier for humans to work
with from scripting (int checksum that doesn't roll over).

Added a couple validation checks to both interfaces before allowing
values to be stored. This will add some safety for scripting or rouge
apps that may have a bug.
-Only allow gamma amp 0 and 1 values up to 31.
-Since we are pushing to a char data type, make sure nothing is over
255.

Changed dsi_cmd_desc struct name so it can be shared between
both interfaces.

Added to sysfs:
/sys/devices/platform/mipi_lgit.1537/kgamma_red
/sys/devices/platform/mipi_lgit.1537/kgamma_green
/sys/devices/platform/mipi_lgit.1537/kgamma_blue

Example:
echo "383 114 21 118 0 0 0 80 48 2" >
/sys/devices/platform/mipi_lgit.1537/kgamma_red

echo "383 114 21 118 0 0 0 80 48 2" >
/sys/devices/platform/mipi_lgit.1537/kgamma_green

echo "383 114 21 118 0 0 0 80 48 2" >
/sys/devices/platform/mipi_lgit.1537/kgamma_blue

First digit is a checksum (sum of all the other 9 numbers)
Gamma Amp 0 = value 6
Gamma Amp 1 = value 7

Show the current settings with proper checksum:
cat /sys/devices/platform/mipi_lgit.1537/kgamma_red
cat /sys/devices/platform/mipi_lgit.1537/kgamma_green
cat /sys/devices/platform/mipi_lgit.1537/kgamma_blue
Gamma Control - added refresh_screen sysfs attribute that has nothing to
do with setting values. This should only be called by apps or scripts
while adjusting colors "live" with the motley or faux interface and not
implemented on startup via init.d or apps since it will compete with the
normal power on process.

echo 1 > /sys/devices/platform/mipi_lgit.1537/refresh_screen
Conflicts:
	scripts/gcc-wrapper.py
gcc-wrapper.py: Fix derp
lib/int_sqrt.c: optimize square root algorithm

Optimize the current version of the shift-and-subtract (hardware)
algorithm, described by John von Newmann[1] and Guy L Steele.

Iterating 1,000,000 times, perf shows for the current version:

 Performance counter stats for './sqrt-curr' (10 runs):

         27.170996 task-clock                #    0.979 CPUs utilized            ( +-  3.19% )
                 3 context-switches          #    0.103 K/sec                    ( +-  4.76% )
                 0 cpu-migrations            #    0.004 K/sec                    ( +-100.00% )
               104 page-faults               #    0.004 M/sec                    ( +-  0.16% )
        64,921,199 cycles                    #    2.389 GHz                      ( +-  0.03% )
        28,967,789 stalled-cycles-frontend   #   44.62% frontend cycles idle     ( +-  0.18% )
   <not supported> stalled-cycles-backend
       104,502,623 instructions              #    1.61  insns per cycle
                                             #    0.28  stalled cycles per insn  ( +-  0.00% )
        34,088,368 branches                  # 1254.587 M/sec                    ( +-  0.00% )
             4,901 branch-misses             #    0.01% of all branches          ( +-  1.32% )

       0.027763015 seconds time elapsed                                          ( +-  3.22% )

And for the new version:

Performance counter stats for './sqrt-new' (10 runs):

          0.496869 task-clock                #    0.519 CPUs utilized            ( +-  2.38% )
                 0 context-switches          #    0.000 K/sec
                 0 cpu-migrations            #    0.403 K/sec                    ( +-100.00% )
               104 page-faults               #    0.209 M/sec                    ( +-  0.15% )
           590,760 cycles                    #    1.189 GHz                      ( +-  2.35% )
           395,053 stalled-cycles-frontend   #   66.87% frontend cycles idle     ( +-  3.67% )
   <not supported> stalled-cycles-backend
           398,963 instructions              #    0.68  insns per cycle
                                             #    0.99  stalled cycles per insn  ( +-  0.39% )
            70,228 branches                  #  141.341 M/sec                    ( +-  0.36% )
             3,364 branch-misses             #    4.79% of all branches          ( +-  5.45% )

       0.000957440 seconds time elapsed                                          ( +-  2.42% )

Furthermore, this saves space in instruction text:

   text    data     bss     dec     hex filename
    111       0       0     111      6f lib/int_sqrt-baseline.o
     89       0       0      89      59 lib/int_sqrt.o

[1] http://en.wikipedia.org/wiki/First_Draft_of_a_Report_on_the_EDVAC

Signed-off-by: Davidlohr Bueso <davidlohr.bueso@hp.com>
Reviewed-by: Jonathan Gonzalez <jgonzlez@linets.cl>
Tested-by: Jonathan Gonzalez <jgonzlez@linets.cl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
int_sqrt.c: Correction square root algo with naming
int_sqrt: Improve 3x faster integer sqrt.

Result on 10,000,000 call.
Old:
sqrt(12345689) = 3513
real	0m0.768s
user	0m0.760s
sys	0m0.004s

New:
sqrt(12345689) = 3513
real	0m0.222s
user	0m0.224s
sys	0m0.000s
kgsl: Let the GPU idling on 128mhz (thx franciscofranco)
Merge branch 'JWR-msm-hotplug'
msm: hotplug: Fix typo to satisfy compiler
msm: hotplug: Add options for number of min/max/boost cpus (thx myfluxi)
makefile: enable -pipe, disable WAIT_SCAN (thx anarkia1976)
Fix warning in display file

Using GCC 4.7.0, the following warning occurred: warning: initialization from incompatible pointer type

Let's stick the the regular implementation for the store function.