firefly-linux-kernel-4.4.55.git
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
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

13 years agoMerge remote branch 'common/android-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

13 years ago[ARM] tegra: spdif/i2s audio: fixes
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>
13 years agotegra: video: host: remove cancelled actions at power down
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>
13 years agotegra: video: host: reset syncpoints on host initialization
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>
13 years agovideo: tegra: host: Added nvhost resume.
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>
13 years ago[ARM] tegra: ventana: fix gpio key for menu options
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>
13 years agoregulator: tps6586x: Handle both enable reg/bits being the same
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>
13 years agoregulator: tps6586x: correct register table
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>
13 years agoregulator: tps6586x: Add missing bit mask generation
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>
13 years agoregulator: tps6586x: Fix TPS6586X_DVM to store goreg/bit
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>
13 years agoRevert "usb: host: tegra: Remove programing PTC bits based on bus speed."
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

13 years ago[ARM] tegra: cpufreq: Support for tegra cpu throttling
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>
13 years agousb: gadget: Multiple ACM gadget instances
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>
13 years agousb: gadget: Fixed Android gadget function discovery & product matching
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>
13 years agoMerge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
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

13 years agoMerge remote branch 'tegra/linux-tegra-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

13 years agonet: wireless: bcm4329: Fix memory leak in case of dhd_bus_init() failure
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>
13 years agousb: gadget: fsl_udc: Fix a race between ep_disable and ep_queue
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>
13 years agocpufreq interactive governor save/restore IRQs around cpumask spinlocks
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>
13 years agonet: wireless: bcm4329: Fix driver 'start' retry ability
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>
13 years agonet: wireless: bcm4329: Fix watchdog syncronization during start/stop
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>
13 years agovideo: tegra: fix DC_CMD_STATE_CONTROL_UPDATE register values
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>
13 years agoARM: tegra: suspend: Fix build with CONFIG_CACHE_L2X0=n
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>
13 years ago[ARM] tegra_i2s_audio: don't turn off hardware during over/underflow
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>
13 years ago[ARM] tegra: dma: Remove spam log
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>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
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

13 years agoMerge branch 'android-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

13 years agoARM: tegra: dvfs: Allow boot or run time disabling of dvfs rails
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>
13 years agoARM: tegra: Add dvfs rails
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>
13 years agoRevert "ARM: tegra: dvfs: Fix locking on external dvfs calls"
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

13 years agovideo: tegra: fix vblank detection
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>
13 years agoext4: initialize the percpu counters before replaying the journal
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>
13 years agofuse: fix attributes after open(O_TRUNC)
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>
13 years agoARM: tegra: clock: Allow any clock to be a shared clock
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>
13 years agocpufreq: interactive: New 'interactive' governor
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

13 years agoMerge branch linux-tegra-2.6.36 into android-tegra-2.6.36
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

13 years agovideo: tegra: set up high priority on all overlays
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>
13 years agoARM: tegra: enable emc clock updates after lp0
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>
13 years ago[ARM] tegra: ventana: fix volume up gpio
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>
13 years ago[ARM] tegra2_clocks: remove incorrectly-defined frequencies
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>
13 years ago[ARM] tegra_i2s_audio: remove unnecessary clocks
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>
13 years ago[tegra i2c] add de-bounce cycles.
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>
13 years agomedia: video: tegra: avp: turn off chatty avp/rpc debug logging
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>
13 years agomedia: video: tegra: avp: make avp_svc have separate debug mask
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>
13 years agomedia: video: tegra: properly drop refs to sclk on cleanup
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>
13 years agousb: host: tegra: Reduce busy polling duration
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>
13 years agoARM: tegra: clock: Fix cpu pll table entry for 608MHz
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>
13 years agoARM: tegra: Rearrange subsystem initialization order
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>
13 years agoARM: tegra: dma: Add dma initialzation stub when compiled out
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>
13 years agoARM: tegra: fuse: Separate fuse dma initialization
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>
13 years agoARM: tegra: fuse: Fix warnings
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>
13 years agoARM: tegra: fuse: Remove carriage returns in fuse files
Colin Cross [Wed, 24 Nov 2010 22:28:50 +0000 (14:28 -0800)]
ARM: tegra: fuse: Remove carriage returns in fuse files

Change-Id: If3675c8ee7a0e0a5d3f7bd0c147054bc3796deef
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Thu, 25 Nov 2010 00:41:30 +0000 (16:41 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agoARM: tegra: suspend: protect suspend functions with CONFIG_PM
Allen Martin [Fri, 19 Nov 2010 23:51:50 +0000 (15:51 -0800)]
ARM: tegra: suspend: protect suspend functions with CONFIG_PM

Protect suspend/resume functions behind #ifdef CONFIG_PM.  This
prevents a compile error with CONFIG_PM turned off.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: irq: protect irq suspend with CONFIG_PM
Allen Martin [Fri, 19 Nov 2010 22:50:50 +0000 (14:50 -0800)]
ARM: tegra: irq: protect irq suspend with CONFIG_PM

Protect irq suspend/resume functions behind #ifdef CONFIG_PM.
This prevents a link error if CONFIG_PM is turned off.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agousb: host: tegra: protect bus suspend with CONFIG_PM
Allen Martin [Fri, 19 Nov 2010 22:15:34 +0000 (14:15 -0800)]
usb: host: tegra: protect bus suspend with CONFIG_PM

Protect the bus suspend/resume functions behind #ifdef CONFIG_PM.
This prevents a compile error if CONFIG_PM is turned off.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoserial: tegra_hsuart: Use resources instead of platform data.
Jaikumar Ganesh [Sat, 20 Nov 2010 02:23:29 +0000 (18:23 -0800)]
serial: tegra_hsuart: Use resources instead of platform data.

Use resources to pass data to tegra_hsuart to set
mapbase, irq.

Signed-off-by: Jaikumar Ganesh <jaikumar@google.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Wed, 24 Nov 2010 05:39:33 +0000 (21:39 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years ago[ARM] tegra: support to burn device fuses
Varun Wadekar [Mon, 25 Oct 2010 04:49:30 +0000 (10:19 +0530)]
[ARM] tegra: support to burn device fuses

Change-Id: Ic12a93d4212b5f9a7802537b8f21e288aa431005
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years ago[ARM] tegra: fuse read/write apis for fuse burning
Varun Wadekar [Mon, 25 Oct 2010 04:31:28 +0000 (10:01 +0530)]
[ARM] tegra: fuse read/write apis for fuse burning

expose fuse register read and write apis for fuse
burning

Change-Id: Id6785f5506fe9293ddb5072240f49470ca5fcd08
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years ago[ARM] tegra: use dma to read/write fuse registers
Varun Wadekar [Sun, 24 Oct 2010 10:55:32 +0000 (16:25 +0530)]
[ARM] tegra: use dma to read/write fuse registers

tegra2 hangs if fuse registers are accessed during an apb dma
operation. war is to use apb dma to read/write fuse registers
instead.

Change-Id: I4d99a1ad56115c0d73e9cd0679cf38f70f922f3d
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years ago[ARM] tegra: Change size of constants from SZ_64 to 64.
Jaikumar Ganesh [Mon, 22 Nov 2010 20:05:04 +0000 (12:05 -0800)]
[ARM] tegra: Change size of constants from SZ_64 to 64.

Signed-off-by: Jaikumar Ganesh <jaikumar@google.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Iliyan Malchev [Tue, 23 Nov 2010 21:58:43 +0000 (13:58 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

Conflicts:
arch/arm/mach-tegra/tegra_spdif_audio.c

Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years ago[ARM] tegra_spdif_audio: support continuous DMA mode
Iliyan Malchev [Tue, 23 Nov 2010 19:55:27 +0000 (11:55 -0800)]
[ARM] tegra_spdif_audio: support continuous DMA mode

-- Add support for contnuous single-buffered DMA
-- Remove PIO support
-- Added suspend and resume functionality

Signed-off-by: Scott Peterson <speterson@nvidia.com>
Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Iliyan Malchev [Tue, 23 Nov 2010 00:07:44 +0000 (16:07 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

Conflicts:
arch/arm/mach-tegra/tegra_i2s_audio.c

Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Iliyan Malchev [Tue, 23 Nov 2010 00:06:23 +0000 (16:06 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years ago[ARM] tegra_spdif_audio: Enable 16 bit packed mode
Scott Peterson [Tue, 9 Nov 2010 22:22:27 +0000 (16:22 -0600)]
[ARM] tegra_spdif_audio: Enable 16 bit packed mode

Enable 16 bit packed fifo format mode to work avoid
channel swapping when dma underrun occurs.

Added suspend/resume functionality so spdif registers
are restored.

Change-Id: Id80e7903b81fd3b3b84af08dba40196121eb6cb7
Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years ago[ARM] tegra: i2s: Continuous DMA support
Chris Fries [Thu, 18 Nov 2010 18:42:15 +0000 (12:42 -0600)]
[ARM] tegra: i2s: Continuous DMA support

- Refactor DMA interactions to handle continuous single-buffered DMA
- Remove PIO support (obsolete, conflicts with new buffer management)
- Remove sample rate conversion (obsolete)
- Remove error-reporting logic
- Remove TEGRA_AUDIO_IN/OUT_GET/SET_BUF_CONFIG
- Add TEGRA_AUDIO_IN/OUT_GET/SET_NUM_BUFS

Change-Id: I8f21a0bb314aac3b7d1bb4918bda9141e58db38d
Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years agonet: wireless: bcm4329: Add 'setdfschannels' command
Dmitry Shmidt [Fri, 19 Nov 2010 19:20:35 +0000 (11:20 -0800)]
net: wireless: bcm4329: Add 'setdfschannels' command

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Mon, 22 Nov 2010 21:23:31 +0000 (13:23 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Mon, 22 Nov 2010 21:21:49 +0000 (13:21 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agousb: host: tegra: rewrite usb suspend/resume routine.
Jay Cheng [Mon, 22 Nov 2010 16:03:52 +0000 (11:03 -0500)]
usb: host: tegra: rewrite usb suspend/resume routine.

Tegra host controller will time the resume operation to clear the bit
when the port control state switches to HS or FS Idle. This behavior
is different from EHCI where the host controller driver is required
to set this bit to a zero after the resume duration is timed in the
driver.

Poll PORT_SUSPEND bit till the suspend is completed. Write PORT_RESUME to 0
to clear PORT_SUSPEND bit.

Disable disconnect detection during resume.

Change-Id: I30a45dc7e7a87773a93c128877d0f0827e5d44b7
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agoARM: tegra: usb_phy: Disable disconnect detection during resume
Jay Cheng [Mon, 22 Nov 2010 16:03:52 +0000 (11:03 -0500)]
ARM: tegra: usb_phy: Disable disconnect detection during resume

Change-Id: I30a45dc7e7a87773a93c128877d0f0827e5d44b7
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agousb: gadget: rndis: don't use dev_get_stats
Benoit Goby [Wed, 17 Nov 2010 22:27:51 +0000 (14:27 -0800)]
usb: gadget: rndis: don't use dev_get_stats

Since 2.6.36, spin_lock_bh has been added to dev_txq_stats_fold. So
dev_get_stats cannot be called from atomic context.

Replaced it by netdev_stats_to_stats64 to copy the stats directly. This
will work if the device driver does not need txq tx stats folding.

http://lkml.org/lkml/2010/9/20/250

Change-Id: I715b00892beda56cc369139d6e2bdc9efb6bfe79
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agovideo: tegra: host: Fix bounds-checking
Robert Morell [Sat, 20 Nov 2010 03:17:36 +0000 (19:17 -0800)]
video: tegra: host: Fix bounds-checking

The length of the mod_locks array is NV_HOST1X_NB_MLOCKS, not
NV_HOST1X_SYNCPT_NB_PTS.

Change-Id: Ibce054bb8a168f2b83646745f2b62cd282b8ff9d
Signed-off-by: Robert Morell <rmorell@nvidia.com>
Acked-by: Erik Gilling <konkers@android.com>
13 years agovideo: tegra: Scale colors in pseudopalette
Robert Morell [Sat, 20 Nov 2010 02:55:51 +0000 (18:55 -0800)]
video: tegra: Scale colors in pseudopalette

This fixes incorrect colors drawn by clients such as fbconsole.  As
described by skeletonfb's fb_setcolreg: "The values supplied have a 16
bit magnitude which needs to be scaled in this function for the
hardware."

Tested with both r8g8b8 and r5g6b5 pixel depths and fbconsole.

Change-Id: Ie3c3579502ddab8843a8a4dc7049c6efaa5d0ac1
Signed-off-by: Robert Morell <rmorell@nvidia.com>
Acked-by: Erik Gilling <konkers@android.com>
13 years agotegra: SDHCI: disable clock at suspend
Todd Poynor [Fri, 19 Nov 2010 04:24:24 +0000 (20:24 -0800)]
tegra: SDHCI: disable clock at suspend

Ensure sdmmc<n> clock is disabled at suspend, and that the subsequent
resume will perform clock enable processing, which is required if LP0
suspend is in effect.

Change-Id: Ia98698f13cc557040e5fdbc523a97effb63ac63b
Signed-off-by: Todd Poynor <toddpoynor@google.com>
13 years agoMerge branch linux-tegra-2.6.36 into android-tegra-2.6.36
Erik Gilling [Fri, 19 Nov 2010 00:36:48 +0000 (16:36 -0800)]
Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36

Change-Id: Iff6fb3eee3b96120f3973ccada4c0b0772dbc2b3

13 years agotegra: video: make tegra_dc_is_yuv_planar return bool
Erik Gilling [Fri, 19 Nov 2010 00:21:02 +0000 (16:21 -0800)]
tegra: video: make tegra_dc_is_yuv_planar return bool

Change-Id: I8adaea9eeb20f1c90b33d41a5b462ab8ee515b49
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agovideo: tegra: YUV overlay support
Ari Hirvonen [Wed, 17 Nov 2010 12:17:40 +0000 (14:17 +0200)]
video: tegra: YUV overlay support

Change-Id: I4bed4d37bc275cca9ef69390c217498529121db0
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Thu, 18 Nov 2010 23:49:06 +0000 (15:49 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agoMerge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Thu, 18 Nov 2010 23:48:39 +0000 (15:48 -0800)]
Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36

13 years agoARM: tegra: usb_phy: Disable HS disconnect detect for USB2 port
Nathan Connell [Thu, 18 Nov 2010 17:12:37 +0000 (11:12 -0600)]
ARM: tegra: usb_phy: Disable HS disconnect detect for USB2 port

Signed-off-by: Nathan Connell <w14185@motorola.com>
Change-Id: Ia0c24128af0f1def38d0902b15a274582c302ce2

13 years agonet: wireless: bcm4329: Use non-DFS channels only for US
Dmitry Shmidt [Thu, 18 Nov 2010 22:31:18 +0000 (14:31 -0800)]
net: wireless: bcm4329: Use non-DFS channels only for US

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Improve way to detect BT SCO connection for BT-coex
Greg Goldman [Thu, 18 Nov 2010 22:08:58 +0000 (14:08 -0800)]
net: wireless: bcm4329: Improve way to detect BT SCO connection for BT-coex

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agonet: wireless: bcm4329: Update to Version 4.218.248-15
Greg Goldman [Thu, 18 Nov 2010 21:49:25 +0000 (13:49 -0800)]
net: wireless: bcm4329: Update to Version 4.218.248-15

- Increase default Listen Interval to 20 Beacons
- Add logic to adjust SKIP_DTIM if Listen Interval < DTIM * DTIM_SKIP to
  avoid data lost due to fact that packet maybe not retrieved during Listen
  Interval and AP may toss it
- Fix problem with Hidden AP setting after AP reconfigure
- Add new SoftAP optional parameter as COUNTRY to pass country code to SoftAP

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years ago[ARM] tegra: dma: Single buffered continuous DMA
Chris Fries [Thu, 11 Nov 2010 23:39:06 +0000 (17:39 -0600)]
[ARM] tegra: dma: Single buffered continuous DMA

- Added "single buffer continuous DMA" mode in addition to the
  "double buffer continuous DMA" mode that is already implemented
- Changed the queuing of next buffer to be more flexible for
  continuous DMA.  It can now get in-flight right after a transfer
  starts, or whenever the client enqueues a buffer.

Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years agonet: wireless: bcm4329: Set first channel passive scan to 30 ms
Dmitry Shmidt [Thu, 18 Nov 2010 00:20:48 +0000 (16:20 -0800)]
net: wireless: bcm4329: Set first channel passive scan to 30 ms

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoARM: fiq_debugger: Add help command
Dmitry Shmidt [Tue, 16 Nov 2010 23:40:13 +0000 (15:40 -0800)]
ARM: fiq_debugger: Add help command

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Wed, 17 Nov 2010 22:18:29 +0000 (14:18 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agovideo: tegra: fill in transparency info in 32bpp FB mode
Erik Gilling [Wed, 17 Nov 2010 22:11:59 +0000 (14:11 -0800)]
video: tegra: fill in transparency info in 32bpp FB mode

also remove incorrect support for 24bpp

Change-Id: Ic6528760bf2585ca5e7a2a68a200e3346694505e
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoMerge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Wed, 17 Nov 2010 21:20:43 +0000 (13:20 -0800)]
Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36

13 years agoUSB: gadget: f_mtp: Zero length packet fixes
Mike Lockwood [Wed, 17 Nov 2010 16:16:35 +0000 (11:16 -0500)]
USB: gadget: f_mtp: Zero length packet fixes

Send zero length packets at end of transfers that are a multiple of the
bulk max packet size as required by MTP.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agomisc: kernel_debugger: Add help command
Dmitry Shmidt [Tue, 16 Nov 2010 23:39:43 +0000 (15:39 -0800)]
misc: kernel_debugger: Add help command

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agoUSB: gadget: f_mtp: Support for file transfer length greater than 4 gigabytes
Mike Lockwood [Tue, 16 Nov 2010 22:14:32 +0000 (17:14 -0500)]
USB: gadget: f_mtp: Support for file transfer length greater than 4 gigabytes

For backward compatibility with PTP, MTP is limited to a 32-bit file size.
When transferring files greater than 4 gig, MTP uses 0xFFFFFFFF as the file size
and the receiver reads until it receives a short packet.

Expanded size of mtp_file_range.length to 64 bits and added support for
writing zero length packets.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Tue, 16 Nov 2010 22:32:19 +0000 (14:32 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

Change-Id: Ia027b838f8971f49b3f8cd276e2bc74f050210a7

13 years agoUSB: gadget: f_mtp: Return zero result for successful file transfer.
Mike Lockwood [Mon, 15 Nov 2010 20:22:21 +0000 (15:22 -0500)]
USB: gadget: f_mtp: Return zero result for successful file transfer.

Returning number of bytes transfered does not work for files > 2 gig
since ioctl() result is a signed integer.

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agousb: host: tegra: Remove programing PTC bits based on bus speed.
Jay Cheng [Wed, 10 Nov 2010 23:40:46 +0000 (18:40 -0500)]
usb: host: tegra: Remove programing PTC bits based on bus speed.

Program PTC bits as NORMAL_OP is enough when resume.

Change-Id: I229eb3ef2ebaff72d023179502ec7a8904e87682
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agoMerge branch linux-tegra-2.6.36 into android-tegra-2.6.36
Erik Gilling [Fri, 12 Nov 2010 02:12:08 +0000 (18:12 -0800)]
Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36

Change-Id: I15e4d0a951e48c27e8f155e94c19f8fbe37131a0