firefly-linux-kernel-4.4.55.git
13 years agoARM: Add generic fiq serial debugger
Iliyan Malchev [Sun, 6 Jun 2010 00:36:24 +0000 (17:36 -0700)]
ARM: Add generic fiq serial debugger

Change-Id: Ibb536c88f0dbaf4766d0599296907e35e42cbfd6
Signed-off-by: Iliyan Malchev <malchev@google.com>
Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agoARM: Add fiq_glue
Arve Hjønnevåg [Tue, 28 Sep 2010 00:50:00 +0000 (17:50 -0700)]
ARM: Add fiq_glue

Change-Id: I27d2554e07d9de204e0a06696d38db51608d9f6b
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agosched: use the old min_vruntime when normalizing on dequeue
Dima Zavin [Wed, 29 Sep 2010 00:35:31 +0000 (17:35 -0700)]
sched: use the old min_vruntime when normalizing on dequeue

After pulling the thread off the run-queue during a cgroup change,
the cfs_rq.min_vruntime gets recalculated. The dequeued thread's vruntime
then gets normalized to this new value. This can then lead to the thread
getting an unfair boost in the new group if the vruntime of the next
task in the old run-queue was way further ahead.

Cc: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Dima Zavin <dima@android.com>
13 years agosched: normalize sleeper's vruntime during group change
Dima Zavin [Wed, 29 Sep 2010 00:24:51 +0000 (17:24 -0700)]
sched: normalize sleeper's vruntime during group change

If you switch the cgroup of a sleeping thread, its vruntime does
not get adjusted correctly for the difference between the
min_vruntime values of the two groups.

This patch adds a new callback, prep_move_task, to struct sched_class
to give sched_fair the opportunity to adjust the task's vruntime
just before setting its new group. This allows us to properly normalize
a sleeping task's vruntime when moving it between different cgroups.

More details about the problem:
  http://lkml.org/lkml/2010/9/28/24

Cc: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Dima Zavin <dima@android.com>
13 years agonet: wireless: bcm4329: Fix setting HT clock race conditions in driver start
Dmitry Shmidt [Thu, 30 Sep 2010 21:44:14 +0000 (14:44 -0700)]
net: wireless: bcm4329: Fix setting HT clock race conditions in driver start

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoAllow CONFIG_STACKTRACE to be enabled by itself.
Arve Hjønnevåg [Thu, 3 Jun 2010 23:33:07 +0000 (16:33 -0700)]
Allow CONFIG_STACKTRACE to be enabled by itself.

This allows us to get a kernel stacktrace for a thread though /proc.
Also enable it by default.

Change-Id: If8c21cd02feaf9863f4841ace524fa30c7328d49
Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agonet: wireless: bcm4329: Fix setting HT clock race conditions
Dmitry Shmidt [Wed, 29 Sep 2010 17:22:59 +0000 (10:22 -0700)]
net: wireless: bcm4329: Fix setting HT clock race conditions

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agousb: gadget: android: Remove WAKEUP flag from bmAttributes
Benoit Goby [Fri, 24 Sep 2010 01:34:27 +0000 (18:34 -0700)]
usb: gadget: android: Remove WAKEUP flag from bmAttributes

Remove USB_CONFIG_ATT_WAKEUP from bmAttributes as we don't
support remote wakeup. This fixes an issue with the USB 2.0
compliance test tool.

Change-Id: Ic15e44710069f3f05ace6a82bbfa2b85a3649027
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoSupport lseek(2) in ashmem driver
Bjorn Bringert [Thu, 26 Aug 2010 14:08:32 +0000 (15:08 +0100)]
Support lseek(2) in ashmem driver

Signed-off-by: Bjorn Bringert <bringert@android.com>
Change-Id: I509d18b21832e229737ea7ebaa231fb107eb61d7

13 years agol2tp: l2tp_eth: Fix section mismatch warning
Dmitry Shmidt [Mon, 20 Sep 2010 22:34:48 +0000 (15:34 -0700)]
l2tp: l2tp_eth: Fix section mismatch warning

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix interrupt enabling in case of error
Dmitry Shmidt [Thu, 16 Sep 2010 22:47:05 +0000 (15:47 -0700)]
net: wireless: bcm4329: Fix interrupt enabling in case of error

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Update to Version 4.218.248.6
Greg Goldman [Wed, 15 Sep 2010 22:05:19 +0000 (15:05 -0700)]
net: wireless: bcm4329: Update to Version 4.218.248.6

Fix watchdog time rescheduling, fix first scan no-return

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Enable packet filtering during low power mode
Greg Goldman [Tue, 14 Sep 2010 23:55:46 +0000 (16:55 -0700)]
net: wireless: bcm4329: Enable packet filtering during low power mode

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Ignore error if scan results are empty
Greg Goldman [Mon, 13 Sep 2010 23:11:16 +0000 (16:11 -0700)]
net: wireless: bcm4329: Ignore error if scan results are empty

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Add debug print for cscan failure
Dmitry Shmidt [Sun, 12 Sep 2010 21:23:20 +0000 (14:23 -0700)]
net: wireless: bcm4329: Add debug print for cscan failure

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix roaming setting on resume
Dmitry Shmidt [Sun, 12 Sep 2010 21:18:23 +0000 (14:18 -0700)]
net: wireless: bcm4329: Fix roaming setting on resume

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agommc: subtract boot sectors from disk size for eMMC 4.3+ devices
Gary King [Fri, 16 Jul 2010 00:11:32 +0000 (17:11 -0700)]
mmc: subtract boot sectors from disk size for eMMC 4.3+ devices

the csd sector count reported by eMMC 4.3+ cards includes the boot
partition size; subtract this from the size reported to the disk
since the boot partition is inaccessible

Change-Id: I601b83aa0159b7aa446409ea8c945b256dd0b5b1
Signed-off-by: Gary King <gking@nvidia.com>
13 years agommc_block: Allow more than 8 partitions per card
Colin Cross [Fri, 3 Sep 2010 19:41:21 +0000 (12:41 -0700)]
mmc_block: Allow more than 8 partitions per card

Set the GENHD_FL_EXT_DEVT flag, which will allocate minor numbers
in major 259 for partitions past disk->minors.

Also remove the use of disk_devt to determine devidx from md->disk.
md->disk->first_minor is always initialized from devidx and can
always be used to recover it.

Signed-off-by: Colin Cross <ccross@android.com>
13 years agoEFI/GPT: Register named partitions.
Todd Poynor [Fri, 27 Aug 2010 00:25:50 +0000 (17:25 -0700)]
EFI/GPT: Register named partitions.

Change-Id: If318512de67d3d152192aa66b074427f4e5b5c2e
Signed-off-by: Todd Poynor <toddpoynor@google.com>
13 years agofs: partitions: Add support for named partitions
Colin Cross [Wed, 7 Apr 2010 19:05:32 +0000 (12:05 -0700)]
fs: partitions: Add support for named partitions

Adds a new file in /sys/block/<block>/<partition> called partition_name
that contains the name of the partition, if specified by the partition
handler.

Change-Id: I6648ed95eabefd1d00edbfdfd99eeb971d15f4b3
Signed-off-by: Colin Cross <ccross@android.com>
13 years agonet: wireless: bcm4329: Fix roaming failure case
Greg Goldman [Fri, 3 Sep 2010 00:03:57 +0000 (17:03 -0700)]
net: wireless: bcm4329: Fix roaming failure case

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoPM: Prevent waiting forever on asynchronous resume after abort
Colin Cross [Thu, 2 Sep 2010 01:35:55 +0000 (18:35 -0700)]
PM: Prevent waiting forever on asynchronous resume after abort

Only wait on a parent device during resume if the parent device is
suspended.

Consider three drivers, A, B, and C.  The parent of A is C, and C
has async_suspend set.  On boot, C->power.completion is initialized
to 0.

During the first suspend:
suspend_devices_and_enter(...)
 dpm_resume(...)
  device_suspend(A)
  device_suspend(B) returns error, aborts suspend
 dpm_resume_end(...)
   dpm_resume(...)
    device_resume(A)
     dpm_wait(A->parent == C)
      wait_for_completion(C->power.completion)

The wait_for_completion will never complete, because
complete_all(C->power.completion) will only be called from
device_suspend(C) or device_resume(C), neither of which is called
if suspend is aborted before C.

After a successful suspend->resume cycle, where B doesn't abort
suspend, C->power.completion is left in the completed state by the
call to device_resume(C), and the same call path will work if B
aborts suspend.

Signed-off-by: Colin Cross <ccross@android.com>
13 years agopower: wakelock: call __get_wall_to_monotonic() instead of using wall_to_monotonic
Erik Gilling [Tue, 31 Aug 2010 01:22:20 +0000 (18:22 -0700)]
power: wakelock: call __get_wall_to_monotonic() instead of using wall_to_monotonic

Change-Id: I9e9c3b923bf9a22ffd48f80a72050289496e57d8

13 years agonet: Fix CONFIG_RPS option to be turned off
Dmitry Shmidt [Mon, 30 Aug 2010 17:29:37 +0000 (10:29 -0700)]
net: Fix CONFIG_RPS option to be turned off

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix HW_OOB interrupt processing
Dmitry Shmidt [Sat, 28 Aug 2010 22:12:57 +0000 (15:12 -0700)]
net: wireless: bcm4329: Fix HW_OOB interrupt processing

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoRevert "net: wireless: bcm4329: Fix HW_OOB interrupt processing"
Rebecca Schultz Zavin [Sat, 28 Aug 2010 01:40:49 +0000 (18:40 -0700)]
Revert "net: wireless: bcm4329: Fix HW_OOB interrupt processing"

This reverts commit 8bd035daa820dc5612ae311262c71dc133871046.

13 years agoRevert "net: wireless: bcm4329: Fix interrupt enabling for level interrupt"
Rebecca Schultz Zavin [Sat, 28 Aug 2010 01:40:43 +0000 (18:40 -0700)]
Revert "net: wireless: bcm4329: Fix interrupt enabling for level interrupt"

This reverts commit 261d21bbfffef6261696d0d13672d2e4f9d76f05.

13 years agonet: wireless: bcm4329: Fix interrupt enabling for level interrupt
Dmitry Shmidt [Sat, 28 Aug 2010 00:38:01 +0000 (17:38 -0700)]
net: wireless: bcm4329: Fix interrupt enabling for level interrupt

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix HW_OOB interrupt processing
Dmitry Shmidt [Fri, 27 Aug 2010 21:57:48 +0000 (14:57 -0700)]
net: wireless: bcm4329: Fix HW_OOB interrupt processing

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoUSB: gadget: android: Disable MTP when RNDIS function is enabled.
Mike Lockwood [Mon, 23 Aug 2010 12:17:21 +0000 (08:17 -0400)]
USB: gadget: android: Disable MTP when RNDIS function is enabled.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agonet: wireless: bcm4329: Update to Version 4.218.248
Greg Goldman [Tue, 24 Aug 2010 00:21:26 +0000 (17:21 -0700)]
net: wireless: bcm4329: Update to Version 4.218.248

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agowakelock: Fix operator precedence bug
Colin Cross [Sun, 22 Aug 2010 00:27:02 +0000 (17:27 -0700)]
wakelock: Fix operator precedence bug

Change-Id: I21366ace371d1b8f4684ddbe4ea8d555a926ac21
Signed-off-by: Colin Cross <ccross@google.com>
13 years agoashmem: Update arguments of shrinker for 2.6.35
Colin Cross [Sun, 22 Aug 2010 00:26:52 +0000 (17:26 -0700)]
ashmem: Update arguments of shrinker for 2.6.35

Change-Id: Ie527d18f3352ede06d565826c8d35ded1638203a
Signed-off-by: Colin Cross <ccross@google.com>
13 years agolowmemorykiller: Update arguments of shrinker for 2.6.35
Colin Cross [Sun, 22 Aug 2010 00:25:42 +0000 (17:25 -0700)]
lowmemorykiller: Update arguments of shrinker for 2.6.35

Change-Id: I6bb09b36639527f91c48704118acad5e50c4163f
Signed-off-by: Colin Cross <ccross@google.com>
13 years agonet: wireless: bcm4329: Send "HANG" message only once
Dmitry Shmidt [Fri, 20 Aug 2010 18:12:22 +0000 (11:12 -0700)]
net: wireless: bcm4329: Send "HANG" message only once

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoAllow multiple pmem master mmap()s.
Jamie Gennis [Mon, 9 Aug 2010 19:46:58 +0000 (12:46 -0700)]
Allow multiple pmem master mmap()s.

Signed-off-by: Jamie Gennis <jgennis@google.com>
Change-Id: Icbe619c92e0ebb391f0a93f81937705452a67d87

13 years agonet: wireless: bcm4329: Disable packet filtering
Howard Harte [Wed, 18 Aug 2010 19:49:38 +0000 (12:49 -0700)]
net: wireless: bcm4329: Disable packet filtering

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Turn OFF packet filtering during DHCP session
Dmitry Shmidt [Tue, 17 Aug 2010 20:13:00 +0000 (13:13 -0700)]
net: wireless: bcm4329: Turn OFF packet filtering during DHCP session

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Increase PMU_MAX_TRANSITION_DLY to 1 sec
Dmitry Shmidt [Mon, 16 Aug 2010 18:36:15 +0000 (11:36 -0700)]
net: wireless: bcm4329: Increase PMU_MAX_TRANSITION_DLY to 1 sec

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix "setsuspend" behavior
Dmitry Shmidt [Fri, 13 Aug 2010 21:37:03 +0000 (14:37 -0700)]
net: wireless: bcm4329: Fix "setsuspend" behavior

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Add memory barriers to wait functions
Dmitry Shmidt [Fri, 13 Aug 2010 19:16:13 +0000 (12:16 -0700)]
net: wireless: bcm4329: Add memory barriers to wait functions

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix unregister_early_suspend() in dhd_detach()
Dmitry Shmidt [Tue, 10 Aug 2010 22:20:35 +0000 (15:20 -0700)]
net: wireless: bcm4329: Fix unregister_early_suspend() in dhd_detach()

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix dhd_bus_watchdog() race conditions
Greg Goldman [Tue, 10 Aug 2010 22:15:26 +0000 (15:15 -0700)]
net: wireless: bcm4329: Fix dhd_bus_watchdog() race conditions

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix scan timeout for abg case
Greg Goldman [Fri, 6 Aug 2010 22:15:43 +0000 (15:15 -0700)]
net: wireless: bcm4329: Fix scan timeout for abg case

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Force scan when driver is loaded
Greg Goldman [Thu, 5 Aug 2010 23:16:46 +0000 (16:16 -0700)]
net: wireless: bcm4329: Force scan when driver is loaded

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Add wakelock processing to WEXT requests
Dmitry Shmidt [Tue, 3 Aug 2010 21:34:43 +0000 (14:34 -0700)]
net: wireless: bcm4329: Add wakelock processing to WEXT requests

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Update to Version 4.218.246 and setband fix
Greg Goldman [Fri, 30 Jul 2010 22:02:38 +0000 (15:02 -0700)]
net: wireless: bcm4329: Update to Version 4.218.246 and setband fix

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Update to 4.218.245 (combo scan)
Howard Harte [Fri, 30 Jul 2010 00:43:06 +0000 (17:43 -0700)]
net: wireless: bcm4329: Update to 4.218.245 (combo scan)

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoUSB: g_mass_storage: Always allow disabling mass storage by writing to lun file
Mike Lockwood [Thu, 29 Jul 2010 18:42:24 +0000 (14:42 -0400)]
USB: g_mass_storage: Always allow disabling mass storage by writing to lun file

For android builds we disable the check for curlun->prevent_medium_removal.
Instead we let the framework manage unmounting policy, as we sometimes need
to unmount after the media has been removed.
This also helps support hosts that do not inform the device when the media
has been unmounted.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoyaffs: Use init_timer_on_stack for timer on stack
Arve Hjønnevåg [Thu, 17 Jun 2010 03:34:31 +0000 (20:34 -0700)]
yaffs: Use init_timer_on_stack for timer on stack

Change-Id: I517b94a1ca22c1690fd6421cf9892a05039a3def
Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agoinput: gpio_event: make driver be more robust against incorrectly configured lvl...
Dima Zavin [Sat, 10 Apr 2010 06:26:09 +0000 (23:26 -0700)]
input: gpio_event: make driver be more robust against incorrectly configured lvl trigger irqs

Change-Id: Ie378600668500dcffeaaddeaba3628e5c2141aa4
Signed-off-by: Dima Zavin <dima@android.com>
13 years agoInput: gpio_event: Don't call gpio_cansleep before gpio_request.
Arve Hjønnevåg [Fri, 2 Apr 2010 02:52:27 +0000 (19:52 -0700)]
Input: gpio_event: Don't call gpio_cansleep before gpio_request.

If the gpio did not exist it would crash in gpiolib.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agonet: wireless: bcm4329: Add wakelock processing in ioctl and messaging
Dmitry Shmidt [Thu, 22 Jul 2010 01:49:49 +0000 (18:49 -0700)]
net: wireless: bcm4329: Add wakelock processing in ioctl and messaging

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Fix packet filter to only filter out non-unicast frames
Howard Harte [Wed, 21 Jul 2010 21:41:07 +0000 (14:41 -0700)]
net: wireless: bcm4329: Fix packet filter to only filter out non-unicast frames

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoashmem: Fix ASHMEM_SET_PROT_MASK.
Arve Hjønnevåg [Thu, 15 Jul 2010 23:31:16 +0000 (16:31 -0700)]
ashmem: Fix ASHMEM_SET_PROT_MASK.

Change-Id: I1412cc9560de8c4feb1162fc30922f0e3362a476
Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agoscheduler: cpuacct: Enable platform callbacks for cpuacct power tracking
Mike Chan [Wed, 12 May 2010 22:52:14 +0000 (15:52 -0700)]
scheduler: cpuacct: Enable platform callbacks for cpuacct power tracking

Platform must register cpu power function that return power in
milliWatt seconds.

Change-Id: I1caa0335e316c352eee3b1ddf326fcd4942bcbe8
Signed-off-by: Mike Chan <mike@android.com>
13 years agoscheduler: cpuacct: Enable platform hooks to track cpuusage for CPU frequencies
Mike Chan [Tue, 11 May 2010 00:54:48 +0000 (17:54 -0700)]
scheduler: cpuacct: Enable platform hooks to track cpuusage for CPU frequencies

Introduce new platform callback hooks for cpuacct for tracking CPU frequencies

Not all platforms / architectures have a set CPU_FREQ_TABLE defined
for CPU transition speeds. In order to track time spent in at various
CPU frequencies, we enable platform callbacks from cpuacct for this accounting.

Architectures that support overclock boosting, or don't have pre-defined
frequency tables can implement their own bucketing system that makes sense
given their cpufreq scaling abilities.

New file:
cpuacct.cpufreq reports the CPU time (in nanoseconds) spent at each CPU
frequency.

Change-Id: I10a80b3162e6fff3a8a2f74dd6bb37e88b12ba96
Signed-off-by: Mike Chan <mike@android.com>
13 years agoUSB: gadget: f_mtp: Add ioctl for sending events via the interrupt endpoint
Mike Lockwood [Tue, 6 Jul 2010 23:27:52 +0000 (19:27 -0400)]
USB: gadget: f_mtp: Add ioctl for sending events via the interrupt endpoint

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agomisc: add akm8975 compass driver
Colin Cross [Wed, 21 Apr 2010 02:54:09 +0000 (19:54 -0700)]
misc: add akm8975 compass driver

Originally written by HTC. Contributions by Motorola and AKM.
  misc: Import akm8975 from Motorola

Major style and code cleanups by Praveen Bharathi <pbharathi@motorola.com>
  misc: akm8975: clean up code violations in akm8975.c
  misc: akm8975: Clean up coding style, add suspend and resume

Change-Id: I4196913f15aec2dfbed47506d3dc085aada8e92d
Signed-off-by: Dima Zavin <dima@android.com>
13 years agodrivers: usb: gadget: rndis: Fix section mismatch warning
Dmitry Shmidt [Fri, 2 Jul 2010 21:47:44 +0000 (14:47 -0700)]
drivers: usb: gadget: rndis: Fix section mismatch warning

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agodrivers: usb: gadget: mass_storage: Fix section mismatch warning
Dmitry Shmidt [Fri, 2 Jul 2010 21:37:57 +0000 (14:37 -0700)]
drivers: usb: gadget: mass_storage: Fix section mismatch warning

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agodrivers: input: misc: Fix section mismatch warning
Dmitry Shmidt [Fri, 2 Jul 2010 19:48:48 +0000 (12:48 -0700)]
drivers: input: misc: Fix section mismatch warning

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agodrivers: usb: gadget: Fix section mismatch warning
Dmitry Shmidt [Fri, 2 Jul 2010 19:46:34 +0000 (12:46 -0700)]
drivers: usb: gadget: Fix section mismatch warning

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Add driver SETSUSPEND command
Dmitry Shmidt [Wed, 30 Jun 2010 22:30:54 +0000 (15:30 -0700)]
network: wireless: bcm4329: Add driver SETSUSPEND command

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Fix BUS DOWN in IOCTL
Greg Goldman [Tue, 29 Jun 2010 20:29:49 +0000 (13:29 -0700)]
network: wireless: bcm4329: Fix BUS DOWN in IOCTL

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoUSB: composite: Add usb_composite_force_reset utility to force enumeration
Mike Lockwood [Mon, 28 Jun 2010 20:19:32 +0000 (16:19 -0400)]
USB: composite: Add usb_composite_force_reset utility to force enumeration

Use this rather than calling usb_gadget_disconnect and usb_gadget_connect
directly to avoid sending USB disconnect events to userspace when resetting
the bus.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agonetwork: wireless: bcm4329: Set special OUI: 02:1A:11:FH:HH:HH for SoftAP
Dmitry Shmidt [Mon, 28 Jun 2010 22:28:37 +0000 (15:28 -0700)]
network: wireless: bcm4329: Set special OUI: 02:1A:11:FH:HH:HH for SoftAP

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoUSB: gadget: android: Remove unused function android_usb_set_connected()
Mike Lockwood [Mon, 28 Jun 2010 19:29:00 +0000 (15:29 -0400)]
USB: gadget: android: Remove unused function android_usb_set_connected()

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoUSB: gadget: composite: Move switch_set_state calls to a work queue
Mike Lockwood [Mon, 28 Jun 2010 00:05:55 +0000 (20:05 -0400)]
USB: gadget: composite: Move switch_set_state calls to a work queue

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoUSB: gadget: f_mtp: USB gadget function driver for MTP and PTP device support.
Mike Lockwood [Fri, 16 Apr 2010 14:39:22 +0000 (10:39 -0400)]
USB: gadget: f_mtp: USB gadget function driver for MTP and PTP device support.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoUSB: composite: Add support for functions overriding USB_DT_STRING descriptors
Mike Lockwood [Fri, 16 Apr 2010 19:32:15 +0000 (15:32 -0400)]
USB: composite: Add support for functions overriding USB_DT_STRING descriptors

Needed for MTP support.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoUSB: gadget: composite: Add userspace notifications for USB state changes
Mike Lockwood [Wed, 23 Jun 2010 12:20:59 +0000 (08:20 -0400)]
USB: gadget: composite: Add userspace notifications for USB state changes

Add switch to notify current USB configuration.  This can be used to detect
USB connect and disconnect events.

Broadcast a change via the usb_composite class when a USB function is
enabled or disabled.

Rename usb_function.hidden to usb_function.disabled.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoUSB: gadget: f_mass_storage: Integrate android customizations
Mike Lockwood [Wed, 16 Jun 2010 00:34:25 +0000 (17:34 -0700)]
USB: gadget: f_mass_storage: Integrate android customizations

Integrate support for android composite driver and platform data
within CONFIG_USB_ANDROID_MASS_STORAGE.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoImplement read(2) in ashmem driver
Bjorn Bringert [Thu, 15 Apr 2010 09:04:01 +0000 (10:04 +0100)]
Implement read(2) in ashmem driver

Bug: 2595601
Change-Id: I47c0016f594f9354fb8658ccb26e3d395bcb137b
Signed-off-by: Bjorn Bringert <bringert@android.com>
13 years agonetwork: wireless: bcm4329: Reduce driver loading time
Greg Goldman [Mon, 21 Jun 2010 17:50:44 +0000 (10:50 -0700)]
network: wireless: bcm4329: Reduce driver loading time

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Add 2.6.35 compatibility and fix memory leak in set_multi...
Arve Hjønnevåg [Thu, 17 Jun 2010 22:23:59 +0000 (15:23 -0700)]
network: wireless: bcm4329: Add 2.6.35 compatibility and fix memory leak in set_multicast_list

Signed-off-by: Dmitry Shmidt <dimitrysh@android.com>
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Add SoftAP MAC address randomization
Dmitry Shmidt [Thu, 17 Jun 2010 21:00:02 +0000 (14:00 -0700)]
net: wireless: bcm4329: Add SoftAP MAC address randomization

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: activity_stats: Add statistics for network transmission activity
Mike Chan [Fri, 28 May 2010 21:32:19 +0000 (14:32 -0700)]
net: activity_stats: Add statistics for network transmission activity

When enabled, tracks the frequency of network transmissions
(inbound and outbound) and buckets them accordingly.
Buckets are determined by time between network activity.

Each bucket represents the number of network transmisions that were
N sec or longer apart. Where N is defined as 1 << bucket index.

This network pattern tracking is particularly useful for wireless
networks (ie: 3G) where batching network activity closely together
is more power efficient than far apart.

New file: /proc/net/stat/activity

output:

Min Bucket(sec) Count
              1 7
              2 0
              4 1
              8 0
             16 0
             32 2
             64 1
            128 0

Change-Id: I4c4cd8627b872a55f326b1715c51bc3bdd6e8d92
Signed-off-by: Mike Chan <mike@android.com>
13 years agonetwork: wireless: bcm4329: Update to Version 4.218.239
Greg Goldman [Mon, 7 Jun 2010 21:48:42 +0000 (14:48 -0700)]
network: wireless: bcm4329: Update to Version 4.218.239
    Add reading mac address from platform data
    Add dhd_os_proto_block protection for dhd_preinit_ioctls
    Revert dhdsdio_clk() changes

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Fix wlan card removal
Dmitry Shmidt [Fri, 4 Jun 2010 02:11:39 +0000 (19:11 -0700)]
network: wireless: bcm4329: Fix wlan card removal

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Fix MAC address import
Greg Goldman [Fri, 4 Jun 2010 01:07:27 +0000 (18:07 -0700)]
network: wireless: bcm4329: Fix MAC address import

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Update to Version 4.218.238
Greg Goldman [Thu, 3 Jun 2010 17:58:51 +0000 (10:58 -0700)]
network: wireless: bcm4329: Update to Version 4.218.238

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: Add get_mac_addr functionality to platform
Dmitry Shmidt [Thu, 3 Jun 2010 17:55:33 +0000 (10:55 -0700)]
network: wireless: Add get_mac_addr functionality to platform

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Remove unnecessary set_freezable() calls
Dmitry Shmidt [Mon, 24 May 2010 16:41:03 +0000 (09:41 -0700)]
network: wireless: bcm4329: Remove unnecessary set_freezable() calls

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Add "HANG" event and console monitoring
Howard Harte [Thu, 20 May 2010 22:07:13 +0000 (15:07 -0700)]
network: wireless: bcm4329: Add "HANG" event and console monitoring

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonetwork: wireless: bcm4329: Add bcm4329 driver
Dmitry Shmidt [Thu, 20 May 2010 01:53:11 +0000 (18:53 -0700)]
network: wireless: bcm4329: Add bcm4329 driver

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agostaging: android: lowmemorykiller: Remove bitrotted codepath
San Mehat [Thu, 6 May 2010 22:43:46 +0000 (15:43 -0700)]
staging: android: lowmemorykiller: Remove bitrotted codepath

Now that we're murder-synchronous, this code path will never be
called (and if it does, it doesn't tell us anything useful other
than we killed a task that was already being killed by somebody
else but hadn't gotten its' signal yet)

Signed-off-by: San Mehat <san@google.com>
13 years agostaging: android: lowmemorykiller: Fix task_struct leak
San Mehat [Thu, 6 May 2010 22:40:07 +0000 (15:40 -0700)]
staging: android: lowmemorykiller: Fix task_struct leak

As it turns out, the CONFIG_PROFILING interfaces leak a
task struct if the notifier chain returns NOTIFY_OK.. doh.

This patch reworks lowmemkiller to use the new generic task
free notifier chain.

Signed-off-by: San Mehat <san@google.com>
13 years agosched: Add a generic notifier when a task struct is about to be freed
San Mehat [Thu, 6 May 2010 22:37:55 +0000 (15:37 -0700)]
sched: Add a generic notifier when a task struct is about to be freed

This patch adds a notifier which can be used by subsystems that may
be interested in when a task has completely died and is about to
have it's last resource freed.

  The Android lowmemory killer uses this to determine when a task
it has killed has finally given up its goods.

Signed-off-by: San Mehat <san@google.com>
13 years agobinder: Fix memory corruption via page aliasing
Christopher Lais [Sat, 1 May 2010 20:51:48 +0000 (15:51 -0500)]
binder: Fix memory corruption via page aliasing

binder_deferred_release was not unmapping the page from the buffer
before freeing it, causing memory corruption.  This only happened
when page(s) had not been freed by binder_update_page_range, which
properly unmaps the pages.

This only happens on architectures with VIPT aliasing.

To reproduce, create a program which opens, mmaps, munmaps, then closes
the binder very quickly.  This should leave a page allocated when the
binder is released.  When binder_deferrred_release is called on the
close, the page will remain mapped to the address in the linear
proc->buffer.  Later, we may map the same physical page to a different
virtual address that has different coloring, and this may cause
aliasing to occur.

PAGE_POISONING will greatly increase your chances of noticing any
problems.

Change-Id: I6941bf212881b8bf846bdfda43d3609c7ae4892e

Signed-off-by: Christopher Lais <chris+android@zenthought.org>
13 years agostaging: android: lowmemkiller: Substantially reduce overhead during reclaim
San Mehat [Wed, 5 May 2010 18:38:42 +0000 (11:38 -0700)]
staging: android: lowmemkiller: Substantially reduce overhead during reclaim

This patch optimizes lowmemkiller to not do any work when it has an outstanding
kill-request. This greatly reduces the pressure on the task_list lock
(improving interactivity), as well as improving the vmscan performance
when under heavy memory pressure (by up to 20x in tests).

Note: For this enhancement to work, you need CONFIG_PROFILING

Signed-off-by: San Mehat <san@google.com>
13 years ago[ARM] Do not call flush_cache_user_range with mmap_sem held
Dima Zavin [Wed, 28 Apr 2010 03:57:04 +0000 (20:57 -0700)]
[ARM] Do not call flush_cache_user_range with mmap_sem held

We can't be holding the mmap_sem while calling flush_cache_user_range
because the flush can fault. If we fault on a user address, the
page fault handler will try to take mmap_sem again. Since both places
acquire the read lock, most of the time it succeeds. However, if another
thread tries to acquire the write lock on the mmap_sem (e.g. mmap) in
between the call to flush_cache_user_range and the fault, the down_read
in do_page_fault will deadlock.

Also, since we really can't be holding the mmap_sem while calling
flush_cache_user_range AND vma is actually unused by the flush itself,
get rid of vma as an argument.

Change-Id: If55409bde41ad1060fa4fe7cbd4ac530d4d9a106
Signed-off-by: Dima Zavin <dima@android.com>
13 years agoUSB: android gadget: mass storage: Fix format issue for Vista Host
Velempati Chiranjeevi [Wed, 21 Oct 2009 04:23:10 +0000 (09:53 +0530)]
USB: android gadget: mass storage: Fix format issue for Vista Host

As part of formating the mass storage device, Host sends the INQUIRY
scsi command. As per the standard, the command length for this
command should be 6 bytes, whereas the Vista host sends 12 bytes.

When the command length of the command is not equal to the standard
length, the device sends a phase error as part of the status phase.
When the host receives a phase error, it re-enumerates, hence the
error.

If the command is INQUIRY, and the command length is 12 bytes,
treating this as a good command and not sending the phase error
to the host fixes this issue.

Signed-off-by: Velempati Chiranjeevi <c_cvelem@qualcomm.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agolowmemorykiller: Don't try to kill the same pid over and over
San Mehat [Mon, 26 Apr 2010 22:11:04 +0000 (15:11 -0700)]
lowmemorykiller: Don't try to kill the same pid over and over

  Under certain circumstances, a process can take awhile to
handle a sig-kill (especially if it's in a scheduler group with
a very low share ratio). When this occurs, lowmemkiller returns
to vmscan indicating the process memory has been freed - even
though the process is still waiting to die. Since the memory
hasn't actually freed, lowmemkiller is called again shortly after,
and picks the same process to die; regardless of the fact that
it has already been 'scheduled' to die and the memory has already
been reported to vmscan as having been freed.

  Solution is to check fatal_signal_pending() on the selected
task, and if it's already pending destruction return; indicating
to vmscan that no resources were freed on this pass.

Signed-off-by: San Mehat <san@google.com>
13 years agoStaging: android: binder: Create dedicated workqueue for binder deferred work
Arve Hjønnevåg [Thu, 22 Apr 2010 22:53:23 +0000 (15:53 -0700)]
Staging: android: binder: Create dedicated workqueue for binder deferred work

Some drivers flush the global workqueue when closed. This would deadlock if
the last reference to the file was released from the binder.

Change-Id: Ifdabc0b383fecb20836d1bbb9786c632402a14e1
Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agoStaging: android: timed_gpio: Properly discard invalid timeout values.
Mike Lockwood [Sat, 17 Apr 2010 16:01:35 +0000 (12:01 -0400)]
Staging: android: timed_gpio: Properly discard invalid timeout values.

The timed output device never previously checked the return value of sscanf,
resulting in an uninitialized int being passed to enable() if input value
was invalid.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoUSB: gadget: f_mass_storage: Defer handling interface changes until it is safe.
Mike Lockwood [Thu, 15 Apr 2010 19:04:07 +0000 (15:04 -0400)]
USB: gadget: f_mass_storage: Defer handling interface changes until it is safe.

Pulling in some code from file_storage.c, we now handle interface changes
in do_set_config(), which is now not called until any pending requests have
been successfully completed or cancelled.

This fixes a race condition that resulted in usb_ep_free_request() being called
while the request is still busy.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoandroid-common: include linux/slab.h
Arve Hjønnevåg [Wed, 21 Apr 2010 05:33:05 +0000 (22:33 -0700)]
android-common: include linux/slab.h

Change-Id: Ib9655177bfaf00bd5682e1ac0d7e813e16a47eea

13 years agoandroid-common: Fix slab.h includes for 2.6.34-rc4
Colin Cross [Thu, 15 Apr 2010 22:21:51 +0000 (15:21 -0700)]
android-common: Fix slab.h includes for 2.6.34-rc4

13 years agortc: alarm: Don't use save_time_delta.
Arve Hjønnevåg [Sat, 13 Mar 2010 04:05:32 +0000 (20:05 -0800)]
rtc: alarm: Don't use save_time_delta.

Change-Id: Iaefeca497de02fe36b7f5d79075912f6e349ec53
Signed-off-by: Arve Hjønnevåg <arve@android.com>