Dima Zavin [Mon, 1 Nov 2010 21:31:05 +0000 (14:31 -0700)]
ARM: tegra: add avp platform_device
Change-Id: I8229873e1a450b75d31e6ea4ec64647b88d16844
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Mon, 1 Nov 2010 21:24:21 +0000 (14:24 -0700)]
media: video: tegra: add support for the AVP media offload engine
Change-Id: Ia72e022ad1217ffe75915465ca0e886b16d1a64a
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Mon, 1 Nov 2010 21:20:17 +0000 (14:20 -0700)]
media: video: tegra: Add Tegra RPC support for tegra multimedia framework
Change-Id: I9233c5d7c678f6a9ba1c23af686137bf4d6a4291
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Wed, 3 Nov 2010 17:26:42 +0000 (10:26 -0700)]
ARM: tegra: add avp mailbox address to iomap
Change-Id: I5472f6b6c2b8dd955843efd07d0b31d0f379fee6
Signed-off-by: Dima Zavin <dima@android.com>
Dima Zavin [Thu, 4 Nov 2010 02:08:48 +0000 (19:08 -0700)]
ARM: tegra: add missing spdif device declaration in header
Change-Id: If447711b095ec7025f3bbe232e22444839054927
Signed-off-by: Dima Zavin <dima@android.com>
Todd Poynor [Sat, 6 Nov 2010 01:22:08 +0000 (18:22 -0700)]
ARM: tegra: Don't include idle time in irqsoff/preemptoff tracers
Surprise bonus change: Rename tegra_enter_idle to more accurately reflect
what it does.
Change-Id: I1237e1271df693c109b9db8b47421f8a4c3043c3
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Iliyan Malchev [Fri, 5 Nov 2010 20:03:35 +0000 (13:03 -0700)]
[ARM] tegra_i2s/spdif_audio: move allow_suspend to a work queue
Since pm_qos_update_request() may block, we need to make sure that
allow_suspend is always called in process context.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Rebecca Schultz Zavin [Fri, 5 Nov 2010 20:13:50 +0000 (13:13 -0700)]
Revert "tegra: video: nvmap: Printk if nvmap alloc fails"
This reverts commit
e3ad53ad739afae7e8a4252c807a195e2311cfa7.
Rebecca Schultz Zavin [Thu, 4 Nov 2010 21:39:07 +0000 (14:39 -0700)]
video: tegra: host: Add nvmap client name
Passes a name to nvmap_create_client so it can be tracked
for debugging.
Change-Id: I47c958549c29fb3d5299f6c693e1be79b27a29f3
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Rebecca Schultz Zavin [Thu, 4 Nov 2010 21:35:57 +0000 (14:35 -0700)]
video: tegra: fb: Add nvmap client name
Passes a name to nvmap_create_client so it can be tracked
for debugging.
Change-Id: Id4aa9804d8cc8c04c44f51602362435fb877d1af
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Rebecca Schultz Zavin [Thu, 4 Nov 2010 21:12:37 +0000 (14:12 -0700)]
video: tegra: nvmap: Add names to nvmap client
This modifies the api to allow the user to specify a name
for their clients. This will allow the system to track
allocations from the kernel by name.
Change-Id: I44aad209bc54e72126be3bebfe416b30291d206c
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Rebecca Schultz Zavin [Thu, 4 Nov 2010 19:28:13 +0000 (12:28 -0700)]
video: tegra: nvmap: Move debug info to debugfs
Moves the file tracking clients to debugfs
Add a debugfs file to track the list of allocations per client
Change-Id: I2bb683e3ac0599fa05d962c79ef0b7cbd0007d75
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Colin Cross [Wed, 3 Nov 2010 18:42:20 +0000 (11:42 -0700)]
ARM: tegra: common: Reduce sclk to 120 MHz
Set pll_m_out1, sclk, and hclk to 120 MHz, and pclk to 60 MHz.
Drivers that require a faster bus speed can use a shared bus clock
reference to increase the sclk frequency up to 240 MHz, which will
also increase pll_m_out1, hclk, and pclk.
Change-Id: Ic491da80de1d95e6550cf9351eae185210f55b2a
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Fri, 5 Nov 2010 00:10:09 +0000 (17:10 -0700)]
serial: tegra_hsuart: Fix sleeping while atomic
Move the flush_work outside of stop_tx, do it during suspend and
shutdown instead. Move the tty portion of the tx work into
the dma complete callback, and only handle polling on the fifo and
then requeuing the dma in the work function.
Change-Id: I56db6504d35e5e7019379dc8a4323b4a27c72e59
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 3 Nov 2010 23:32:15 +0000 (16:32 -0700)]
ARM: tegra: clock: Add a pass-through set_rate to super clocks
Change-Id: I55027c93415a59cbf701b1f30e436203316c0d61
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 2 Nov 2010 00:30:33 +0000 (17:30 -0700)]
ARM: tegra: suspend: use clk_get_rate_all_locked
Signed-off-by: Colin Cross <ccross@android.com>
Change-Id: I2d4bfd8728998903f9cff4a0f1ab41e76bdc02d7
Colin Cross [Tue, 2 Nov 2010 00:27:29 +0000 (17:27 -0700)]
ARM: tegra: dvfs: Get rid of dvfs_lock and move init later
Get rid of dvfs_lock, replacing it with the cansleep flag on clocks.
Clocks with the cansleep flag set will lock a mutex before calling
into dvfs.
Also does the regulator api calls during late init, after the
regulators have been probed.
Signed-off-by: Colin Cross <ccross@android.com>
Change-Id: I5b8bd249bd4f3ae495f2076f1e6d2bfb38737f29
Colin Cross [Tue, 2 Nov 2010 00:25:30 +0000 (17:25 -0700)]
ARM: tegra: clock: Redo clock locking
Give each clock its own lock, and remove all lock traversals from
parent to child clocks to prevent AB-BA deadlocks.
Signed-off-by: Colin Cross <ccross@android.com>
Change-Id: I0afb7d1bca956439b1a4f17bbc6748aaec706b49
Colin Cross [Tue, 2 Nov 2010 00:24:32 +0000 (17:24 -0700)]
ARM: tegra: clock: Drop set_rate on audio clocks
Signed-off-by: Colin Cross <ccross@android.com>
Change-Id: Idabc71386e7a2fba214d243405e70149faf47a8e
Colin Cross [Tue, 2 Nov 2010 00:17:47 +0000 (17:17 -0700)]
ARM: tegra: dvfs: Disable dvfs on sdmmc
The sdhci core calls clock functions with a spinlock held, which
conflicts with the mutex in dvfs clocks. Disable dvfs on sdmmc
for now.
Signed-off-by: Colin Cross <ccross@android.com>
Change-Id: I59c0648ab6718571794e082d1f4828f158d00031
Rebecca Schultz Zavin [Wed, 3 Nov 2010 23:42:26 +0000 (16:42 -0700)]
tegra: video: nvmap: Printk if nvmap alloc fails
Prints a log message if the nvmap allocate ioctl fails.
Change-Id: Ia0777bc2fcd665dafff0f8948b01faad3f552d72
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Chris Fries [Wed, 3 Nov 2010 17:45:26 +0000 (12:45 -0500)]
[ARM] tegra_i2s_audio: add support for master/slave switching
- Remove duplicate code between probe() and resume(), make new function
i2s_configure()
- When master, pass the sample rate from the board info
- Clean up some checkpatch.pl complaints.
Change-Id: I0169d9a70c02eaf2173b1f1941a545792c01bc6b
Signed-off-by: Iliyan Malchev <malchev@google.com>
Chris Fries [Mon, 25 Oct 2010 03:48:17 +0000 (22:48 -0500)]
[ARM] tegra_spdif_audio: add timeout to prevent flush deadlock
Signed-off-by: Iliyan Malchev <malchev@google.com>
Chris Fries [Mon, 25 Oct 2010 03:48:17 +0000 (22:48 -0500)]
[ARM] tegra_i2s_audio: add timeout to prevent flush deadlock
Signed-off-by: Iliyan Malchev <malchev@google.com>
Rebecca Schultz Zavin [Mon, 1 Nov 2010 22:39:10 +0000 (15:39 -0700)]
media: video: tegra: add basic camera/isp support
The tegra_camera device includes all clock and regulator
functionality needed to support camera on tegra.
Change-Id: I281f1cb5f360276af832309e35dbe17c98b62bb3
Signed-off-by: Dima Zavin <dima@android.com>
Ravindra Lokhande [Mon, 27 Sep 2010 17:53:41 +0000 (12:53 -0500)]
[ARM] tegra: driver for spdif audio
Creates /dev/spdif_out and /dev/spdif_out_ctl for playback and control
settings. Playback is working.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Dima Zavin [Mon, 1 Nov 2010 22:46:57 +0000 (15:46 -0700)]
ARM: configs: update tegra_defconfig to enable regulators
Change-Id: I64e0f2ef1f57d4d2dc86143145f396dfeb4abe46
Signed-off-by: Dima Zavin <dima@android.com>
Erik Gilling [Sat, 30 Oct 2010 01:01:24 +0000 (18:01 -0700)]
video: tegra: set memory priority higher on DC init
Change-Id: I4196a994b7f83f524fb4bd728e2cb58b8cc078e3
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Sat, 30 Oct 2010 00:59:33 +0000 (17:59 -0700)]
[ARM] tegra: add API to set memory client priority
Change-Id: Id9b157004f7364fb1f7aaffa925b710dcfb90e86
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Fri, 29 Oct 2010 22:05:23 +0000 (15:05 -0700)]
video: tegra: add underflow stats to debug output
Change-Id: Id878f8e7791fa4fa63be1fd39978023ad4f7f93a
Signed-off-by: Erik Gilling <konkers@android.com>
Rebecca Schultz Zavin [Thu, 28 Oct 2010 03:52:19 +0000 (20:52 -0700)]
video: tegra: nvmap: Fix handle ref counting
In the current implementation handles hold references to a
client and clients hold references to their handles. As a
result when a process terminates it's handles can't be cleaned
up and we leak memory. Instead only hold references to handles
from clients.
Change-Id: Iba699e740a043deaf0a78b13b4ea01544675078f
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Colin Cross [Wed, 27 Oct 2010 23:17:57 +0000 (16:17 -0700)]
serial: tegra_hsuart: Remove suspend log spam
Change-Id: I22045608426ff317e6dd7e6f4c8b408f40aeb75f
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 27 Oct 2010 23:17:40 +0000 (16:17 -0700)]
ARM: tegra: suspend: Remove log spam
Change-Id: I6ad42216d74254351f050d2a895681e5f87f269e
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 27 Oct 2010 23:05:41 +0000 (16:05 -0700)]
Revert "video: tegra: add hdmi switch_dev for hotplug notifications"
This reverts commit
831bbd76da80cf5c7986262e39c872dfc0262a95.
Colin Cross [Wed, 27 Oct 2010 21:15:19 +0000 (14:15 -0700)]
ARM: tegra: suspend: Disable FIQs in suspend
Change-Id: I9aaba8c0cada6efcdcc0fe8633f643ec5609b198
Signed-off-by: Colin Cross <ccross@android.com>
Rebecca Schultz Zavin [Tue, 26 Oct 2010 23:41:40 +0000 (16:41 -0700)]
video: tegra: nvmap: Track carveout clients
This patch adds the ability to track the total allocations in a
given carveout heap by client. It also adds a sys file to print
the list of clients, their pids and their respective carveout sizes
Change-Id: I34fc97c3be574d2bd30d7594320ff05f6e13c476
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Jay Cheng [Wed, 27 Oct 2010 15:45:19 +0000 (11:45 -0400)]
usb: host: ehci: Add missed memory barrier in the hcd driver
There is one wmb missing in the usb host controller driver after the queue head
update. Due to this data transaction is not happening on the bus after urb
submission by the hcd driver. Register updates/queue heads data in the memory
is not reflected on the AHB bus. After adding the wmb after queue head update
data transaction the USB bus started with out any delay.
originally fixed by Venkat Moganty <vmoganty@nvidia.com>
Change-Id: Ic834df5172ac2f2eb3bced317d38b4a2e7a44801
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
Greg Meiste [Wed, 8 Sep 2010 18:38:36 +0000 (13:38 -0500)]
[ARM] tegra: Setup regulators for suspend
The regulator framework may need to change certain regulators when
entering suspend.
Change-Id: I584e92b3c32cbd1a63325831822e2704a3dd2774
Signed-off-by: Greg Meiste <w30289@motorola.com>
Iliyan Malchev [Fri, 20 Aug 2010 17:22:10 +0000 (10:22 -0700)]
[ARM] tegra: hsuart: use a workqueue in the tx dma callback
Signed-off-by: Iliyan Malchev <malchev@google.com>
Iliyan Malchev [Fri, 20 Aug 2010 17:22:10 +0000 (10:22 -0700)]
[ARM] tegra: dma: switch to nonthreaded interrupts
Signed-off-by: Iliyan Malchev <malchev@google.com>
Erik Gilling [Wed, 27 Oct 2010 04:05:43 +0000 (21:05 -0700)]
video: tegra: fix dvfs for hdmi
Change-Id: I4e6eef34a1e794e622bec10c9025b3820cd6ba8d
Signed-off-by: Erik Gilling <konkers@android.com>
Colin Cross [Wed, 27 Oct 2010 03:33:24 +0000 (20:33 -0700)]
ARM: tegra: dvfs: hdmi can not be an auto dvfs clock
The hdmi block contains a divider that is not visible to the clock
subsystem, prevent auto dvfs on it so that clk_set_rate can set the
input clock higher than 148.5 MHz.
Change-Id: I7f09f4d099e2f24166a65b1b582fe16c1451deba
Signed-off-by: Colin Cross <ccross@android.com>
Erik Gilling [Tue, 26 Oct 2010 22:30:35 +0000 (15:30 -0700)]
video: tegra: flesh out edid support
* read blocks in a single command instead of byte at a time
* allow reading past segment 0 (edid > 256 bytes)
* handle mutiple extention blocks
* add debugfs file for reading edid
Change-Id: Iec8182cdbccdaa2142e4bbc892202d2e8d73c23b
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Tue, 26 Oct 2010 22:29:11 +0000 (15:29 -0700)]
video: tegra: transmute HDMI modes into supported ones
Change-Id: I37222e9d1617a0ace062e05740365cfe5c0c2af8
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Tue, 26 Oct 2010 22:21:23 +0000 (15:21 -0700)]
video: tegra: allow setting output mode without changing fb geometry
Change-Id: I0a723b4e68c99d2727e12d2c26f1506b1f634f8a
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Tue, 26 Oct 2010 21:25:48 +0000 (14:25 -0700)]
video: tegra: add IOCTL for querying modes
Change-Id: Ic312271b96a8bb8d8b2696448d3ff7fd73a7a851
Signed-off-by: Erik Gilling <konkers@android.com>
Colin Cross [Wed, 27 Oct 2010 00:33:31 +0000 (17:33 -0700)]
ARM: tegra: clock: Don't restore PLLP registers
The PLLP registers are now being restored by the low-level resume code,
and the CPU may be running off PLLP, so don't touch them during clock
resume.
Change-Id: Ida248a929c8b59f2e51f43dbbef1cd792ef68737
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 27 Oct 2010 00:32:13 +0000 (17:32 -0700)]
ARM: tegra: suspend: Save and restore PLLP in low-level suspend
Save and restore the PLLP registers in the platform suspend code, as
the CPU clock may be sourced from the PLLP registers later, before
the clock resume that used to re-enable PLLP has been called.
Change-Id: I0ffc18d8a7f2d62c544328bd44ca7cf62848bc44
Signed-off-by: Colin Cross <ccross@android.com>
Iliyan Malchev [Thu, 21 Oct 2010 23:48:37 +0000 (16:48 -0700)]
[ARM] tegra: dma: expose TEGRA_DMA_MAX_TRANSFER_SIZE, fix typo
NV_DMA_MAX_TRASFER_SIZE --> TEGRA_DMA_MAX_TRANSFER_SIZE
Signed-off-by: Iliyan Malchev <malchev@google.com>
Iliyan Malchev [Wed, 20 Oct 2010 23:48:18 +0000 (16:48 -0700)]
[ARM] tegra: dma: make checkpatch happy
Signed-off-by: Iliyan Malchev <malchev@google.com>
Colin Cross [Mon, 25 Oct 2010 23:23:09 +0000 (16:23 -0700)]
ARM: tegra: clock: Fix warning
Change-Id: I2c175f65b7e7db234f7317e7c51aeea65d33d555
Colin Cross [Sun, 24 Oct 2010 23:10:31 +0000 (16:10 -0700)]
ARM: tegra: Remove debugging from tegra_move_framebuffer
Change-Id: I012b3b565faefe60e7ce581f748905d3baab6da4
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sun, 24 Oct 2010 06:25:52 +0000 (23:25 -0700)]
ARM: tegra: suspend: Track the amount of time spent in suspend
Change-Id: Iee5ec7da45d3405846d8655104d9736eccedb713
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sun, 24 Oct 2010 23:11:03 +0000 (16:11 -0700)]
ARM: tegra: timer: Fix us timer time after resume from LP1
In LP1 suspend, or during a failed LP0 suspend, the core power is
not turned off and the timer register is not reset. Saving the
timer value during suspend and adding it to the offset after resume
will cause the timer value to double for each suspend cycle.
To fix, when resuming subtract the current value of the timer
register from the offset. Also, use the rtc registers to add
the time that passed during suspend.
Change-Id: I9f7ee2089b98cf66af45271f8478fbd9eb2ee250
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sun, 24 Oct 2010 06:22:53 +0000 (23:22 -0700)]
ARM: tegra: timer: Remove 32k clocksource
The 32k clocksource is never used, because it is always registered
at the same time as the us clocksource, which has a higher rating.
Using the 32k clocksource would cause a race condition with the
tegra_rtc driver on the RTC shadow registers. Remove the 32k
clocksource, add a replacement tegra_read_rtc_ms function for the
suspend code to track suspend time, and add a comment on
read_persistent_clock that it should never be called while the
tegra_rtc driver is running. It is currently only called from
timekeeping init, suspend, and resume.
Change-Id: Ic964578e9923b0f0338959f75de1ac170f850337
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sun, 24 Oct 2010 06:22:07 +0000 (23:22 -0700)]
ARM: tegra: irq: Add debugfs file to show wake irqs
Change-Id: I66124275869d5f83024937010e14018b7980bb05
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sat, 23 Oct 2010 22:55:32 +0000 (15:55 -0700)]
ARM: tegra: cpuidle: Keep statistics on idle wake interrupts
Change-Id: Ieaee455b4e52f232c5b1285756c22bcdc7fdc6b4
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sat, 23 Oct 2010 22:01:35 +0000 (15:01 -0700)]
ARM: tegra: suspend: Fix compile issues with CONFIG_SMP=n
Move suspend pagetable creation to suspend.c
Always compile headsmp-t2.S, it's needed for LP2 resume
Change-Id: I9e23c6bf72fff3e98e0549edf1f85bec823a3a38
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sat, 23 Oct 2010 21:56:27 +0000 (14:56 -0700)]
ARM: tegra: cpuidle: Fix compile issues with CONFIG_SMP=n
Change-Id: Id02744bcdfc079a6091be2e8a736bcd3a6cc0ba6
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Sat, 23 Oct 2010 21:55:56 +0000 (14:55 -0700)]
ARM: tegra: cpufreq: Fix compile issues with CONFIG_SMP=n
Change-Id: Id678df6299adfc23a4321ddaff10b4c64a4ed895
Signed-off-by: Colin Cross <ccross@android.com>
James Wylder [Wed, 20 Oct 2010 20:05:09 +0000 (15:05 -0500)]
[ARM] tegra: cpuidle define power_specified
Turn on the cpuidle_device power_specified field
to enable usage of the defined cpuidle_state.power_usage fields
for each state.
Signed-off-by: James Wylder <james.wylder@motorola.com>
Change-Id: Ibca20a937bf4079f61e4b3ae64394d797b4eb287
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Colin Cross [Mon, 25 Oct 2010 21:15:44 +0000 (14:15 -0700)]
ARM: tegra: clock: Remove dependency between "set" and debugfs
Change-Id: I732f9428096d057e08092120c6f8c2890230a242
Colin Cross [Mon, 18 Oct 2010 03:49:48 +0000 (20:49 -0700)]
video: tegra: dc: Call dvfs functions
Change-Id: If3cca5da2abc5e6c3671c8c23af90cd4e029db5c
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 9 Sep 2010 02:49:54 +0000 (19:49 -0700)]
[ARM] tegra: dvfs: Convert cpu to new dvfs, add core dvfs tables
Change-Id: I4020943ee10026866b29302aac177a5bdc259184
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 21 Oct 2010 02:19:58 +0000 (19:19 -0700)]
[ARM] tegra: clock: Refcount periph clock enables
Some peripheral clocks share enable bits. Refcount the enables so
that calling clk_disable on one clock will not turn off another
clock.
Change-Id: Iefb015bc83cac77b3faef8db86cfc42b25c0b6ae
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 04:39:04 +0000 (21:39 -0700)]
[ARM] tegra: clock: Add shared bus clock type
Change-Id: If8022248049e790030f1480f37a074401e24d54c
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 02:16:27 +0000 (19:16 -0700)]
[ARM] tegra: clock: Move unshared clk struct members into union
Change-Id: I4e03194d4a86c73eea4773fbdcaf773e06b6eebf
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 04:38:28 +0000 (21:38 -0700)]
[ARM] tegra: clock: Rearrange static clock tables
Change-Id: I90078bf5e9eaa0fa64681e2ed77c7ac7f7d31804
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 9 Sep 2010 02:46:13 +0000 (19:46 -0700)]
[ARM] tegra: clock: Add new dvfs
New and improved dvfs:
Registered dynamically during init
Exports dvfs functions to control clocks that are not visible to
the clock subsystem
Supports multiple regulators per clock
Fix dvfs on disabled clocks
Adds /d/clock/dvfs to show current voltage requirements
Change-Id: I93794a7761dccc702566e8850bb79f344ff787a2
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 9 Sep 2010 02:41:14 +0000 (19:41 -0700)]
[ARM] tegra: clock: Drop old CPU dvfs
Change-Id: Iaa5377dd1d8bf32e90deb668053c10588642fa03
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 01:04:47 +0000 (18:04 -0700)]
[ARM] tegra: cpufreq: Remove cansleep from clk api
Change-Id: I97614cac27da66a95664664143952f376fc5462e
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 02:16:02 +0000 (19:16 -0700)]
[ARM] tegra: clock: Initialize clocks that have no enable
Change-Id: I136713c2a2ff9fec9fc629ae8f91709e49016618
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 21 Oct 2010 00:47:18 +0000 (17:47 -0700)]
[ARM] tegra: Disable clocks left on by bootloader
Change-Id: I6651ab59b738787ec94f358d5789d950c3d1a563
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 21 Oct 2010 00:47:59 +0000 (17:47 -0700)]
[ARM] tegra: cpufreq: Take an extra reference to pllx
During cpu frequency changes, take an extra reference to pllx so
that it doesn't turn off and on while the cpu is on pllp.
Change-Id: I574d399a67aab21f99473296a29aa1eedc0eedb9
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 9 Sep 2010 02:45:30 +0000 (19:45 -0700)]
[ARM] tegra: common: Enable clocks that should always be on
Change-Id: Ic2cb51d54b0a75081672acf0bccbc859d817cd88
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 16 Sep 2010 21:59:49 +0000 (14:59 -0700)]
[ARM] tegra: clock: Don't use PLL lock bits
The PLL lock bits are not reliable, use per-PLL timeouts instead.
Change-Id: I2749e0d8bcfb0b60dbbcf6378b38307f77ff8d4d
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 9 Sep 2010 03:01:04 +0000 (20:01 -0700)]
[ARM] tegra: clock: Drop debugging
Change-Id: Ic707eb111856eb9bdb165776d011c35d04502a9a
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 9 Sep 2010 02:41:58 +0000 (19:41 -0700)]
[ARM] tegra: clock: Don't BUG on changing an enabled PLL
Change-Id: Id213fd4ad8ae1e4429e31625c8b61d6be3fe708f
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 21 Oct 2010 02:30:48 +0000 (19:30 -0700)]
[ARM] tegra: clock: Add host and avp clocks
Change-Id: Icde28cb63ecb7c210a05d25fbc6be96337f96a17
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 21 Oct 2010 21:48:14 +0000 (14:48 -0700)]
Merge commit 'v2.6.36' into linux-tegra-2.6.36
Erik Gilling [Tue, 19 Oct 2010 21:51:09 +0000 (14:51 -0700)]
video: tegra: clear video modes on hdmi unplug
Change-Id: If9aabc5efa1b934c94e71e0210f38979f6f7e58e
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Tue, 19 Oct 2010 21:49:05 +0000 (14:49 -0700)]
video: tegra: allow clearing of video modes in fb driver
Change-Id: Ibec4fd2ef7136843b68c52b60862b2c5c3e795fc
Signed-off-by: Erik Gilling <konkers@android.com>
Erik Gilling [Tue, 19 Oct 2010 21:48:26 +0000 (14:48 -0700)]
video: tegra: don't enable display when mode is invalid
Change-Id: I84a494f7c125ceadbe39a681a8ed7cfa244a6a2b
Signed-off-by: Erik Gilling <konkers@android.com>
Colin Cross [Wed, 20 Oct 2010 05:11:37 +0000 (22:11 -0700)]
video: tegra: fb: Add flag to flip fb during probe
Change-Id: Ibe65175392fe2fe491cb88b5df0771a17bc0c706
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 01:01:45 +0000 (18:01 -0700)]
video: tegra: dc: Move init to module_init
Move dc init to the device init level so that all clocks are
initialized before the late init level. This depends on I2C
being initialized in the subsys init level.
Change-Id: Iafe759d943b6cc90d5c6718b69e872e14d6acd4e
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Thu, 14 Oct 2010 01:00:21 +0000 (18:00 -0700)]
i2c: busses: i2c-tegra: Move init to subsys_initcall
Some drivers (like hdmi) need to communicate over i2c during probe.
Move the i2c bus init to the subsys init level so that i2c is ready
for the start of the device init level.
Change-Id: I81234d42aa26b657ffc619099e47df09e12083bb
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Wed, 20 Oct 2010 04:09:29 +0000 (21:09 -0700)]
[ARM] tegra: Add function to copy framebuffer contents
Due to conflicting restrictions on the location of the framebuffer
between the bootloader and the protected aperture, the framebuffer
is likely to need to be moved during boot. This patch provides
tegra_move_framebuffer, which can handle move the framebuffer from
lowmem, highmem, or unmapped memory into unmapped memory.
Change-Id: Ic37e5e337cd3129065fe56fd7777a86d06ad69ac
Colin Cross [Wed, 20 Oct 2010 01:33:52 +0000 (18:33 -0700)]
video: tegra: nvmap: Prevent reverting to sysmem for small allocations
Change-Id: Icfe552ad4a968329a1a2959d5b438062587a83b6
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 19 Oct 2010 23:08:48 +0000 (16:08 -0700)]
[ARM] tegra: suspend: Save protected aperture across LP0
Change-Id: Iab66c566957cfbac8ddab615ec92e57c2164ab68
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 19 Oct 2010 23:12:33 +0000 (16:12 -0700)]
[ARM] tegra: Add function to enable protected aperture
Change-Id: I699cee3bc9a131259b330655126146f5d1f92043
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 19 Oct 2010 21:45:50 +0000 (14:45 -0700)]
[ARM] tegra: Use memblock_remove to allocate carveout and framebuffer
This uses the patch by rmk to allow memblock_remove to be used to
remove areas of memory from the 1:1 mapping, allowing them to be
remapped later using iomap or, for Tegra, nvmap.
Also uses memblock_reserve to reserve the lp0 boot vector, so it
doesn't need to be copied later in tegra_init_suspend.
tegra_reserve should be called from the machine reserve callback
after any board-specific memory areas are reserved.
Change-Id: I26be8544a03b6da74fe66dc53a77681d431c303c
Signed-off-by: Colin Cross <ccross@android.com>
Colin Cross [Tue, 19 Oct 2010 19:42:34 +0000 (12:42 -0700)]
[ARM] mm: init: Use memblock to set up memory map
Based on patch by rmk on lkml at http://lkml.org/lkml/2010/10/11/179
Reverts changes to find_limits to fix crash when using memblock_remove
on the end of memory.
Original-author: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Colin Cross <ccross@android.com>
Change-Id: I6137a7939329381e4ed34bfcdc8b713dc50ebcc8
Rebecca Schultz Zavin [Tue, 19 Oct 2010 22:57:40 +0000 (15:57 -0700)]
video: tegra: nvmap: Remove warning from nvmap_pin
The framebuffer driver needs to be able to arbitrarily pin whatever
gets handed to it. Regardless of the interface used, functions need
to unpin as soon as they finish using the gart anyway.
Change-Id: Ida8aea2fb6eaca8bcbf3ae72f8dfa849dc198542
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Chris Fries [Wed, 20 Oct 2010 18:10:29 +0000 (13:10 -0500)]
[ARM] tegra_i2s_audio: support mono capture
Support mono data formats such as DSP PCM Mode with 16 bit mono capture.
This patch also disables the in-driver downsampler.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Linus Torvalds [Wed, 20 Oct 2010 20:30:22 +0000 (13:30 -0700)]
Linux 2.6.36
Linus Torvalds [Wed, 20 Oct 2010 20:18:21 +0000 (13:18 -0700)]
Merge branch 'upstream' of git://git.linux-mips.org/upstream-linus
* 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus:
MIPS: O32 compat/N32: Fix to use compat syscall wrappers for AIO syscalls.
MAINTAINERS: Change list for ioc_serial to linux-serial.
SERIAL: ioc3_serial: Return -ENOMEM on memory allocation failure
MIPS: jz4740: Fix Kbuild Platform file.
MIPS: Repair Kbuild make clean breakage.
Amit Shah [Wed, 20 Oct 2010 03:15:43 +0000 (13:45 +1030)]
virtio: console: Don't block entire guest if host doesn't read data
If the host is slow in reading data or doesn't read data at all,
blocking write calls not only blocked the program that called write()
but the entire guest itself.
To overcome this, let's not block till the host signals it has given
back the virtio ring element we passed it. Instead, send the buffer to
the host and return to userspace. This operation then becomes similar
to how non-blocking writes work, so let's use the existing code for this
path as well.
This code change also ensures blocking write calls do get blocked if
there's not enough room in the virtio ring as well as they don't return
-EAGAIN to userspace.
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
CC: stable@kernel.org
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Wed, 20 Oct 2010 20:13:09 +0000 (13:13 -0700)]
Merge git://git./linux/kernel/git/jejb/scsi-rc-fixes-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
[SCSI] bsg: fix incorrect device_status value
[SCSI] Fix VPD inquiry page wrapper
Iliyan Malchev [Wed, 20 Oct 2010 00:50:32 +0000 (17:50 -0700)]
[ARM] tegra_i2s_audio: add support for selecting tx/rx channels separately
Signed-off-by: Iliyan Malchev <malchev@google.com>
Linus Torvalds [Wed, 20 Oct 2010 16:00:44 +0000 (09:00 -0700)]
Merge branch 'kvm-updates/2.6.36' of git://git./virt/kvm/kvm
* 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
KVM: Fix fs/gs reload oops with invalid ldt