firefly-linux-kernel-4.4.55.git
13 years agoMerge branch linux-tegra-2.6.36 into android-tegra-2.6.36
Erik Gilling [Thu, 3 Feb 2011 02:41:30 +0000 (18:41 -0800)]
Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36

Change-Id: I870875673113113940a47d30010683e51b12a27b

13 years agovideo: tegra: set h/v sync polarity for HDMI
Erik Gilling [Wed, 2 Feb 2011 23:28:32 +0000 (15:28 -0800)]
video: tegra: set h/v sync polarity for HDMI

Change-Id: I4be0eb963c3779b9313ef94476b1589059d4aa3c
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agovideo: tegra: support v/h sync polarity
Erik Gilling [Wed, 2 Feb 2011 20:12:31 +0000 (12:12 -0800)]
video: tegra: support v/h sync polarity

Change-Id: Ida82a70efaeadc9d5b11d8703e688063680b72a8
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agovideo: tegra: correct HDMI h/vsync polairty in some modes
Erik Gilling [Tue, 1 Feb 2011 21:01:55 +0000 (13:01 -0800)]
video: tegra: correct HDMI h/vsync polairty in some modes

Change-Id: I0e988d1724461ff2d5bd1009f2fdc379bd154703
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Wed, 2 Feb 2011 18:03:34 +0000 (10:03 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agoARM: vfp: Move exception address fixup into vfphw.S
Colin Cross [Thu, 27 Jan 2011 23:46:20 +0000 (15:46 -0800)]
ARM: vfp: Move exception address fixup into vfphw.S

If the PC on the stack is updated in entry-armv.S,
do_undefinstr can get called after the fixup.  do_undefinstr
does its own fixup, and doing both causes the PC to point to
half way through an instruction.

Instead, do the fixup in do_vfp, where only the vfp code
can get called.

Change-Id: I6d966887adc8ed58d88bfe0cb3c0ba29213be488
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Sun, 30 Jan 2011 08:26:58 +0000 (00:26 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agocpufreq: Prevent memory leak in cpufreq_stats on hotplug
Colin Cross [Sat, 29 Jan 2011 03:32:31 +0000 (19:32 -0800)]
cpufreq: Prevent memory leak in cpufreq_stats on hotplug

Ensures that cpufreq_stats_free_table is called before
__cpufreq_remove_dev on cpu hotplug (which also occurs during
suspend on SMP systems) to make sure that sysfs_remove_group
can get called before the cpufreq kobj is freed.  Otherwise,
the sysfs file structures are leaked.

Change-Id: I87e55277272f5cfad47e9e7c92630e990bb90069
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoMerge remote branch 'common/android-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Sat, 29 Jan 2011 05:58:22 +0000 (21:58 -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 [Sat, 29 Jan 2011 05:51:32 +0000 (21:51 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years ago[ARM] tegra_i2s_audio: separate TX/RX DMA setup
Eric Laurent [Fri, 28 Jan 2011 17:13:22 +0000 (09:13 -0800)]
[ARM] tegra_i2s_audio: separate TX/RX DMA setup

Fixed a problem preventing independent setup/teardown
of TX and RX DMAs when setting playback or capture buffer count.

Signed-off-by: Eric Laurent <elaurent@google.com>
13 years agoPM: Change dpm watchdog to support async suspend
Benoit Goby [Thu, 27 Jan 2011 02:28:33 +0000 (18:28 -0800)]
PM: Change dpm watchdog to support async suspend

Exclude from the watchdog the time spent waiting for children that
are resumed asynchronously and time every devices, whether or not they
resumed synchronously.

Change-Id: I84209dfd5df72842e045096c906fd61e20e6d183
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Wed, 26 Jan 2011 04:34:59 +0000 (20:34 -0800)]
Merge remote branch 'tegra/linux-tegra-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 [Wed, 26 Jan 2011 01:56:50 +0000 (17:56 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agoARM: tegra: usb_phy: Configure USB1 PHY to use programmed value
Nathan Connell [Wed, 12 Jan 2011 20:32:24 +0000 (14:32 -0600)]
ARM: tegra: usb_phy: Configure USB1 PHY to use programmed value

instead of fused value.  This is required
to meet High Speed USB signaling requirements.

Change-Id: I659b33faa950605ecf040598112e1972047ae7ad
Signed-off-by: Nathan Connell <w14185@motorola.com>
13 years agowatchdog: tegra_wdt: Several changes to watchdog driver
Dmitriy Gruzman [Tue, 25 Jan 2011 02:52:02 +0000 (20:52 -0600)]
watchdog: tegra_wdt: Several changes to watchdog driver

Fix not re-enabling watchdog resume if it was enabled in probe
Add clearing watchdog interrupt in probe
Remove tegra_wdt_set_timeout

Change-Id: I8fdbb6da3eda64a85a73ed85ab979a5ee0261c37
Signed-off-by: Dmitriy Gruzman <dmitriy.gruzman@motorola.com>
13 years agousb: host: tegra: Request 400MHz emc clock
Benoit Goby [Tue, 25 Jan 2011 20:14:52 +0000 (12:14 -0800)]
usb: host: tegra: Request 400MHz emc clock

while USB is active to eliminate all USB buffer underruns.

Change-Id: I9977224601e715e950284708958be98d37b3e6b1
Signed-off-by: Nathan Connell <w14185@motorola.com>
13 years agousb: gadget: tegra_udc: Request 400MHz emc clock
Benoit Goby [Tue, 25 Jan 2011 20:13:52 +0000 (12:13 -0800)]
usb: gadget: tegra_udc: Request 400MHz emc clock

while USB is active to eliminate all USB buffer underruns.

Change-Id: I7ad8ebfa2d802f91b81839e14fde906da1a0569e
Signed-off-by: Nathan Connell <w14185@motorola.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Mon, 24 Jan 2011 23:48:38 +0000 (15:48 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

Change-Id: Ifc4b876bb673b2f3beaa3c5995bc3d527f6f717d

13 years agovideo: tegra: nvmap: Several changes to carveout killer
Rebecca Schultz Zavin [Mon, 24 Jan 2011 22:16:47 +0000 (14:16 -0800)]
video: tegra: nvmap: Several changes to carveout killer

-Add a module param to enable/disable carveout killer
-Fix race condition in code to wait for something to free memory
after firing carveout killer
-Fix the check for current so we always compare task->group_leaders

Change-Id: Ie030978827dce6b0fbbfa1db0d80e4abe59eaa51
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
13 years agovideo: tegra: incresase delay in underflow recovery
Erik Gilling [Mon, 24 Jan 2011 23:28:31 +0000 (15:28 -0800)]
video: tegra: incresase delay in underflow recovery

Change-Id: I8093c83a2749c63b6ece051cc9b892d87e55fe04
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoPrint pending wakeup IRQ preventing suspend to dmesg
Todd Poynor [Mon, 24 Jan 2011 22:36:39 +0000 (14:36 -0800)]
Print pending wakeup IRQ preventing suspend to dmesg

Change-Id: I36f90735c75fb7c7ab1084775ec0d0ab02336e6e
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 [Mon, 24 Jan 2011 20:50:57 +0000 (12:50 -0800)]
Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36

Change-Id: I31c6619f888c36cfe571fda8593f6e1172810ba9

13 years agovideo: tegra: dump host state when timing out on suspend
Erik Gilling [Mon, 24 Jan 2011 20:35:11 +0000 (12:35 -0800)]
video: tegra: dump host state when timing out on suspend

Change-Id: I718fb071ac74f5a051a7d5b9fcdd782163ed48b6
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Sat, 22 Jan 2011 03:10:44 +0000 (19:10 -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 [Sat, 22 Jan 2011 03:10:39 +0000 (19:10 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agoinput: keyreset: Only print message for default handler
Colin Cross [Fri, 21 Jan 2011 21:42:46 +0000 (13:42 -0800)]
input: keyreset: Only print message for default handler

Change-Id: I68e5451fef2e6f08bf1035077ea999e34a619f87
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: Prevent dynamically ioremapping device io memory
Colin Cross [Sat, 22 Jan 2011 01:04:36 +0000 (17:04 -0800)]
ARM: tegra: Prevent dynamically ioremapping device io memory

Change-Id: I893a42bd773b1acdf2b83f8602fe1aa6a8ea6741
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: Statically map all device io memory
Colin Cross [Sat, 22 Jan 2011 01:04:07 +0000 (17:04 -0800)]
ARM: tegra: Statically map all device io memory

Change-Id: I0c750b766dcdd166ddff6317b93556f9f5cce899
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoPM: Dump suspend thread stack on dpm suspend timeout
Benoit Goby [Fri, 21 Jan 2011 23:53:44 +0000 (15:53 -0800)]
PM: Dump suspend thread stack on dpm suspend timeout

When a driver takes more than 3 seconds to suspend, dump the suspend
thread stack since BUG() might only dump the idle thread stack.

Change-Id: If854db355fdcf3b773ea20b1b5e031def6d4b114
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Fri, 21 Jan 2011 08:33:14 +0000 (00:33 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agousb: gadget: tegra: Enable emc clock while usb is connected
Benoit Goby [Thu, 20 Jan 2011 23:42:52 +0000 (15:42 -0800)]
usb: gadget: tegra: Enable emc clock while usb is connected

Change-Id: Icb94c516a580e29b42b1899e622c9b91f8701dd2
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoARM: tegra: clocks: Add shared emc clocks for usb gadget
Benoit Goby [Thu, 20 Jan 2011 23:41:58 +0000 (15:41 -0800)]
ARM: tegra: clocks: Add shared emc clocks for usb gadget

Change-Id: Idf1982fac02b987cb16ef89509cfe4d72953d1e5
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agousb: host: tegra: Enable emc clock while usb is resumed
Benoit Goby [Thu, 20 Jan 2011 22:19:04 +0000 (14:19 -0800)]
usb: host: tegra: Enable emc clock while usb is resumed

Change-Id: I03a102f40134686fabbd5cfa1830816a691cf876
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoARM: tegra: clocks: Add shared emc clocks for ehci driver
Benoit Goby [Thu, 20 Jan 2011 23:18:18 +0000 (15:18 -0800)]
ARM: tegra: clocks: Add shared emc clocks for ehci driver

Change-Id: I02f9d798159e14007fa2e5abfc3493a2d779d515
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoARM: tegra: DVFS: set 1.2V core voltage for USB to work
Jay Cheng [Thu, 20 Jan 2011 21:09:32 +0000 (16:09 -0500)]
ARM: tegra: DVFS: set 1.2V core voltage for USB to work

Change-Id: Idb7822329f1975307748a72d1786da68c0635738
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Thu, 20 Jan 2011 05:21:20 +0000 (21:21 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agoinput: evdev: Add missing wake_lock_destroy
Benoit Goby [Wed, 19 Jan 2011 22:10:37 +0000 (14:10 -0800)]
input: evdev: Add missing wake_lock_destroy

Change-Id: Ief1ef44d98a197e5b457f5e8617c413e76e3c6d2
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Wed, 19 Jan 2011 05:37:12 +0000 (21:37 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agousb: host: tegra: Fix SetPortFeature PORT_SUSPEND
Benoit Goby [Wed, 19 Jan 2011 03:38:23 +0000 (19:38 -0800)]
usb: host: tegra: Fix SetPortFeature PORT_SUSPEND

This fixes a regression where hubs cannot detect new devices once they
have been auto-suspended.

Change-Id: I4b3efcaa9634b9a912060e438527000bbc83dc32
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agousb: host: tegra: Fix resuming low speed devices from lp0
Benoit Goby [Tue, 18 Jan 2011 20:56:16 +0000 (12:56 -0800)]
usb: host: tegra: Fix resuming low speed devices from lp0

Change-Id: I9576853bbe0fae52c5c2cfab26ce8f2017077d4e
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agoARM: tegra: usb_phy: Program DPDM_OBSERVE depending on the device speed
Benoit Goby [Wed, 19 Jan 2011 00:57:48 +0000 (16:57 -0800)]
ARM: tegra: usb_phy: Program DPDM_OBSERVE depending on the device speed

Low speed devices require a K-state resume signaling instead of J.

Change-Id: Ic06011f45c2b0f4cd969d018f2783acea57cb510
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agocrypto: tegra-aes: perf: remove unnecessary polling and memset
Varun Wadekar [Fri, 14 Jan 2011 07:49:25 +0000 (13:19 +0530)]
crypto: tegra-aes: perf: remove unnecessary polling and memset

Change-Id: I69731fcd50933ccea73542d046c3c5d86d03fcd9
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Sat, 15 Jan 2011 01:32:24 +0000 (17:32 -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 [Sat, 15 Jan 2011 01:32:17 +0000 (17:32 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agovideo: tegra: host: Force memory bus to full when using 2d, 3d or mpe
Colin Cross [Fri, 14 Jan 2011 23:07:27 +0000 (15:07 -0800)]
video: tegra: host: Force memory bus to full when using 2d, 3d or mpe

Change-Id: I7138af5d26c3f406537bc4b2bc4bb052de37f7bf
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: clock: Add shared emc clock for tegra_grhost
Colin Cross [Fri, 14 Jan 2011 23:06:58 +0000 (15:06 -0800)]
ARM: tegra: clock: Add shared emc clock for tegra_grhost

Change-Id: Ie2814726d151777140c20d2bc0a3c1a3822043a8
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: clock: Add round_rate op for shared clocks
Colin Cross [Fri, 14 Jan 2011 23:06:29 +0000 (15:06 -0800)]
ARM: tegra: clock: Add round_rate op for shared clocks

Change-Id: Ica3f9fd9db4fe38f2c9ca3fc248526211f59c622
Signed-off-by: Colin Cross <ccross@android.com>
13 years agovideo: tegra: host: disable MPE auto-power-gate
Mayuresh Kulkarni [Fri, 14 Jan 2011 02:22:43 +0000 (18:22 -0800)]
video: tegra: host: disable MPE auto-power-gate

It is seen that auto-power-gate of MPE causes some issues when long run
camera stress test is run. The issue manifest itself in the form of
MPE sync-point not getting triggered from hardware and hence the caller
who is waiting on it hangs up the system.

Disabling auto-power-gate for MPE seems to resolve this issue.

Original work of Jay Cheng <jacheng@nvidia.com>
Signed-off-by: Mayuresh Kulkarni <mkulkarni@nvidia.com>
Change-Id: Iaef9f959cbc00dd715352ca637955cd2bea6f355

13 years agoARM: Fix up vfp exception location in thumb mode
Colin Cross [Fri, 14 Jan 2011 22:32:49 +0000 (14:32 -0800)]
ARM: Fix up vfp exception location in thumb mode

The exception handler in entry-armv.S checks for thumb mode and
correctly determines the exception location and instruction,
but VFP_bounce uses the uncorrected location off the stack.
If the VFP exception occured in Thumb mode, fix up the
exception location on the stack to match the value that would
be returned in ARM mode.

Fixes segfaults in userspace applications running in Thumb mode
caused by a handled VFP exception returning to the middle of the
instruction that triggered the exception.

Change-Id: I02be4c5b546561d9a967a02c1e9eb1de876cff07
Original-author: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoUSB: gadget: f_mtp: Make sure request is dequeued if transfer is canceled
Mike Lockwood [Thu, 13 Jan 2011 21:19:57 +0000 (16:19 -0500)]
USB: gadget: f_mtp: Make sure request is dequeued if transfer is canceled

If the host cancels a file transfer while we have a read request pending,
call usb_ep_dequeue to cancel the read.
Also return -ECANCELED from mtp_ioctl if we are canceled in MTP_RECEIVE_FILE

Signed-off-by: Mike Lockwood <lockwood@android.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Thu, 13 Jan 2011 04:21:22 +0000 (20:21 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agonet: wireless: bcm4329: Turn off CONFIG_US_NON_DFS_CHANNELS_ONLY
Dmitry Shmidt [Thu, 13 Jan 2011 04:12:26 +0000 (20:12 -0800)]
net: wireless: bcm4329: Turn off CONFIG_US_NON_DFS_CHANNELS_ONLY

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 [Thu, 13 Jan 2011 01:47:11 +0000 (17:47 -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, 13 Jan 2011 01:46:58 +0000 (17:46 -0800)]
Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36

13 years agovideo: tegra: nvmap: Several fixes to the carveout killer
Rebecca Schultz Zavin [Thu, 13 Jan 2011 00:22:36 +0000 (16:22 -0800)]
video: tegra: nvmap: Several fixes to the carveout killer

-Modify the carveout killer to only kill tasks with lower priorities
than the one that's trying to allocate
-After delivering a sigkill to a task, wait for something to exit and
cleanup before retrying the allocation

Change-Id: If62b6ed008a73fc3c347ff26735a83eee284909e
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
13 years agovideo: tegra: reset default window in release
Sergey Kudakov [Thu, 21 Oct 2010 22:55:50 +0000 (17:55 -0500)]
video: tegra: reset default window in release

Change-Id: I242e9fac525472c5c20f213a6de516f95b2f6a12
Cc: Sergey Kudakov <sergey.kudakov@motorola.com>
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agonet: wireless: bcm4329: Update to version 4.218.248-20
Dmitry Shmidt [Thu, 13 Jan 2011 00:22:14 +0000 (16:22 -0800)]
net: wireless: bcm4329: Update to version 4.218.248-20

- Use US/69 locale for US
- Remove dhdsdio_mem_dump() function

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
13 years agocrypto: tegra-aes: Hack to disable HW AES for dm-crypt
Ken Sumrall [Wed, 12 Jan 2011 23:58:37 +0000 (15:58 -0800)]
crypto: tegra-aes: Hack to disable HW AES for dm-crypt

The hardware aes engine is required for key management for
HDCP, but since it's performance is bad, we don't want it
enabled for dm-crypt.  This hack changes the cra_name field
so dm-crypt won't find a match, but leaves the cra_driver_name
field unchanged to the device file interface will still find it.

Signed-off-by: Ken Sumrall <ksumrall@android.com>
13 years agocrypto: tegra-aes: improve encrypt/decrypt performance
Varun Wadekar [Wed, 12 Jan 2011 20:59:14 +0000 (02:29 +0530)]
crypto: tegra-aes: improve encrypt/decrypt performance

- enable/disable clocks only once per request
- create a thread for handling the driver's work queue
- always set vde clocks to the max before processing a request

Change-Id: I935e5523e9e913c93705cc694f8a475d212c15ce
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Wed, 12 Jan 2011 19:38:21 +0000 (11:38 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agovideo: tegra: nvmap: Don't store task struct for kernel threads
Rebecca Schultz Zavin [Wed, 12 Jan 2011 19:10:34 +0000 (11:10 -0800)]
video: tegra: nvmap: Don't store task struct for kernel threads

No need to maintain a reference to the task struct if the client
is a kernel thread.  In this case just set the task to NULL.

Change-Id: Ica4785388932f6b298eeb0da04b78b0e1cdc3a44
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
13 years agocrypto: tegra-aes: call INIT_COMPLETION before setting the transfer
Varun Wadekar [Tue, 11 Jan 2011 08:33:54 +0000 (14:03 +0530)]
crypto: tegra-aes: call INIT_COMPLETION before setting the transfer

Change-Id: I368a9bf8aa1c311532e54d18a813b556576b8da1
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years agocrypto: tegra-aes: do not reset bsev/vde per operation
Varun Wadekar [Fri, 7 Jan 2011 13:02:00 +0000 (18:32 +0530)]
crypto: tegra-aes: do not reset bsev/vde per operation

avp does not use the crypto engine inside the vde block,
so it is ok if we do not reset the entire block before
any crypto operation. this would save more than 100us per crypto
operation.

Change-Id: I4e6f4940c5b6e95498b6f7a62498fbf956e25254
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Wed, 12 Jan 2011 08:04:01 +0000 (00:04 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years ago[ARM] tegra_i2s_audio: fixed several issues
Eric Laurent [Wed, 12 Jan 2011 03:39:58 +0000 (19:39 -0800)]
[ARM] tegra_i2s_audio: fixed several issues

- Acquire the DMA request spinlock in dma_tx_complete_callback()
(this was omitted)
- allow_suspend() was called by mistake in start_recording_if_necessary()
every time it was executed which could cause the wake lock to be
released during audio capture.

Signed-off-by: Eric Laurent <elaurent@google.com>
Signed-off-by: Iliyan Malchev <malchev@google.com>
13 years agoARM: tegra: clock: Round frequency up in clock dividers
Colin Cross [Wed, 12 Jan 2011 00:59:55 +0000 (16:59 -0800)]
ARM: tegra: clock: Round frequency up in clock dividers

When picking clock divider values, the clock framework picks
the closest frequency that is lower than the requested
frequency.  If the value from a clock divider rounds down,
and then the new rounded down frequency is requested, it
will get rounded down again, resulting in a frequency two
steps lower than the original requested frequency.

Fix the problem by rounding up when calculating the frequency
coming out of a clock divider, so if that frequency is
requested again, the same divider value will be picked.

Change-Id: Ieaf74448f67d91aeb7ba08226e48c092d8afaa2b
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoMerge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36
Rebecca Schultz Zavin [Wed, 12 Jan 2011 00:42:30 +0000 (16:42 -0800)]
Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agovideo: tegra: work around overlay corruption on underflows
Erik Gilling [Wed, 12 Jan 2011 00:32:20 +0000 (16:32 -0800)]
video: tegra: work around overlay corruption on underflows

Overlays can get their internal state corrupted during and underflow
condition.  The only way to fix this state is to reset the DC.  If we get
4 consecutive frames with underflows, assume we're hosed and reset.

Change-Id: Icdf61517837c8570b8de35f585075de08aa35fe7
Signed-off-by: Erik Gilling <konkers@android.com>
Cc: Michael I. Gold <gold@nvidia.com>
13 years agowatchdog: tegra_wdt: Several changes to watchdog driver
Rebecca Schultz Zavin [Tue, 11 Jan 2011 23:35:47 +0000 (15:35 -0800)]
watchdog: tegra_wdt: Several changes to watchdog driver

Add a config option to enable the watchdog driver from probe
Reduce the default timeout to 30 seconds
Read the reset reason and print a messge if the last reboot was
due to watchdog reset

Change-Id: I7500ef236089b06ffcff3d8e7d86a5b9060b59cb
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
13 years agoARM: tegra: clock: Save and restore audio clock during suspend
Colin Cross [Tue, 11 Jan 2011 20:15:01 +0000 (12:15 -0800)]
ARM: tegra: clock: Save and restore audio clock during suspend

Change-Id: Id1c7a6c8e8679995ad462f17309c2f3550c00da1
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 [Tue, 11 Jan 2011 03:09:22 +0000 (19:09 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agoARM: tegra: clock: Save and restore plld, plls, and pllu in suspend
Colin Cross [Tue, 11 Jan 2011 02:39:43 +0000 (18:39 -0800)]
ARM: tegra: clock: Save and restore plld, plls, and pllu in suspend

HDMI was not working after LP0 because the plld were being reset
during suspend.  plls and pllu were also not being saved.  Add
all three to tegra_clk_suspend.

The lock time for plld is 1000 us, so increase the delay after
setting the PLLs.

Add a BUG_ON to ensure the size of the suspend context area is
correct.

Originally fixed by Mayuresh Kulkarni.

Original-author: Mayuresh Kulkarni <mkulkarni@nvidia.com>
Change-Id: I50a3e994c6e3cab5989aa7a8e26e7a2eb66b6dfb
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Tue, 11 Jan 2011 01:18:52 +0000 (17:18 -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 [Tue, 11 Jan 2011 01:18:42 +0000 (17:18 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agocgroup: leave cg_list valid upon cgroup_exit
Simon Wilson [Sat, 8 Jan 2011 02:46:34 +0000 (18:46 -0800)]
cgroup: leave cg_list valid upon cgroup_exit

A thread/process in cgroup_attach_task() could have called
list_del(&tsk->cg_list) after cgroup_exit() had already called
list_del() on the same list. Since it only checked for
!list_empty(&tsk->cg_list) before doing this, the list_del()
call would thus be made twice.

The solution is to leave tsk->cg_list in a valid state in
cgroup_exit() with list_del_init(&tsk->cg_list), which leaves
an empty list.

Change-Id: I4e7c1d0665fced629f5ca033c18dd98afe080e0c
Signed-off-by: Simon Wilson <simonwilson@google.com>
13 years agortc: alarm: Update hrtimer if alarm at the head of the queue is reprogrammed
Arve Hjønnevåg [Sat, 8 Jan 2011 03:00:01 +0000 (19:00 -0800)]
rtc: alarm: Update hrtimer if alarm at the head of the queue is reprogrammed

If an alarm was restarted with a value that moved it away from the head
of a queue, the hrtimer would not be updated. This would cause unnecessary
wakeups.

Change-Id: If379f8dd92b0bdb3173bd8d057adfe0dc1d15259
Signed-off-by: Arve Hjønnevåg <arve@android.com>
13 years agoARM: tegra: Fix powergate_debugfs_init return value
Benoit Goby [Mon, 10 Jan 2011 22:58:00 +0000 (14:58 -0800)]
ARM: tegra: Fix powergate_debugfs_init return value

Change-Id: Iff865e0f74e1667aa6e998a63d33d3b4cd09694c
Signed-off-by: Benoit Goby <benoit@android.com>
13 years agovideo: tegra: nvmap: Add carveout killer
Rebecca Schultz Zavin [Fri, 3 Dec 2010 23:43:33 +0000 (15:43 -0800)]
video: tegra: nvmap: Add carveout killer

This change attempts to reclaim carveout memory by killing
other carveout users when an allocation fails.  Processes
are killed in order of priority from lowest to highest, and then
from largest to smallest users.

Change-Id: Iee8a6f36269bc8165d691000a153dbf9f4337775
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Mon, 10 Jan 2011 03:20:14 +0000 (19:20 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

13 years agoARM: tegra: pll_a clock fixes
Stephen Warren [Wed, 5 Jan 2011 00:47:55 +0000 (17:47 -0700)]
ARM: tegra: pll_a clock fixes

Increase the max_frequency entries for clocks that can be driven from pll_a
to match the fastest pll_a table entry.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoARM: tegra: Prevent requeuing in-progress DMA requests
Stephen Warren [Wed, 5 Jan 2011 21:24:12 +0000 (14:24 -0700)]
ARM: tegra: Prevent requeuing in-progress DMA requests

If a request already in the queue is passed to tegra_dma_enqueue_req,
tegra_dma_req.node->{next,prev} will end up pointing to itself instead
of at tegra_dma_channel.list, which is the way a the end-of-list
should be set up. When the DMA request completes and is list_del'd,
the list head will still point at it, yet the node's next/prev will
contain the list poison values. When the next DMA request completes,
a kernel panic will occur when those poison values are dereferenced.

This makes the DMA driver more robust in the face of buggy clients.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agortc: tps6586x: Fix error in RTC tick calculations
Lowell Dennis [Wed, 15 Dec 2010 00:35:17 +0000 (16:35 -0800)]
rtc: tps6586x: Fix error in RTC tick calculations

In the TPS6586x PMU/PMIC RTC support code, when
converting from seconds to ticks using a shift
operator, the most significant bits were being lost
due to seconds being a 32-bit value and ticks being
a 64-bit value.  A hard cast was added to avoid this
loss.

Reviewed-by: Lowell Dennis <ldennis@nvidia.com>
Tested-by: Lowell Dennis <ldennis@nvidia.com>
Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
Reviewed-by: Peter Zu <pzu@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Signed-off-by: Robert Morell <rmorell@nvidia.com>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agousb: ehci: tegra: continues driving FS-J during resume
Jay Cheng [Fri, 7 Jan 2011 07:03:46 +0000 (02:03 -0500)]
usb: ehci: tegra: continues driving FS-J during resume

To prevent USB glitch.
Also only program PTC bits when resume from LP0

Change-Id: Iced668e33f986828d3a483b411055948b5b257e1
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agoARM: tegra: usb_phy: continues driving FS-J during resume
Jay Cheng [Fri, 7 Jan 2011 07:03:46 +0000 (02:03 -0500)]
ARM: tegra: usb_phy: continues driving FS-J during resume

to prevent USB glitch.

Change-Id: Iced668e33f986828d3a483b411055948b5b257e1
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agousb: ehci: tegra: remove reschedule rh_timer
Jay Cheng [Thu, 6 Jan 2011 05:16:18 +0000 (00:16 -0500)]
usb: ehci: tegra: remove reschedule rh_timer

Reschedule rh_timer may cause usb device resume fail, as rh_timer may be
timeout and send USB_REQ_GET_STATUS SETUP control transfer by the time when
the device is handling clear suspend feature, which in turn the device may
drop clear suspend feature request.

Actually on port resume case, the host driver don't need to reschedule
rh_timer to check port status. The host driver will check port status right
after suspend feature is cleared.

Change-Id: I6205e97af49ed4349b6215b851f6b5f1394258d8
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Sat, 8 Jan 2011 22:47:29 +0000 (14:47 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

Conflicts:
drivers/misc/Kconfig
drivers/misc/Makefile

Change-Id: I826244513f799fdd2fb0269abad3271c96661293

13 years agoARM: tegra: powergate: Allow calling power up when already powered
Colin Cross [Sat, 8 Jan 2011 21:59:15 +0000 (13:59 -0800)]
ARM: tegra: powergate: Allow calling power up when already powered

Allow calling tegra_powergate_sequence_power_up on a partition
that is already powered.  Reset the partition, and return success
with the clock enabled.

Change-Id: I776c6a84091f0bb8faca22d87b3fabf0cfede564
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoNCT1008 temperature sensor driver
Todd Poynor [Mon, 20 Dec 2010 23:05:52 +0000 (15:05 -0800)]
NCT1008 temperature sensor driver

Replace the PM-only driver for NCT1008 with a new version written by
Varun Wadekar and Dmitriy Gruzman.  Add a callback to an alarm
function specified in the board platform data.

Change-Id: Ib429533930ee75af3402d24b0bc286da9f6ee67b
Signed-off-by: Todd Poynor <toddpoynor@google.com>
13 years agomisc: Initial NCT1008 driver
Greg Meiste [Tue, 16 Nov 2010 19:33:06 +0000 (13:33 -0600)]
misc: Initial NCT1008 driver

Initial version of the NCT1008 driver to turn off the sensor when the
device is suspended.  This improves standby current drain.

Change-Id: Ia64613c33c0052434d5e304c434605611e5ef789
Signed-off-by: Greg Meiste <w30289@motorola.com>
13 years agovideo: tegra: fix debug regs file hang
Erik Gilling [Sat, 8 Jan 2011 02:45:43 +0000 (18:45 -0800)]
video: tegra: fix debug regs file hang

Change-Id: I2bdfe5ec9f69b7b7960e59bec76fb9b02b61f3fb
Signed-off-by: Erik Gilling <konkers@android.com>
13 years agoMerge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36
Colin Cross [Sat, 8 Jan 2011 01:20:53 +0000 (17:20 -0800)]
Merge branch 'linux-tegra-2.6.36' into android-tegra-2.6.36

Conflicts:
arch/arm/mm/cache-v6.S

Change-Id: I1a2063218dd705a762a40f4a9dfe504ce1a1d491

13 years agoMerge branch 'android-2.6.36' into android-tegra-2.6.36
Colin Cross [Sat, 8 Jan 2011 01:16:59 +0000 (17:16 -0800)]
Merge branch 'android-2.6.36' into android-tegra-2.6.36

13 years agoMerge commit 'v2.6.36.3' into linux-tegra-2.6.36
Colin Cross [Sat, 8 Jan 2011 01:14:48 +0000 (17:14 -0800)]
Merge commit 'v2.6.36.3' into linux-tegra-2.6.36

13 years agocrytpo: tegra-aes: make aes_handle_req aynschronous
Varun Wadekar [Tue, 28 Dec 2010 09:31:18 +0000 (15:01 +0530)]
crytpo: tegra-aes: make aes_handle_req aynschronous

the encrypt/decrypt callbacks have to return with -EINPROGRESS
error code and the request complete callback needs to be
called from handle_req for aynchronous block ciphers. use
work queue to make the driver asynchronous.

Change-Id: I0dec1185c31e5de7ba039c39d6bd87c8b3487b2a
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
13 years agoinput: keyreset: Allow reset function to be overriden
Colin Cross [Fri, 7 Jan 2011 22:52:56 +0000 (14:52 -0800)]
input: keyreset: Allow reset function to be overriden

Change-Id: Ibb3dda05772b2e89d7b2646689944d309cb1f74e
Signed-off-by: Colin Cross <ccross@android.com>
13 years agoLinux 2.6.36.3
Greg Kroah-Hartman [Fri, 7 Jan 2011 22:39:58 +0000 (14:39 -0800)]
Linux 2.6.36.3

13 years agoARM: 6490/1: MM: bugfix: initialize spinlock for init_mm.context
MyungJoo Ham [Tue, 23 Nov 2010 10:39:23 +0000 (11:39 +0100)]
ARM: 6490/1: MM: bugfix: initialize spinlock for init_mm.context

init_mm used at kernel/sched.c:idle_task_exit() has spin_lock
(init_mm.context.id_lock) that is not initialized when spin_lock/unlock
is called at an ARM machine. Note that mm_struct.context.id_lock is
usually initialized except for the instance of init_mm at
linux/arch/arm/mm/context.c

Not initializing this spinlock incurs "BUG: pinlock bad magic"
warning when spinlock debug is enabled. We have observed such
instances when testing PM in S5PC210 machines.

Change-Id: I52c6c6d035c220822a5675faaf8d163a3535985d
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Colin Cross <ccross@android.com>
13 years agogspca - sonixj: Add a flag in the driver_info table
Jean-Francois Moine [Tue, 14 Dec 2010 19:15:37 +0000 (16:15 -0300)]
gspca - sonixj: Add a flag in the driver_info table

commit c6c14330717f9850b4b4c054b81424b9979cd07d upstream.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agogspca - sonixj: Set the flag for some devices
Jean-Francois Moine [Tue, 14 Dec 2010 19:16:16 +0000 (16:16 -0300)]
gspca - sonixj: Set the flag for some devices

commit b2272a49e7df37732d73988f00468ce31e1ebc92 upstream.

The flag PDN_INV indicates that the sensor pin S_PWR_DN has not the same
value as other webcams with the same sensor. For now, only two webcams have
been so detected: the Microsoft's VX1000 and VX3000.

Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>