drivers: char: add frandom
Frandom is a Linux kernel random number generator, which is 10-50 times faster than what you get from Linux' built-in /dev/urandom.And it uses very little (/dev/frandom) or none (/dev/erandom) of the kernel's entropy pool, so it is very useful for applications that require a handy source for lots of random data.

http://www.billauer.co.il/frandom.html

Signed-off-by: Pafcholini <pafcholini@gmail.com>
power: process: drecrease time to enter sleep
Proportional Rate Reduction for TCP.

This patch implements Proportional Rate Reduction (PRR) for TCP.
PRR is an algorithm that determines TCP's sending rate in fast
recovery. PRR avoids excessive window reductions and aims for
the actual congestion window size at the end of recovery to be as
close as possible to the window determined by the congestion control
algorithm. PRR also improves accuracy of the amount of data sent
during loss recovery.

The patch implements the recommended flavor of PRR called PRR-SSRB
(Proportional rate reduction with slow start reduction bound) and
replaces the existing rate halving algorithm. PRR improves upon the
existing Linux fast recovery under a number of conditions including:
  1) burst losses where the losses implicitly reduce the amount of
outstanding data (pipe) below the ssthresh value selected by the
congestion control algorithm and,
  2) losses near the end of short flows where application runs out of
data to send.

As an example, with the existing rate halving implementation a single
loss event can cause a connection carrying short Web transactions to
go into the slow start mode after the recovery. This is because during
recovery Linux pulls the congestion window down to packets_in_flight+1
on every ACK. A short Web response often runs out of new data to send
and its pipe reduces to zero by the end of recovery when all its packets
are drained from the network. Subsequent HTTP responses using the same
connection will have to slow start to raise cwnd to ssthresh. PRR on
the other hand aims for the cwnd to be as close as possible to ssthresh
by the end of recovery.

A description of PRR and a discussion of its performance can be found at
the following links:
- IETF Draft:
    http://tools.ietf.org/html/draft-mathis-tcpm-proportional-rate-reduction-01
- IETF Slides:
    http://www.ietf.org/proceedings/80/slides/tcpm-6.pdf
    http://tools.ietf.org/agenda/81/slides/tcpm-2.pdf
- Paper to appear in Internet Measurements Conference (IMC) 2011:
    Improving TCP Loss Recovery
    Nandita Dukkipati, Matt Mathis, Yuchung Cheng

Signed-off-by: Nandita Dukkipati <nanditad@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Mohamed Karami <karamimed@gmail.com>
ported mali control to mali 3rp2

Change-Id: I6320d831116f86c476d10dc989eeda7d61944f98
added 5th step to mali control

Change-Id: Ie2724ea51074276e107db3777fd680835706d805
properly added 5th step to mali control

This reverts commit 68bfb018d9268a3242a0fdf783d3041381d715a3.

Change-Id: I31d4e7fda3d46273e211dcb06d143d294127f8ea
gpu control: voltage and clock control in one file

Change-Id: If88a07e80f04eb3103fc246005f55cac98f7cf61
gpu control: added 'available freq' from yank555-lu + check validation of new freq before applying

Change-Id: Ic0869d7a7ad45bb2c112db4c7951cf73267332a5

Conflicts:

	drivers/gpu/mali400/r3p2/mali/platform/pegasus-m400/exynos4_pmm.c
gpu control: fix warning

Change-Id: I04cd86506568fba2fa787777fab2ca4d8ebe80ff
gpu control: automatically apply correct voltages according to choosen freq (thanks to yank555-lu for his implementation)

Change-Id: Id2622ca338a3f53e7f414b1cd0a1130c54b090aa

Conflicts:

	drivers/gpu/mali400/r3p2/mali/platform/pegasus-m400/exynos4_pmm.c
gpu control: finally fix it

Change-Id: I0bead8f62a75fe300c6a09b3fbc053a3f20a963d

Conflicts:

	drivers/gpu/mali400/r3p2/mali/common/gpu_control.c
gpu control: Global voltage delta (yank555-lu)

Change-Id: I29e2063b17acf93bddf539201be20c579169ced3

Conflicts:

	drivers/gpu/mali400/r3p2/mali/platform/pegasus-m400/exynos4_pmm.c
gpu control: internal apply voltage changes as deltas to default voltage.
if one lowers voltage of i.e lowest step by 25mv compared to default voltage, this delta again gets applied after freq of lowest step gets changed.
all voltage deltas are shown in /sys/class/misc/gpu_control/gpu_voltage_delta.
all voltage deltas are reset by: echo 1 > /sys/class/misc/gpu_control/gpu_voltage_delta

Change-Id: I205aaacbda7b520575c795990d685e0e4b9893ed
gpu control: if freq chnages, reset corresponding voltage delta

Change-Id: Ieb8a46a77029b7a22135130f0c7291d36a0fdae0
drivers: reduce wakelock
drivers: cpufreq: Add cpu-boost

When certain bursty and important events take place, it might take a while
for the current cpufreq governor to notice the new load and react to it.
That would result in poor user experience. To alleviate this, the cpu-boost
driver boosts the frequency of a CPU for a short duration to maintain good
user experience while the governor catches up.

Specifically, this commit deals with ensuring that when "important" tasks
migrate from a fast CPU to a slow CPU, the frequency of the slow CPU is
boosted to be at least as high as the fast CPU for a short duration.

Since this driver enforces the boost by hooking into standard cpufreq
ADJUST notifiers, it has several advantages:
- More portable across kernel versions where the cpufreq internals might
  have been rewritten.
- Governor agnostic and hence works with multiple governors like
  conservative, ondemand, interactive, etc.
- Does not affect the sampling period/logic of existing governors.
- Can have the boost period adjusted independent of governor sampling
  period.

Signed-off-by: Saravana Kannan <skannan@codeaurora.org>

Change-Id: Ibd814a20043d0aba64ee7637a4a79b9ffa1b0991
Signed-off-by: Pafcholini <pafcholini@gmail.com>
drivers: cpufreq: cpu-boost: Add sync limit to cpu-boost
Perform frequency synchronization only when source CPU's frequency
is less than sync_threshold, else sync to the sync_threshold.

Signed-off-by: Rohit Gupta <rohgup@codeaurora.org>

Change-Id: I544c414568d4e015b80ce5891dd215275bac95da
cpu boost: backport missing functions from 3.4 (DerTeufel)
network speed tweak