firefly-linux-kernel-4.4.55.git
13 years ago[ARM] tegra: ventana: remove pda-power device
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>
13 years agoARM: tegra: cpufreq: Change function signature for CPU speed throttling
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>
13 years agoARM: tegra: Make CPU thermal throttling configurable
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>
13 years agomfd: Remove tps6586x device ID check
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>
13 years agomfd: Add TPS658621C device ID
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>
13 years agovideo: tegra: nvmap: Add logging to some error conditions
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>
13 years agocrypto: tegra-aes: Disable clock at end of probe
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>
13 years ago[ARM] tegra: ventana: register AES device
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>
13 years ago[ARM] tegra: add aes to devices.c
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>
13 years agocrypto: driver for tegra AES hardware
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>
13 years agoARM: tegra: hardware arbitration semaphore support
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>
13 years agoARM: tegra: duplicate vde clock for aes in tegra2_clocks
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>
13 years agoARM: tegra: add VDE and arb semaphores to iomap.h
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>
13 years agovideo: tegra: fix HDMI audio programming
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>
13 years agousb: host: tegra: Remove clear PORT_RESUME to clear PORT_SUSPEND
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>
13 years agotegra: video: host: fix race condition in hostintr wait list
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>
13 years agousb: ehci: Reduce overhead of the scan_periodic loop
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>
13 years agomedia: video: tegra: avp_svc: Force memory bus to full when avp is enabled
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>
13 years agovideo: tegra: dc: Force memory bus to full when display is enabled
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>
13 years agoARM: tegra: cpufreq: Adjust memory frequency with cpu frequency
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>
13 years agoARM: tegra: dvfs: Add emc clock to dvfs table
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>
13 years agoARM: tegra: clocks: Add emc scaling
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>
13 years agoARM: tegra: Add external memory controller driver
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>
13 years agoARM: tegra: clock: Round rate before dvfs
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>
13 years agovideo: tegra: nvmap: Clear handle->owner on release
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>
13 years agovideo: tegra: nvmap: Fix per client accounting
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>
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: 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 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 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 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 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 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 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 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 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 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 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: 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 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 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 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 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 agovideo: tegra: add option to autodetect bitdepth from bootloader
Erik Gilling [Fri, 12 Nov 2010 01:39:04 +0000 (17:39 -0800)]
video: tegra: add option to autodetect bitdepth from bootloader

Change-Id: I5f17ab96323b3d313473622f572006d01b4716f7
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agovideo: tegra: call disable with interrupts disabled.
James Wylder [Thu, 11 Nov 2010 22:52:32 +0000 (16:52 -0600)]
video: tegra: call disable with interrupts disabled.

Change-Id: Idb126c14f6e18efcb64f3f613772640b8bd3fca0
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoARM: tegra: flush console before reboot
Dima Zavin [Thu, 11 Nov 2010 23:28:46 +0000 (15:28 -0800)]
ARM: tegra: flush console before reboot

If the console_sem was held while the system was rebooted, the messages
in the temporary logbuffer would not have propogated to all the console
drivers.

This force releases the console sem if it failed to be acquired.

Change-Id: I6eba9d744ef41209d26328a17c7ae19c32d6e8cb
Signed-off-by: Dima Zavin <dima@android.com>
13 years agovideo: add rgb disable handler
James Wylder [Thu, 11 Nov 2010 18:55:59 +0000 (12:55 -0600)]
video: add rgb disable handler

Adjust pinmux on disable in order to save power/leakage

Change-Id: I65b642c128a780aa8932205052ccee199e4c41bf
Signed-off-by: James Wylder <james.wylder@motorola.com>
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agomedia: tegra: avp: fix a mutex leak on an err path in lib load
Dima Zavin [Wed, 10 Nov 2010 18:18:04 +0000 (10:18 -0800)]
media: tegra: avp: fix a mutex leak on an err path in lib load

Also hold the mutex for longer on cleanup, while deleting
the libs nvmap client. Not strictly necessary...

Change-Id: I4dfdb065211571338053a16bacc2e5412c26ae77
Signed-off-by: Dima Zavin <dima@android.com>
13 years agovideo: tegra: delay HDMI hotplug detection until after resume
Erik Gilling [Wed, 10 Nov 2010 23:32:58 +0000 (15:32 -0800)]
video: tegra: delay HDMI hotplug detection until after resume

Change-Id: I87c35dc3e1287fc1d936e554013deb2f92cbd6f4
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agovideo: tegra: mark a window's handle as unused when it is
Erik Gilling [Wed, 10 Nov 2010 23:29:35 +0000 (15:29 -0800)]
video: tegra: mark a window's handle as unused when it is

Change-Id: Iedc9a26f62e14c0263f0f315e589a672762ab31a
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agomedia: video: tegra: add avp port transport info to debug dump
Dima Zavin [Tue, 9 Nov 2010 00:59:22 +0000 (16:59 -0800)]
media: video: tegra: add avp port transport info to debug dump

Change-Id: I7ade4469609ecf87663e6a6733842889b27f7ce5
Signed-off-by: Dima Zavin <dima@android.com>
13 years agomedia: video: tegra: add debugfs entry for tegra_rpc
Dima Zavin [Mon, 8 Nov 2010 21:58:04 +0000 (13:58 -0800)]
media: video: tegra: add debugfs entry for tegra_rpc

For now just includes the existing ports, the peer owners,
and the port and peer state.

Change-Id: I2c6b603ca02dc48acc1c763380ff0f1cb66f482b
Signed-off-by: Dima Zavin <dima@android.com>
13 years agomedia: video: tegra: wait for remote ack on disconnect
Dima Zavin [Tue, 9 Nov 2010 18:27:18 +0000 (10:27 -0800)]
media: video: tegra: wait for remote ack on disconnect

Change-Id: I42bf507b7d644184bd27be6ff53e5974dcfa3797
Signed-off-by: Dima Zavin <dima@android.com>
13 years agoARM: tegra: usb_phy: Correct utmi power off sequence
Jay Cheng [Tue, 9 Nov 2010 05:22:28 +0000 (00:22 -0500)]
ARM: tegra: usb_phy: Correct utmi power off sequence

USB_WAKE_ON_CNNT_EN_DEV is only valid when USB controller is in device mode.

Also only one of USB_WAKE_ON_CNNT_EN_DEV and USB_WAKE_ON_DISCON_EN_DEV bits
can be set at any one time.

Change-Id: I76d7fcf73e6ab8fa1610ec4264060c44b221775c
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agoARM: tegra: dvfs: Fix dvfs disable config option
Colin Cross [Tue, 9 Nov 2010 23:48:55 +0000 (15:48 -0800)]
ARM: tegra: dvfs: Fix dvfs disable config option

Change-Id: If976cc25147d96fd1130f48301017ce696e38f4f
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: dvfs: Add lock to dvfs_reg
Colin Cross [Tue, 9 Nov 2010 00:30:48 +0000 (16:30 -0800)]
ARM: tegra: dvfs: Add lock to dvfs_reg

Change-Id: I0496cf37da3a20d697eb4f372c32d01d49352f98
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: dvfs: Fix locking on external dvfs calls
Colin Cross [Tue, 9 Nov 2010 00:30:11 +0000 (16:30 -0800)]
ARM: tegra: dvfs: Fix locking on external dvfs calls

Change-Id: I9e3a3cc8c6c4424d7f7ded22d886d51f715ec5d5
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: dvfs: Add config options to disable dvfs
Colin Cross [Tue, 9 Nov 2010 21:50:25 +0000 (13:50 -0800)]
ARM: tegra: dvfs: Add config options to disable dvfs

Change-Id: I401ab5587f28dfabaf0aae1ffa062a2411a1ad92
Signed-off-by: Colin Cross <ccross@android.com>
13 years ago[ARM] tegra: cleanup empty functions in mach/fb.h
Erik Gilling [Tue, 9 Nov 2010 21:59:43 +0000 (13:59 -0800)]
[ARM] tegra: cleanup empty functions in mach/fb.h

adds static inline

Change-Id: Iff0473dcc02ad6d10adb878f195b57a2ed6e3e2a
Signed-off-by: Erik Gilling <konkers@android.com>