Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Slew full of pull #2

Open
wants to merge 111 commits into
base: ics
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
7882106
Add bluetooth low power mode support
Chad0989 Sep 13, 2012
7ab4062
atmel_224e: Implement workaround for multitouch issues on AOSP. HTC
Chad0989 Sep 21, 2012
8d80c0d
Added Wheatley governor by Ezekeel https://github.com/Ezekeel and Dis…
Snuzzo Sep 19, 2012
4268939
Added Lagfree;Named Kernel;Minor undervolt
Snuzzo Sep 19, 2012
e3062dc
Simple sysfs interface to force fast charging regardless of charging …
Aug 31, 2012
f5d0054
Added SIO Scheduler.
RumpleNJ Aug 30, 2012
cbc6809
Updated Config to reflect SIO addition
Snuzzo Sep 25, 2012
95c288e
Update drivers/cpufreq/cpufreq_conservative.c
Snuzzo Sep 29, 2012
66a2684
OPtimizing Wheatley for slower frequency ramping
Snuzzo Sep 29, 2012
8a10f77
Added CIFS
Snuzzo Sep 30, 2012
ab184e9
Updated config to add in schedulers/governors/modules
Snuzzo Sep 30, 2012
940f471
Added MaulingDeOso's Audio fix
Snuzzo Sep 30, 2012
380deb7
Linux 3.0.17
intervigilium Sep 3, 2012
15abf49
Linux 3.0.18
intervigilium Sep 3, 2012
5f54131
Linux 3.0.19
intervigilium Sep 3, 2012
f13ba4b
Linux 3.0.20
intervigilium Sep 3, 2012
4528769
Linux 3.0.21
intervigilium Sep 3, 2012
7f71f7c
Linux 3.0.22
intervigilium Sep 3, 2012
9355a78
Linux 3.0.23
intervigilium Sep 3, 2012
ee13dbf
Linux 3.0.24
intervigilium Sep 3, 2012
7b11555
Linux 3.0.25
intervigilium Sep 3, 2012
013e5d9
Linux 3.0.26
intervigilium Sep 3, 2012
2ec56d8
Linux 3.0.27
intervigilium Sep 3, 2012
57fba6b
Linux 3.0.28
intervigilium Sep 3, 2012
7f7bb0f
Linux 3.0.29
intervigilium Sep 3, 2012
dd13c2e
Linux 3.0.30
intervigilium Sep 3, 2012
921c2f2
Linux 3.0.31
intervigilium Sep 3, 2012
e8beea1
Linux 3.0.32
intervigilium Sep 3, 2012
6a51171
Linux 3.0.33
intervigilium Sep 3, 2012
be97033
Linux 3.0.34
intervigilium Sep 3, 2012
2c5f823
Linux 3.0.35
intervigilium Sep 3, 2012
8950c8b
Linux 3.0.36
intervigilium Sep 3, 2012
696a8a3
Linux 3.0.37
intervigilium Sep 3, 2012
d0a298a
Linux 3.0.38
intervigilium Sep 3, 2012
f069984
Fix merge error
dmeadows013 Sep 3, 2012
6e11dbb
Linux 3.0.39
intervigilium Sep 3, 2012
1c799c0
Linux 3.0.40
intervigilium Sep 3, 2012
fc421cf
Linux 3.0.41
intervigilium Sep 3, 2012
2ec76b1
Linux 3.0.42
intervigilium Sep 3, 2012
4e5d6fd
Restored original configuration of Wheatley
Snuzzo Oct 5, 2012
a2eae68
Included some modules into kernel and enabled cpu stats
Snuzzo Oct 5, 2012
cd97b15
Reverted back to source removing forced fastcharge code.
Snuzzo Oct 7, 2012
44bdb9d
Some I/O tweaks and fixed HTC battery core typo
Snuzzo Oct 7, 2012
1f61dd5
Added Lazy Governor
Snuzzo Oct 7, 2012
017c561
Upgrade Adreno drivers from Code Aurora.
RumpleNJ Sep 29, 2012
f0b1c28
Added & Updated version info
Snuzzo Oct 7, 2012
53d263e
Updated config; Lazy Governor
Snuzzo Oct 8, 2012
ae63fa3
Added GPU OC.
RumpleNJ Aug 31, 2012
e18502c
Updated config
Snuzzo Oct 9, 2012
8bf23e2
Added Intellidemand Governor from faux123.
RumpleNJ Sep 9, 2012
f5ef0b8
Reverted Wheatley to slower ramping
Snuzzo Oct 10, 2012
a79ba67
Updated config
Snuzzo Oct 13, 2012
d51b5a6
Added V(R) Scheduler
Snuzzo Oct 12, 2012
b88c2a8
Updated config & version. Not final for v1.3.
Snuzzo Oct 13, 2012
e67d019
Revert "Update bcmdhd to that found in codeaurora's ics-chocolate bra…
Chad0989 Oct 2, 2012
d2dfc6c
Update defconfig
Chad0989 Oct 2, 2012
4bc0de9
Added FSync Control version 1.
Jul 6, 2012
b915fb8
Enabled fsync control in aosp config
Snuzzo Oct 21, 2012
3e08bc8
Added No GPU OC Config
Snuzzo Oct 21, 2012
1e075f5
Makefile: Snapdragon and Linaro optimizations
MikeC84 Sep 1, 2012
afb1de9
-Optimize Slub -Disable fair sleepers
Snuzzo Oct 19, 2012
649e64e
Optimized dealine for performance
Snuzzo Oct 19, 2012
caf6510
Updated version
Snuzzo Oct 22, 2012
09915b5
Update bcmdhd to that found in codeaurora's ics-chocolate branch
Chad0989 Sep 12, 2012
258521c
Revert Updated Config -is more uniform to AOKP repos
Snuzzo Oct 27, 2012
be20775
Empty
Snuzzo Oct 27, 2012
06f8e72
SVS sysfs interface
Chad0989 Jan 19, 2012
8e82b55
New min/max voltage set. Added a forgotten value for USB OTG support.
Snuzzo Oct 27, 2012
b624354
Added L2 clock boost/Reverted "Missing USB OTG" Value -Causes zImage …
Snuzzo Oct 29, 2012
206920b
Fixed typo in voltage table
Snuzzo Oct 31, 2012
e427243
Removed rest of fast charge code
Snuzzo Nov 6, 2012
28625b6
Linux 3.0.43
vinylfreak89 Sep 16, 2012
642c7cb
Lowered VFS cache pressure
Snuzzo Nov 14, 2012
33fba5c
Updated version
Snuzzo Nov 14, 2012
1f989f8
Unset GPU OC/Pushed wifi module into kernel
Snuzzo Nov 14, 2012
d79c43d
Added SmartAssv2
Snuzzo Nov 14, 2012
cae66c5
Added missing Smartassv2 governor driver
Snuzzo Dec 2, 2012
9d2caf2
Revert "Update bcmdhd to that found in codeaurora's ics-chocolate bra…
Chad0989 Oct 2, 2012
5b9a364
Update to bcmdhd from jb-chocolate
Chad0989 Nov 4, 2012
2190b55
Updated MPDecision from showp1984 along with added sysfs interface
Snuzzo Dec 30, 2012
f7abce7
drivers: cpufreq: address issue where cpus forget their clock speeds
showp1984 Mar 19, 2012
0c4f075
Minor config updates
Snuzzo Dec 30, 2012
5e61fbe
Increase bandwith limit at lower cpu/l2 clocks
Snuzzo Dec 9, 2012
689d8a5
Enable ARM RWSEMA algorithm
Snuzzo Dec 30, 2012
03889d2
Compile with neon
Snuzzo Dec 30, 2012
9e23072
staging;android;lowmemorykiller.c from faux123
Snuzzo Dec 11, 2012
1ef454b
Dancedance governor
Snuzzo Dec 22, 2012
50aa19f
dancedance governor; fine tune
Snuzzo Dec 24, 2012
b2da7dd
various: compilation fixes for gcc 4.6
Sep 2, 2012
deaf819
Linaro CIFS Fix
Aug 26, 2012
60de491
Remove inlining from soc_restart to fix compile.
bearoso Oct 19, 2012
54adf29
Updated version
Snuzzo Dec 31, 2012
6dfabad
sweep2wake by show-p1984, modified for the rezound and
showp1984 Apr 18, 2012
bd73e08
Enabled Sweep2Wake
Snuzzo Dec 31, 2012
829944f
Sweep2Wake build fix
Snuzzo Dec 31, 2012
d0aa3b3
Added USB Fastcharge
Snuzzo Jan 12, 2013
74ca6cb
Optimized Async I/O
kleikamp Jan 12, 2013
838092f
Added Badass governor
Snuzzo Jan 12, 2013
1e16b73
USB OTG support
Snuzzo Dec 24, 2012
1080fe2
Reverted "Added FSync Control version 1"
Snuzzo Jan 14, 2013
60c3c3d
fs/dyn_sync_cntrl: dynamic sync control The dynamic sync
Snuzzo Jan 14, 2013
e696440
Set Dynamic Fsync:Added missing driver to git
Snuzzo Jan 14, 2013
69c8d7a
Lowered wifi voltage
Snuzzo Jan 14, 2013
20e492f
drivers/usb/misc: add ehset.c for OTG operations
faux123 Mar 23, 2012
6d0d513
ARM: net: JIT compiler for packet filters
Mar 20, 2012
586dd5c
Config Update:
Snuzzo Jan 15, 2013
5c549a4
Updated version
Snuzzo Jan 15, 2013
823c586
netfilter: xt_log.h: fix warning: value computed is not used
MikeC84 Sep 1, 2012
e94e2cc
O3_FIX: git rid of a unneeded warning (TODO: return_address should us…
MikeC84 Sep 26, 2012
87a0077
Enable BPF Compiler & Quick fix for it to build
Snuzzo Jan 15, 2013
7fe2a4f
Updated MP Decision settings to be battery friendly with our device
Snuzzo Jan 15, 2013
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Added FSync Control version 1.
Ezekeel authored and Snuzzo committed Oct 21, 2012
commit 4bc0de9d62b8a605e64505ff902884321b870ef2
1 change: 1 addition & 0 deletions arch/arm/configs/vigor_defconfig
Original file line number Diff line number Diff line change
@@ -1133,6 +1133,7 @@ CONFIG_TZCOM=y
# CONFIG_SENSORS_LIS3_I2C is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set
CONFIG_FSYNC_CONTROL=y

#
# SCSI device support
6 changes: 6 additions & 0 deletions drivers/misc/Kconfig
Original file line number Diff line number Diff line change
@@ -695,4 +695,10 @@ source "drivers/misc/lis3lv02d/Kconfig"
source "drivers/misc/carma/Kconfig"
source "drivers/misc/mpu3050/Kconfig"

config FSYNC_CONTROL
bool "Support for FSync Control"
default y
help
Say Y here to enable FSync Control

endif # MISC_DEVICES
1 change: 1 addition & 0 deletions drivers/misc/Makefile
Original file line number Diff line number Diff line change
@@ -53,6 +53,7 @@ obj-$(CONFIG_WL127X_RFKILL) += wl127x-rfkill.o
obj-$(CONFIG_APANIC) += apanic.o
obj-$(CONFIG_SENSORS_AK8975) += akm8975.o
obj-$(CONFIG_TSIF) += msm_tsif.o
obj-$(CONFIG_FSYNC_CONTROL) += fsync_control.o
msm_tsif-objs := tsif.o
obj-$(CONFIG_TSIF_CHRDEV) += tsif_chrdev.o
obj-$(CONFIG_HAPTIC_ISA1200) += isa1200.o
110 changes: 110 additions & 0 deletions drivers/misc/fsync_control.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
/* drivers/misc/fsync_control.c
*
* Copyright 2012 Ezekeel
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/

#include <linux/init.h>
#include <linux/device.h>
#include <linux/miscdevice.h>

#define FSYNCCONTROL_VERSION 1

static bool fsync_enabled = true;

bool fsynccontrol_fsync_enabled(void)
{
return fsync_enabled;
}
EXPORT_SYMBOL(fsynccontrol_fsync_enabled);

static ssize_t fsynccontrol_status_read(struct device * dev, struct device_attribute * attr, char * buf)
{
return sprintf(buf, "%u\n", (fsync_enabled ? 1 : 0));
}

static ssize_t fsynccontrol_status_write(struct device * dev, struct device_attribute * attr, const char * buf, size_t size)
{
unsigned int data;

if(sscanf(buf, "%u\n", &data) == 1)
{
if (data == 1)
{
pr_info("%s: FSYNCCONTROL fsync enabled\n", __FUNCTION__);

fsync_enabled = true;

}
else if (data == 0)
{
pr_info("%s: FSYNCCONTROL fsync disabled\n", __FUNCTION__);

fsync_enabled = false;
}
else
{
pr_info("%s: invalid input range %u\n", __FUNCTION__, data);
}
}
else
{
pr_info("%s: invalid input\n", __FUNCTION__);
}

return size;
}

static ssize_t fsynccontrol_version(struct device * dev, struct device_attribute * attr, char * buf)
{
return sprintf(buf, "%u\n", FSYNCCONTROL_VERSION);
}

static DEVICE_ATTR(fsync_enabled, S_IRUGO | S_IWUGO, fsynccontrol_status_read, fsynccontrol_status_write);
static DEVICE_ATTR(version, S_IRUGO , fsynccontrol_version, NULL);

static struct attribute *fsynccontrol_attributes[] =
{
&dev_attr_fsync_enabled.attr,
&dev_attr_version.attr,
NULL
};

static struct attribute_group fsynccontrol_group =
{
.attrs = fsynccontrol_attributes,
};

static struct miscdevice fsynccontrol_device =
{
.minor = MISC_DYNAMIC_MINOR,
.name = "fsynccontrol",
};

static int __init fsynccontrol_init(void)
{
int ret;

pr_info("%s misc_register(%s)\n", __FUNCTION__, fsynccontrol_device.name);

ret = misc_register(&fsynccontrol_device);

if (ret)
{
pr_err("%s misc_register(%s) fail\n", __FUNCTION__, fsynccontrol_device.name);
return 1;
}

if (sysfs_create_group(&fsynccontrol_device.this_device->kobj, &fsynccontrol_group) < 0)
{
pr_err("%s sysfs_create_group fail\n", __FUNCTION__);
pr_err("Failed to create sysfs group for device (%s)!\n", fsynccontrol_device.name);
}

return 0;
}

device_initcall(fsynccontrol_init);
44 changes: 44 additions & 0 deletions fs/sync.c
Original file line number Diff line number Diff line change
@@ -21,6 +21,10 @@
#define VALID_FLAGS (SYNC_FILE_RANGE_WAIT_BEFORE|SYNC_FILE_RANGE_WRITE| \
SYNC_FILE_RANGE_WAIT_AFTER)

#ifdef CONFIG_FSYNC_CONTROL
extern bool fsynccontrol_fsync_enabled(void);
#endif

/*
* Do the filesystem syncing work. For simple filesystems
* writeback_inodes_sb(sb) just dirties buffers with inodes so we have to
@@ -139,6 +143,11 @@ SYSCALL_DEFINE1(syncfs, int, fd)
int ret;
int fput_needed;

#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

file = fget_light(fd, &fput_needed);
if (!file)
return -EBADF;
@@ -168,6 +177,11 @@ int vfs_fsync_range(struct file *file, loff_t start, loff_t end, int datasync)
struct address_space *mapping = file->f_mapping;
int err, ret;

#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

if (!file->f_op || !file->f_op->fsync) {
ret = -EINVAL;
goto out;
@@ -200,6 +214,11 @@ EXPORT_SYMBOL(vfs_fsync_range);
*/
int vfs_fsync(struct file *file, int datasync)
{
#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

return vfs_fsync_range(file, 0, LLONG_MAX, datasync);
}
EXPORT_SYMBOL(vfs_fsync);
@@ -209,6 +228,11 @@ static int do_fsync(unsigned int fd, int datasync)
struct file *file;
int ret = -EBADF;

#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

file = fget(fd);
if (file) {
ret = vfs_fsync(file, datasync);
@@ -219,11 +243,21 @@ static int do_fsync(unsigned int fd, int datasync)

SYSCALL_DEFINE1(fsync, unsigned int, fd)
{
#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

return do_fsync(fd, 0);
}

SYSCALL_DEFINE1(fdatasync, unsigned int, fd)
{
#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

return do_fsync(fd, 1);
}

@@ -237,6 +271,11 @@ SYSCALL_DEFINE1(fdatasync, unsigned int, fd)
*/
int generic_write_sync(struct file *file, loff_t pos, loff_t count)
{
#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

if (!(file->f_flags & O_DSYNC) && !IS_SYNC(file->f_mapping->host))
return 0;
return vfs_fsync_range(file, pos, pos + count - 1,
@@ -301,6 +340,11 @@ SYSCALL_DEFINE(sync_file_range)(int fd, loff_t offset, loff_t nbytes,
int fput_needed;
umode_t i_mode;

#ifdef CONFIG_FSYNC_CONTROL
if (!fsynccontrol_fsync_enabled())
return 0;
#endif

ret = -EINVAL;
if (flags & ~VALID_FLAGS)
goto out;