Upstream Commits

max8997_vibrator: remove hardcoded pwm_duty

the px boards have larger duty values, so with the hardcoded u1
values vibration is weak

patch set 2: replace pwm_duty_* macros with global variables

Change-Id: I8914095d329e2fddbe1ef4e1439b43a4b7dfc8cd

cpufreq: Move voltage control to 4210 file

This is CPU-specific, doesn't belong in general 4210 stuff

Change-Id: I5b92bfb23ca70f8b9aa54b8ddd2b1f47047e449f
Signed-off-by: Andrew Dodd <atd7@cornell.edu>

cpufreq: Reset MAX8997 predefineds when needed

The MAX8997 stores up to 8 predefined voltage levels that can
be set rapidly using GPIOs.  If there are no predefineds,
"BUCK1 no predefined" errors are given.  This will happen
if the voltage table has been altered.  This resets the redefines
each time the table is altered.

Change-Id: I3ae17295cdf29d2577e0a26d932747e4120b0715
Signed-off-by: Andrew Dodd <atd7@cornell.edu>

mm: Increase VM_MAX_READAHEAD

Change-Id: I127319fe84bbeb78a97bdb10ac43586b37eb18fa

Add SIO I/O scheduler

Change-Id: I3c4edf24c3747b488b8b6e457668a4b01edb727d

wakelock: use single threaded workqueueus

Avoid the concurrency management that could delay execution if there's
lots of workqueue traffic (and allow the runqueue to run on any CPU).

Lots of workqueue traffic can be generated by setting
ondemand/sampling_rate to 10000.

Change-Id: I55b8a223f4a389b93d49eef0d809eb1efe1790ba

Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>

mali: Clean up arch

The arch directory is supposed to be a symlink to the proper
architecture directory.  Add orion-m400 and symlink to it.

(orion-m400 and pegasus-m400 seem to have the same config.h
but keep em' separate anyway.)

Change-Id: I70045baad8bb1538269ea2afc2e017b349598a34

mali: Fix bad file formatting.

Somehow this file wound up becoming Mac-formatted...

Change-Id: I89dcc22e4c88d71ef78b6a7e2d20280674632b37

mali: Update platform code.

Pull it from pegasus, remove the obvious Pegasus-specific crap,
and also enable Mali 3-step.

Not yet user-controllable.  That's for a later patch when
our GPU isn't gulping down juice.

Change-Id: Iaa8a026a944dbbf76aa3524639f983a1426d04fc
Signed-off-by: Andrew Dodd <atd7@cornell.edu>

stand-hotplug:  Add enhanced tunables

Now has separate hotplugging rates for screen off/on.

Defaults to disallowing any additional cores when screen is
off.

Also allows hotplugging to be disabled until CPU frequency goes
over a certain thresholed - default 800 MHz.

WARNING:  Do not apply this to any kernel that will build for
devices with more than 2 cores.  Since the smdk4210 tree
only builds for dual-core devices this is fine, but
don't apply it to smdk4412 unless you want pain.

Change-Id: I4fba84ab351476f1f97732bc5a4cf3f180263f57
Signed-off-by: Andrew Dodd <atd7@cornell.edu>

mali: Fix for getting the subversion revision

Prevents compiler errors due to unescaped strings, ie:

    arm-eabi-gcc: error: directory: No such file or directory
    arm-eabi-gcc: error: directory": No such file or directory

Forward port from 3d59d993.

Change-Id: Ib4cdd0ae6f7bcc2641d1264197b15a58d1240a52

ump: Fix for getting the subversion revision

Prevents compiler errors due to unescaped strings, ie:

     arm-eabi-gcc: error: directory: No such file or directory
     arm-eabi-gcc: error: directory": No such file or directory

Forward port from fcaa34e2.

Change-Id: I06b03801801f43fbe87d544ea5e5720f660a56af

ARM: SMP: use a timing out completion for cpu hotplug

    ARM: SMP: use a timing out completion for cpu hotplug

    Rather than open-coding the jiffy-based wait, and polling for the
    secondary CPU to come online, use a completion instead.  This
    removes the need to poll, instead we will be notified when the
    secondary CPU has initialized.

    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

Change-Id: I1be0fac91470ebc402bb0bdbed3011836565c490