Permalink
Commits on Sep 12, 2012
  1. Revert "RWSEM_XCHGADD_ALGORITHM for ARM (R/W semaphores implemented u…

    …sing ARM atomic functions) by CodeAurora"
    
    This reverts commit 8517733.
    committed Sep 12, 2012
Commits on Sep 11, 2012
  1. performance: Turn CPUs online while active

    Since we don't have separate active hotplugging logic aside the in-governor one in pegasusq, switching to performance governor will always just remain with whatever cores were online before the switch. This activates all available cores on governor start, and turns additional cores off when stopped.
    AndreiLux committed with Jul 8, 2012
Commits on Sep 7, 2012
  1. ondemand: cpuidle detection

    I found a problem with the ondemand governor while in earlysuspend
    suspend mode (ondemand keeping the freq close to the max at all times
    despite near 0% load). The problem is that the cpu starts to go in
    long cpuidle cycles, a sampling_rate of 10000 (usec) is applied only
    once in a while and the real sampling_rate becomes 1 second (or more).
    
    So when a wakeup happens we return to the 10000usec sampling rate. The
    ondemand sees lots of activity after the wakeup but those "loads" must
    be adjusted down if the previous wall_time delta was huge and the
    current one is tiny. We're too close to long cpuidle to worry about
    the cpu freq anyway and it may be just a jitter load that if we take
    into account without adjusting it down, will lead to the next long
    cpuidle to be entered at the max freq again, and this repeats forever.
    
    So my solution is to tweak the ondemand to scale down the "load"
    according to the decrease in the wall_time delta ratio
    (deep_sleep_ratio variable). This allows the CPU to stay at the lowest
    freq during the deep sleeps even when the ondemand governor is enabled
    and the sampling_rate is set to 10000. (setting the sampling_rate to
    values >100000 would also tend to hide the problem but it'd screw the
    interactive behavior by running at the lowest frequency for too long
    during interactive usage)
    
    During interactive usage with the screen on (not in earlysuspend
    mode), or during playback or voip with screen off the deep_sleep_rate
    is set to 1 practically all the time so it won't alter the behavior of
    the ondemand governor unless the system is very idle (and in turn when
    we want it to stay at low freq).
    
    Change-Id: If0391e6d6c41c1c8c9fa590502e88e681a800b04
    
    Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>
    aagit committed with Jul 2, 2012
  2. pegasusq (based on ondemand): cpuidle detection

    I found a problem with the ondemand governor while in earlysuspend
    suspend mode (ondemand keeping the freq close to the max at all times
    despite near 0% load). The problem is that the cpu starts to go in
    long cpuidle cycles, a sampling_rate of 10000 (usec) is applied only
    once in a while and the real sampling_rate becomes 1 second (or more).
    
    So when a wakeup happens we return to the 10000usec sampling rate. The
    ondemand sees lots of activity after the wakeup but those "loads" must
    be adjusted down if the previous wall_time delta was huge and the
    current one is tiny. We're too close to long cpuidle to worry about
    the cpu freq anyway and it may be just a jitter load that if we take
    into account without adjusting it down, will lead to the next long
    cpuidle to be entered at the max freq again, and this repeats forever.
    
    So my solution is to tweak the ondemand to scale down the "load"
    according to the decrease in the wall_time delta ratio
    (deep_sleep_ratio variable). This allows the CPU to stay at the lowest
    freq during the deep sleeps even when the ondemand governor is enabled
    and the sampling_rate is set to 10000. (setting the sampling_rate to
    values >100000 would also tend to hide the problem but it'd screw the
    interactive behavior by running at the lowest frequency for too long
    during interactive usage)
    
    During interactive usage with the screen on (not in earlysuspend
    mode), or during playback or voip with screen off the deep_sleep_rate
    is set to 1 practically all the time so it won't alter the behavior of
    the ondemand governor unless the system is very idle (and in turn when
    we want it to stay at low freq).
    
    Change-Id: If0391e6d6c41c1c8c9fa590502e88e681a800b04
    
    Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>
    aagit committed with Jul 2, 2012
  3. wm8994_voodoo: make it a module (add missing code)

    this is only one way of hijacking a function. There are several other ways but this one is the easiest and the GPL way...
    committed Sep 5, 2012
Commits on Sep 6, 2012
  1. cpufreq_pegasusq: tweaks

    committed Aug 30, 2012
  2. mali: disable gpu boost level as default. we need it to be active onl…

    …y after mali subsystem init.
    committed Aug 30, 2012
  3. Increased max gestures to 30

    Reduced fingers per gesture to 5
    Tungstwenty committed with Aug 18, 2012
  4. mdnie: more silence...

    committed Aug 24, 2012
Commits on Aug 23, 2012
  1. v1.5.1 config

    committed Aug 23, 2012
  2. Revert stand-hotplug changes

    This reverts commit ccc185c.
    
    This reverts commit ad5421d.
    committed Aug 22, 2012
  3. Revert "mach-exynos: enable smooth scaling (optional, default disabled)"

    This reverts commit 9431427.
    
    Conflicts:
    
    	arch/arm/mach-exynos/cpufreq.c
    	drivers/cpufreq/cpufreq.c
    committed Aug 22, 2012
  4. wm8994_voodoo: some tiny changes

    - do not check for mic.
    - call update_hp on hook
    - a little silence in debugging
    committed Aug 22, 2012
Commits on Aug 22, 2012
  1. Revert "cpufreq: add lulzactive governor"

    This reverts commit 3e15c48.
    
    Conflicts:
    
    	drivers/cpufreq/Makefile
    committed Aug 22, 2012
  2. mali: a tiny cleanup

    committed Aug 22, 2012
  3. Revert "sched: Ensure cpu_power periodic update"

    This reverts commit 4f1dd1c.
    committed Aug 22, 2012
  4. Revert "ARM: 7011/1: Add ARM cpu topology definition"

    This reverts commit b0cedca.
    committed Aug 22, 2012
Commits on Aug 18, 2012
  1. v1.5 config

    committed Aug 18, 2012
  2. wm8994_voodoo: some more changes

    -delay after writing to wm8994 register
    -fix (some) fm problems with dac direct
    -disable hardware equalizer if the headphone is detached.
    -speaker tuning and tuning level
    -fix eq problem with stock player (mic detection) and add proper call detection
    -fix speaker tuning and notification clamp
    -lots of code cleanups and removed custom code from some functions
    -speaker offset
    committed Jul 25, 2012
  3. cgroup_timer_slack by Kirill A. Shutemov, v10

    Every task_struct has timer_slack_ns value. This value uses to round up
    poll() and select() timeout values. This feature can be useful in
    mobile environment where combined wakeups are desired.
    
    Originally, prctl() was the only way to change timer slack value of
    a process. So you was not able change timer slack value of another
    process.
    
    cgroup subsys "timer_slack" implements timer slack controller. It
    provides a way to set minimal timer slack value for a group of tasks.
    If a task belongs to a cgroup with minimal timer slack value higher than
    task's value, cgroup's value will be applied.
    
    Timer slack controller allows to implement setting timer slack value of
    a process based on a policy. For example, you can create foreground and
    background cgroups and move tasks between them based on system state.
    
    Idea-by: Jacob Pan <jacob.jun.pan <at> linux.intel.com>
    Signed-off-by: Kirill A. Shutemov <kirill <at> shutemov.name>
    
    task_get_effective_timer_slack() returns timer slack value to be used
    to configure per-task timers. It can be equal or higher than task's
    timer slack value.
    
    For now task_get_effective_timer_slack() returns timer_slack_ns of the
    task. Timer slack cgroup controller will implement a bit more
    sophisticated logic.
    
    Signed-off-by: Kirill A. Shutemov <kirill <at> shutemov.name>
    
    PR_GET_EFFECTIVE_TIMERSLACK allows process to know its effective timer
    slack value.
    
    Signed-off-by: Kirill A. Shutemov <kirill <at> shutemov.name>
    committed Aug 17, 2012