Rebecca Schultz Zavin [Tue, 21 Dec 2010 19:51:15 +0000 (11:51 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Varun Wadekar [Wed, 8 Dec 2010 12:51:59 +0000 (18:21 +0530)]
[ARM] tegra: ventana: remove pda-power device
pda-power is only needed on pdas and phones.
Change-Id: I46a668cc0ee3f4b23c63de48251591cf4a8f99e8
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Todd Poynor [Mon, 20 Dec 2010 23:53:54 +0000 (15:53 -0800)]
ARM: tegra: cpufreq: Change function signature for CPU speed throttling
The NCT1008 driver is now passed a function pointer from the board
file's platform data to be called when alarms are asserted or
deasserted. Switch to a single function for throttling
enable/disable suitable for calling via the temperature alarm
callback.
Change-Id: Ic0eb1566a68e151216e26dfb6ed6f4bc7a273ddb
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Todd Poynor [Sat, 18 Dec 2010 03:36:23 +0000 (19:36 -0800)]
ARM: tegra: Make CPU thermal throttling configurable
Based on work by Dmitriy Gruzman and Varun Wadekar.
Change-Id: I64d765628223b7ef1ec493b9e409ea11e9391b94
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Stephen Warren [Thu, 9 Dec 2010 17:30:11 +0000 (10:30 -0700)]
mfd: Remove tps6586x device ID check
... and convert it to a dev_info print at probe time.
There are many variants of this chip with different values of VERSIONCRC.
The set of values is large, and not useful to enumerate. All are SW
compatible. The difference lies in default settings of the various power
rails, and other similar differences. The driver, or clients of the
driver, shouldn't be affected by this, since all rails should be
programmed into the desired state in all cases for correct operation.
Derived-from-code-by: Andrew Chew <achew@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Andrew Chew [Tue, 19 Oct 2010 09:08:36 +0000 (11:08 +0200)]
mfd: Add TPS658621C device ID
The interface for this device should be identical to that of the
TPS658521A.
Signed-off-by: Andrew Chew <achew@nvidia.com>
Acked-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Colin Cross [Sat, 18 Dec 2010 01:23:38 +0000 (17:23 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Wed, 24 Nov 2010 05:37:04 +0000 (21:37 -0800)]
cgroup: Remove call to synchronize_rcu in cgroup_attach_task
synchronize_rcu can be very expensive, averaging 100 ms in
some cases. In cgroup_attach_task, it is used to prevent
a task->cgroups pointer dereferenced in an RCU read side
critical section from being invalidated, by delaying the
call to put_css_set until after an RCU grace period.
To avoid the call to synchronize_rcu, make the put_css_set
call rcu-safe by moving the deletion of the css_set links
into free_css_set_work, scheduled by the rcu callback
free_css_set_rcu.
The decrement of the cgroup refcount is no longer
synchronous with the call to put_css_set, which can result
in the cgroup refcount staying positive after the last call
to cgroup_attach_task returns. To allow the cgroup to be
deleted with cgroup_rmdir synchronously after
cgroup_attach_task, have rmdir check the refcount of all
associated css_sets. If cgroup_rmdir is called on a cgroup
for which the css_sets all have refcount zero but the
cgroup refcount is nonzero, reuse the rmdir waitqueue to
block the rmdir until free_css_set_work is called.
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 24 Nov 2010 05:37:03 +0000 (21:37 -0800)]
cgroup: Set CGRP_RELEASABLE when adding to a cgroup
Changes the meaning of CGRP_RELEASABLE to be set on any cgroup
that has ever had a task or cgroup in it, or had css_get called
on it. The bit is set in cgroup_attach_task, cgroup_create,
and __css_get. It is not necessary to set the bit in
cgroup_fork, as the task is either in the root cgroup, in
which can never be released, or the task it was forked from
already set the bit in croup_attach_task.
Signed-off-by: Colin Cross <ccross@android.com>
Rebecca Schultz Zavin [Fri, 17 Dec 2010 23:29:50 +0000 (15:29 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Fri, 17 Dec 2010 23:06:38 +0000 (15:06 -0800)]
video: tegra: nvmap: Add logging to some error conditions
Change-Id: I1ec34fd4a6bb21a6d84912a7228c209f459261be
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Colin Cross [Fri, 17 Dec 2010 07:09:45 +0000 (23:09 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Thu, 16 Dec 2010 20:51:22 +0000 (12:51 -0800)]
crypto: tegra-aes: Disable clock at end of probe
Change-Id: Ie5b98b705a7ec70782df5dc0aec69438b699661c
Signed-off-by: Colin Cross <ccross@android.com>
Erik Gilling [Wed, 15 Dec 2010 02:10:08 +0000 (18:10 -0800)]
Merge remote branch android-2.6.36 into android-tegra-2.6.36
Change-Id: Ice30bc601132f829abd664c68ddc61cbcdb8668c
Dima Zavin [Tue, 14 Dec 2010 22:12:05 +0000 (14:12 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Varun Wadekar [Sun, 17 Oct 2010 00:44:37 +0000 (06:14 +0530)]
[ARM] tegra: ventana: register AES device
Change-Id: I5badd8d4967d7a98439b6f4b5d1329b28ee0c2d4
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Sun, 17 Oct 2010 00:40:43 +0000 (06:10 +0530)]
[ARM] tegra: add aes to devices.c
Change-Id: Id13075009d785e784ae6bd0feb9b29f3fa7184df
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Mon, 18 Oct 2010 11:29:31 +0000 (16:59 +0530)]
crypto: driver for tegra AES hardware
driver supports ecb/cbc/ansi_x9.31rng modes, 128, 192 and 256-bit key sizes
and encrypt/decrypt using ssk.
Change-Id: I63e03ead5b53adc5e44cf5b60f9f700dea2a2e61
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Fri, 15 Oct 2010 17:12:14 +0000 (22:42 +0530)]
ARM: tegra: hardware arbitration semaphore support
add apis to use the hardware arbitration semaphores in order
to share hardware modules between kernel drivers and AVP
firmware (e.g., the BSEA (audio bitstream) engine and
AES block)
Change-Id: I500ef0797223bc702151ad14e0e2156f50644a2a
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Wed, 10 Nov 2010 12:51:21 +0000 (18:21 +0530)]
ARM: tegra: duplicate vde clock for aes in tegra2_clocks
Change-Id: If5ad2bfe767c7c43e83fd78ac1cb3d9c62fe785d
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Fri, 15 Oct 2010 17:04:33 +0000 (22:34 +0530)]
ARM: tegra: add VDE and arb semaphores to iomap.h
Change-Id: Ic47b80d1c7fdf04305afbea4b34d6c9e9c9304ad
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Mike Lockwood [Sat, 11 Dec 2010 00:30:15 +0000 (16:30 -0800)]
USB: gadget: composite: Use separate switches for connected and config state
Also remove disconnect debouncing, which didn't actually work on some platforms
Signed-off-by: Mike Lockwood <lockwood@android.com>
Erik Gilling [Tue, 14 Dec 2010 05:12:12 +0000 (21:12 -0800)]
Merge remote branch android-2.6.36 into android-tegra-2.6.36
Change-Id: Ifd4c8ddc62f0c6e213d203498891d151d9b06442
Erik Gilling [Tue, 14 Dec 2010 05:11:04 +0000 (21:11 -0800)]
Merge remote branch linux-tegra-2.6.36 into android-tegra
Change-Id: I90cac044708a1b51ed15374b20709180ed92270a
Erik Gilling [Tue, 14 Dec 2010 04:51:43 +0000 (20:51 -0800)]
video: tegra: fix HDMI audio programming
This was causing the Onkyo TXNR708 to drop out audio.
Change-Id: I9b9fd782d39d60c3207ea140a94d074b1338c7fa
Signed-off-by: Erik Gilling <konkers@android.com>
Benoit Goby [Mon, 13 Dec 2010 23:27:06 +0000 (15:27 -0800)]
PM: Wait for completion of the parent resume before resuming
If the parent device is in the DPM_RESUMING state, resume might get called
before the parent's resume has completed, because dpm_wait won't get
called. This issue was introduced by:
3d46a3c PM: Prevent waiting forever on asynchronous resume after abort
Wait for completion of the parent resume if the parent state is >= DPM_OFF
or == DPM_RESUMING
Change-Id: I14a4e16426f61efceaefedc7e772f53b7522b5dd
Signed-off-by: Benoit Goby <benoit@android.com>
Greg Goldman [Mon, 13 Dec 2010 17:57:24 +0000 (09:57 -0800)]
net: wireless: bcm4329: Update to Version 4.218.248-17
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
John Michelau [Fri, 10 Dec 2010 19:51:19 +0000 (13:51 -0600)]
USB: gadget: acm,rndis: IAD class, subclass & prot should match 1st iface
Microsoft recommends that the class and subclass fields of
an IAD match the same fields from the first interface in the
collection that the IAD is grouping. In practice, we are also
finding that the protocol fields should also match. Without
this change, the default Microsoft composite driver may not
group interfaces properly, which is what allows child
function drivers with IAD's to load correctly.
Signed-off-by: Mike Lockwood <lockwood@android.com>
John Michelau [Fri, 10 Dec 2010 18:09:53 +0000 (12:09 -0600)]
USB: gadget: composite: Dynamically set IAD bFirstInterface
bFirstInterface should be set equal to bInterfaceNumber of
the first interface in a grouping. It's currently being set
only when a composite device is bound, and it does not get
updated when functions are enabled or disabled.
Signed-off-by: Mike Lockwood <lockwood@android.com>
John Michelau [Fri, 10 Dec 2010 17:33:54 +0000 (11:33 -0600)]
USB: gadget: android Fix gadget descriptor compliance for IAD's
USB-IF core team mandates that composite devices containing
IAD's must use bDeviceClass=0xEF, bDeviceSubClass=0x02, &
bDeviceProtocol=0x01 instead of the usual 0x00 in all fields.
This is not a problem currently on Linux hosts, but it is a
problem when connecting to Windows hosts. Without this change
the default Microsoft composite driver will not group
interfaces properly, which is what allows child function
drivers with IAD's to load correctly.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Jay Cheng [Tue, 7 Dec 2010 15:15:32 +0000 (10:15 -0500)]
usb: host: tegra: Remove clear PORT_RESUME to clear PORT_SUSPEND
PORT_SUSPEND bit will be cleared by the host controller when PORT_RESUME
change to 0.
Change-Id: I94a72f51be1cebee414f11ace89a7e8b3249278d
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
Varun Wadekar [Tue, 23 Nov 2010 14:33:02 +0000 (20:03 +0530)]
tegra: video: host: fix race condition in hostintr wait list
Change-Id: I5e58f5fe8935741441e2b30f585bb997b6317d3d
Author: Alex Frid <afrid@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Benoit Goby [Thu, 9 Dec 2010 02:28:39 +0000 (18:28 -0800)]
usb: ehci: Reduce overhead of the scan_periodic loop
scan_periodic is called with irq disabled. Merged Alan Stern's patch
to reduce the overhead of scan_periodic:
http://article.gmane.org/gmane.linux.usb.general/37441
Here is a patch which ought to reduce the overhead of the loop. It
avoids doing the expensive call to qh_completions() more than once
for each qh.
Change-Id: I218c75a1ce21edd3d58c7e8abd3e7f75880b6ad0
Signed-off-by: Benoit Goby <benoit@android.com>
Colin Cross [Thu, 9 Dec 2010 03:54:37 +0000 (19:54 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Thu, 9 Dec 2010 03:54:28 +0000 (19:54 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Wed, 8 Dec 2010 02:47:38 +0000 (18:47 -0800)]
media: video: tegra: avp_svc: Force memory bus to full when avp is enabled
Change-Id: I51382f58f296df939f99d60926ba97f0b4e04aed
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 23 Nov 2010 02:54:53 +0000 (18:54 -0800)]
video: tegra: dc: Force memory bus to full when display is enabled
Change-Id: Ia9dfef275561fdb3b6f0a37ae0535684a60cb63e
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 23 Nov 2010 02:54:36 +0000 (18:54 -0800)]
ARM: tegra: cpufreq: Adjust memory frequency with cpu frequency
Change-Id: I08c64f64a12bcb11e7c0e466fa77fe971e4b2cba
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sun, 5 Dec 2010 04:33:49 +0000 (20:33 -0800)]
ARM: tegra: dvfs: Add emc clock to dvfs table
Change-Id: Id93dcd0f4cac3164ab776bc4e68d836724b59bee
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 23 Nov 2010 02:37:54 +0000 (18:37 -0800)]
ARM: tegra: clocks: Add emc scaling
Change-Id: Ica5ee704dd35b5fbf02d8c030a8578d5e8694839
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Fri, 3 Dec 2010 23:29:52 +0000 (15:29 -0800)]
ARM: tegra: Add external memory controller driver
Change-Id: Idcef38723b504719a09537612f2f94ad163844f5
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 8 Dec 2010 02:24:55 +0000 (18:24 -0800)]
ARM: tegra: clock: Round rate before dvfs
Call the clock's round_rate op, if it exists, before setting
dvfs rate. Ensures dvfs is set to the rate the clock will
be at after the later call to set_rate.
Change-Id: I4c8e85991238492adc3c37aed57c7269f3b41a2c
Signed-off-by: Colin Cross <ccross@android.com>
Dima Zavin [Tue, 7 Dec 2010 00:31:53 +0000 (16:31 -0800)]
Revert "futex: Restore one of the fast paths eliminated by
38d47c1b7075bd7ec3881141bb3629da58f88dab"
This reverts commit
cb93471ed5d924b6efdfe5d0215668a9b4b91c21.
Change-Id: I7f0b45c29b3b91ba5282c51eb6b315d70ac6c813
Signed-off-by: Dima Zavin <dima@android.com>
Rebecca Schultz Zavin [Tue, 7 Dec 2010 20:01:42 +0000 (12:01 -0800)]
Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
Greg Goldman [Tue, 7 Dec 2010 18:06:32 +0000 (10:06 -0800)]
net: wireless: bcm4329: Add CONFIG_FIRST_SCAN option
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Rebecca Schultz Zavin [Tue, 7 Dec 2010 03:35:21 +0000 (19:35 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Robert Morell [Tue, 7 Dec 2010 01:32:01 +0000 (17:32 -0800)]
video: tegra: nvmap: Clear handle->owner on release
A struct nvmap_handle may be shared by multiple clients. If the
original client (the handle "owner") is destroyed, but the handle is
still referenced by other clients, h->owner points to freed memory. To
prevent this, clear h->owner when the owner frees its reference to that
struct nvmap_handle.
Change-Id: I54722091568ce2058f5988e5f6e00e68605a8100
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Rebecca Schultz Zavin [Tue, 16 Nov 2010 01:02:16 +0000 (17:02 -0800)]
video: tegra: nvmap: Fix per client accounting
Fix the way the total number of carveout allocations is
managed per client.
Change-Id: I3e12e2a98a74cafc1f4c51a48e3c3c549e930160
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Iliyan Malchev [Tue, 7 Dec 2010 02:23:21 +0000 (18:23 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Iliyan Malchev [Tue, 7 Dec 2010 02:22:59 +0000 (18:22 -0800)]
Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
Chris Fries [Sun, 5 Dec 2010 03:49:46 +0000 (21:49 -0600)]
[ARM] tegra: spdif/i2s audio: fixes
-- release can take a long time
Releasing the out file handles can take a long time, because
we wait for a stop completion that may never arrive.
-- fix possible dma list corruption
If things have gone wrong and a "wait_till_stopped()" times
out, prevent list corrption in the DMA by dequeing any
queued requests.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Varun Wadekar [Tue, 23 Nov 2010 14:13:43 +0000 (19:43 +0530)]
tegra: video: host: remove cancelled actions at power down
Change-Id: I2a82ecadafacec53990db25cb456809dbffd999b
Author: Alex Frid <afrid@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Wed, 24 Nov 2010 08:42:30 +0000 (14:12 +0530)]
tegra: video: host: reset syncpoints on host initialization
Added syncpoints reset to host initialization, to synchronize h/w state
with shadow variables.
Change-Id: Ia0a3a644dc5b30ef98158906bcc96954d1c613ff
Author: Alex Frid <afrid@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Tue, 23 Nov 2010 11:55:32 +0000 (17:25 +0530)]
video: tegra: host: Added nvhost resume.
Added nvhost device resume function, and moved syncpoints restoration
here from run-time power_host() control. Respectively added syncpoints
saving to nvhost suspend procedure. This change is required, since
power_host() has no way to account for display advancing syncpoints
after they have been already saved.
Change-Id: I2b5452dd4512c7ea16532d28a2d2894ab88929ca
Author: Alex Frid <afrid@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Varun Wadekar [Mon, 6 Dec 2010 09:44:21 +0000 (15:14 +0530)]
[ARM] tegra: ventana: fix gpio key for menu options
Change-Id: Ia6e5f92fa6f965832546dde95e10b00419396386
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Danny Huang [Wed, 1 Dec 2010 20:37:30 +0000 (13:37 -0700)]
regulator: tps6586x: Handle both enable reg/bits being the same
Change-Id: I40400bb65eab496bb1becd26b37a9653b99d4f41
Signed-off-by: Danny Huang <dahuang@nvidia.com>
Signed-off-by: Olof Johansson <olofj@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
(Split into separate patches)
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Danny Huang [Wed, 1 Dec 2010 20:37:31 +0000 (13:37 -0700)]
regulator: tps6586x: correct register table
Correct the register table for SM2, LDO8, RTC
Change-Id: I45348cec5ffbb7da9bd7523764fb611b537236b8
Signed-off-by: Danny Huang <dahuang@nvidia.com>
Signed-off-by: Olof Johansson <olofj@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Danny Huang [Wed, 1 Dec 2010 20:37:28 +0000 (13:37 -0700)]
regulator: tps6586x: Add missing bit mask generation
Change-Id: I76eaceb31b56264f6978af15db1e6fc7e2e01b5a
Signed-off-by: Danny Huang <dahuang@nvidia.com>
Signed-off-by: Olof Johansson <olofj@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
(Split into separate patches)
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Danny Huang [Wed, 1 Dec 2010 20:37:29 +0000 (13:37 -0700)]
regulator: tps6586x: Fix TPS6586X_DVM to store goreg/bit
Change-Id: Idacf5e1e51dbbbcd5ea93f310a4e907977e7359e
Signed-off-by: Danny Huang <dahuang@nvidia.com>
Signed-off-by: Olof Johansson <olofj@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
(Split into separate patches)
(Minor formatting fixes)
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Benoit Goby [Fri, 3 Dec 2010 22:59:55 +0000 (14:59 -0800)]
Revert "usb: host: tegra: Remove programing PTC bits based on bus speed."
This reverts commit
91e80b79243c1b6341c1a8d6e8e5e872b837bfea.
This is needed to resume usb from lp0
Dmitriy Gruzman [Mon, 29 Nov 2010 21:06:26 +0000 (15:06 -0600)]
[ARM] tegra: cpufreq: Support for tegra cpu throttling
Change-Id: I28d69d22437b6ba2d22e4ce12746630786006071
Signed-off-by: Dmitriy Gruzman <dmitriy.gruzman@motorola.com>
John Michelau [Tue, 9 Nov 2010 00:05:37 +0000 (18:05 -0600)]
usb: gadget: Multiple ACM gadget instances
- Added multiple ACM instance support in Android gadget
- Fixed multiple instance naming issue in ACM function
- Increased max instances from 4 to 8
Change-Id: I65f1b0be94da859bab7ec0ad7cd804b896c7c4c5
Signed-off-by: John Michelau <john.michelau@motorola.com>
John Michelau [Tue, 30 Nov 2010 21:36:29 +0000 (15:36 -0600)]
usb: gadget: Fixed Android gadget function discovery & product matching
- Don't bind until all required functions have registered
- Consider multi-instance functions when matching products
Change-Id: I6fa10567db71d49cd81968c01d75e326ff9a17c8
Signed-off-by: John Michelau <john.michelau@motorola.com>
Rebecca Schultz Zavin [Sat, 4 Dec 2010 00:00:06 +0000 (16:00 -0800)]
Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Fri, 3 Dec 2010 23:59:54 +0000 (15:59 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Dmitry Shmidt [Fri, 3 Dec 2010 22:52:13 +0000 (14:52 -0800)]
net: wireless: bcm4329: Fix memory leak in case of dhd_bus_init() failure
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Benoit Goby [Fri, 3 Dec 2010 00:11:15 +0000 (16:11 -0800)]
usb: gadget: fsl_udc: Fix a race between ep_disable and ep_queue
Fixed a possible null pointer exception when an endpoint gets
disabled while a request is being enqueued in parallel.
Unmap the request buffer if we fail to enqueue the request.
Change-Id: If94cc278c2e6ab58adcf170511e676348365f3f9
Signed-off-by: Benoit Goby <benoit@android.com>
Todd Poynor [Fri, 3 Dec 2010 19:20:09 +0000 (11:20 -0800)]
cpufreq interactive governor save/restore IRQs around cpumask spinlocks
Need to use irqsave/restore spin locking for cpumasks since these
are accessed in timers and in thread context.
Change-Id: I4a53eaf0ced7e73b445feddba90ec11482de9126
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Dmitry Shmidt [Fri, 3 Dec 2010 00:33:41 +0000 (16:33 -0800)]
net: wireless: bcm4329: Fix driver 'start' retry ability
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Dmitry Shmidt [Wed, 1 Dec 2010 22:22:52 +0000 (14:22 -0800)]
net: wireless: bcm4329: Fix watchdog syncronization during start/stop
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Michael I. Gold [Thu, 2 Dec 2010 08:55:13 +0000 (00:55 -0800)]
video: tegra: fix DC_CMD_STATE_CONTROL_UPDATE register values
Change-Id: I4a3e009244b7894e02f9fa440ea8e65578e451f0
Signed-off-by: Erik Gilling <konkers@android.com>
Andrei Warkentin [Fri, 19 Nov 2010 22:10:08 +0000 (16:10 -0600)]
ARM: tegra: suspend: Fix build with CONFIG_CACHE_L2X0=n
Change-Id: I85c3a98d0c9f61153969649bb9de20a9158e9ee4
Signed-off-by: Andrei Warkentin <andreiw@motorola.com>
Chris Fries [Thu, 2 Dec 2010 20:37:47 +0000 (14:37 -0600)]
[ARM] tegra_i2s_audio: don't turn off hardware during over/underflow
-- Leave I2S running during underflow, for a couple of reasons.
First, the I2S buffers a few samples, and if we get a new write
before those samples are flushed, we will keep continuous audio
Second, we burn CPU time stopping and restarting the HW
frequently.
-- Fix TEGRA_AUDIO_IN/OUT_GET/SET_NUM_BUFS, was causing DMA to
read/write to null HW address.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Chris Fries [Thu, 2 Dec 2010 20:22:02 +0000 (14:22 -0600)]
[ARM] tegra: dma: Remove spam log
"Interrupt during enqueue" happens periodically when the
DMA is almost starving. This happens under certain not-
uncommon scenarios.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Colin Cross [Thu, 2 Dec 2010 02:27:24 +0000 (18:27 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Thu, 2 Dec 2010 02:27:19 +0000 (18:27 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Wed, 1 Dec 2010 23:45:30 +0000 (15:45 -0800)]
ARM: tegra: dvfs: Allow boot or run time disabling of dvfs rails
Change-Id: Ie56cbf4ade1bbdb5835851f3c09668c1e0941a2c
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Fri, 19 Nov 2010 23:38:32 +0000 (15:38 -0800)]
ARM: tegra: Add dvfs rails
The previous version of dvfs handled requirements between two
different voltage rails by using two sets of dvfs tables, one
for each rail. That method fails for vdd_aon, which must be
within 170 mV of vdd_core.
Instead, have each dvfs clock only set the voltage rail that
it directly depends on, and add a relationship system to the
voltage rails. When the voltage changes on one rail, it calls
update on all the rails that depend on it. The dependent rails
compare the new voltage of the original rail to their own
voltage, and update their own voltage as necessary.
Change-Id: I17b30a61c7c0c01e44702ab486238789abd47330
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 10 Nov 2010 03:44:20 +0000 (19:44 -0800)]
Revert "ARM: tegra: dvfs: Fix locking on external dvfs calls"
This reverts commit
f58886c359db3c5056fea2d1a41d297f19e9f585.
Change-Id: Ie88d8f79db9bf958fc3b9f261d74d031785161d0
Erik Gilling [Thu, 2 Dec 2010 01:55:06 +0000 (17:55 -0800)]
video: tegra: fix vblank detection
Change-Id: Ib74cbbb0d703c782f64f93930cd234359107021c
Signed-off-by: Erik Gilling <konkers@android.com>
Theodore Ts'o [Wed, 3 Nov 2010 16:03:21 +0000 (12:03 -0400)]
ext4: initialize the percpu counters before replaying the journal
We now initialize the percpu counters before replaying the journal,
but after the journal, we recalculate the global counters, to deal
with the possibility of the per-blockgroup counts getting updated by
the journal replay.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Ken Sumrall [Wed, 24 Nov 2010 20:57:00 +0000 (12:57 -0800)]
fuse: fix attributes after open(O_TRUNC)
The attribute cache for a file was not being cleared when a file is opened
with O_TRUNC.
If the filesystem's open operation truncates the file ("atomic_o_trunc"
feature flag is set) then the kernel should invalidate the cached st_mtime
and st_ctime attributes.
Also i_size should be explicitly be set to zero as it is used sometimes
without refreshing the cache.
Signed-off-by: Ken Sumrall <ksumrall@android.com>
Cc: Anfei <anfei.zhou@gmail.com>
Cc: "Anand V. Avati" <avati@gluster.com>
Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Colin Cross [Tue, 23 Nov 2010 02:32:39 +0000 (18:32 -0800)]
ARM: tegra: clock: Allow any clock to be a shared clock
Change-Id: I7e6be30c7870e8b00a165f99655cd95b917fc6db
Signed-off-by: Colin Cross <ccross@android.com>
Mike Chan [Tue, 22 Jun 2010 18:26:45 +0000 (11:26 -0700)]
cpufreq: interactive: New 'interactive' governor
This governor is designed for latency-sensitive workloads, such as
interactive user interfaces. The interactive governor aims to be
significantly more responsive to ramp CPU quickly up when CPU-intensive
activity begins.
Existing governors sample CPU load at a particular rate, typically
every X ms. This can lead to under-powering UI threads for the period of
time during which the user begins interacting with a previously-idle system
until the next sample period happens.
The 'interactive' governor uses a different approach. Instead of sampling
the CPU at a specified rate, the governor will check whether to scale the
CPU frequency up soon after coming out of idle. When the CPU comes out of
idle, a timer is configured to fire within 1-2 ticks. If the CPU is very
busy from exiting idle to when the timer fires then we assume the CPU is
underpowered and ramp to MAX speed.
If the CPU was not sufficiently busy to immediately ramp to MAX speed, then
the governor evaluates the CPU load since the last speed adjustment,
choosing the highest value between that longer-term load or the short-term
load since idle exit to determine the CPU speed to ramp to.
A realtime thread is used for scaling up, giving the remaining tasks the
CPU performance benefit, unlike existing governors which are more likely to
schedule rampup work to occur after your performance starved tasks have
completed.
The tuneables for this governor are:
/sys/devices/system/cpu/cpufreq/interactive/min_sample_time:
The minimum amount of time to spend at the current frequency before
ramping down. This is to ensure that the governor has seen enough
historic CPU load data to determine the appropriate workload.
Default is 80000 uS.
/sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load
The CPU load at which to ramp to max speed. Default is 85.
Change-Id: Ib2b362607c62f7c56d35f44a9ef3280f98c17585
Signed-off-by: Mike Chan <mike@android.com>
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Bug:
3152864
Erik Gilling [Wed, 1 Dec 2010 21:45:02 +0000 (13:45 -0800)]
Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36
Change-Id: I27504990282eccc4dd6edd16768ae32ad3e4380c
Erik Gilling [Wed, 1 Dec 2010 21:31:36 +0000 (13:31 -0800)]
video: tegra: set up high priority on all overlays
this drastically reduces display controller underruns
Change-Id: I7d57c53cf61db4aac5d1baeb0e31b3a5d6fe9e67
Signed-off-by: Erik Gilling <konkers@android.com>
James Wylder [Sat, 20 Nov 2010 00:12:00 +0000 (18:12 -0600)]
ARM: tegra: enable emc clock updates after lp0
Write a dummy value to EMC_MRW_0 to allow
clock frequency changes after lp0.
Change-Id: I2218967eaf9698eef6dcfe2e3edd89fbce2ebf1a
Signed-off-by: James Wylder <james.wylder@motorola.com>
Varun Wadekar [Thu, 25 Nov 2010 11:26:16 +0000 (16:56 +0530)]
[ARM] tegra: ventana: fix volume up gpio
Change-Id: Ie0e25ee8074f4625feb7473f4d5ce759597ed035
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Iliyan Malchev [Mon, 29 Nov 2010 21:38:19 +0000 (13:38 -0800)]
[ARM] tegra2_clocks: remove incorrectly-defined frequencies
Definitions for 11.2896MHz and 12.288MHz were incorrect. These
frequencies can be still requested through pll_a_out0.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Iliyan Malchev [Wed, 1 Dec 2010 00:27:17 +0000 (16:27 -0800)]
[ARM] tegra_i2s_audio: remove unnecessary clocks
Signed-off-by: Iliyan Malchev <malchev@google.com>
Jay Cheng [Fri, 26 Nov 2010 17:08:39 +0000 (12:08 -0500)]
[tegra i2c] add de-bounce cycles.
Change-Id: I3549105bb1d1a7803a300849ddba9c17dad1efba
Signed-off-by: Ken Radtke <kradtke@nvidia.com>
Dima Zavin [Fri, 19 Nov 2010 21:20:15 +0000 (13:20 -0800)]
media: video: tegra: avp: turn off chatty avp/rpc debug logging
Change-Id: I3f9025285fc5a002dbd436ee76bb6ca757c425ea
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Sat, 13 Nov 2010 00:20:56 +0000 (16:20 -0800)]
media: video: tegra: avp: make avp_svc have separate debug mask
Change-Id: Ib5490a7f7d294760d34a3b9da14281ad96c9b26c
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Mon, 15 Nov 2010 19:22:31 +0000 (11:22 -0800)]
media: video: tegra: properly drop refs to sclk on cleanup
Change-Id: I7af31dc4cd1e2d7a4142f6265665a05ca4f41d15
Signed-off-by: Dima Zavin <dima@android.com>
Jay Cheng [Mon, 22 Nov 2010 16:03:52 +0000 (11:03 -0500)]
usb: host: tegra: Reduce busy polling duration
Change-Id: I63e271409818e33b4c19bb99b00e556bc5a2a4b3
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
Colin Cross [Wed, 24 Nov 2010 22:56:34 +0000 (14:56 -0800)]
ARM: tegra: clock: Fix cpu pll table entry for 608MHz
The 608 MHz table entry would incorrectly produce a 760 MHz
clock for input clocks of 12 MHz, 13 MHz, or 26 MHz.
Change-Id: I6755fdde88f0851770490818dc2e5e1e2d512f20
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 24 Nov 2010 22:52:02 +0000 (14:52 -0800)]
ARM: tegra: Rearrange subsystem initialization order
Fuses must be initialized before clocks, so clocks can
determine the maximum cpu frequency. Clocks must be
initialized before DMA, so DMA can enable the clock.
Once DMA is initialized, all fuses accesses must go
through DMA to avoid a hardware bug.
Change-Id: Id1f58e4f43152ec19000e02f2d1ea45abf141f9c
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 24 Nov 2010 22:49:35 +0000 (14:49 -0800)]
ARM: tegra: dma: Add dma initialzation stub when compiled out
Change-Id: Iac01fa701342a5ed0bbbb1c6e5d38adb401f2d79
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 24 Nov 2010 22:44:09 +0000 (14:44 -0800)]
ARM: tegra: fuse: Separate fuse dma initialization
There is a dependency loop between fuses, clocks, and APBDMA.
If dma is enabled, fuse reads must go through APBDMA to avoid
corruption due to a hw bug. APBDMA requires a clock to be
enabled. Clocks must read a fuse to determine allowable cpu
frequencies.
Separate out the fuse DMA initialization, and allow the fuse
read and write functions to be called without using DMA before
the DMA initialization has been completed. Access to the fuses
before APBDMA is initialized won't hit the hardware bug because
nothing else can be using DMA.
Change-Id: Ib5cb0f346488f2869e8314c5f3b24fd86873f4c3
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 24 Nov 2010 22:34:35 +0000 (14:34 -0800)]
ARM: tegra: fuse: Fix warnings
Change-Id: I2793cb8413669dbae8c6ca92572c423e27f46c4e
Signed-off-by: Colin Cross <ccross@android.com>