summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2011-05-16nvrm: move stale wait checking into the kerneltegra-11.2.6Chris Johnson
The kernel now receives wait tracking data (similar to gathers and relocs) and compares the current syncpt with the threshold value. If it's old, it gets a kernel mapping and rewrites the method data to use a kernel reserved syncpt that is always 0 (so trivially pops when seen by the HW). Bug 519650 Bug 785525 Bug 803452 Note: reset the author in this commit to fix a email addr problem and since from the latest/last cherry pick there was a reworking of the code to be compatible with different user space versions it also seemed reasonable. (cherry picked from commit 4069d8e67665624ad3dceb628e572980dd57acd0) (cherry picked from commit 6e4336408588e348804a62e53386acc9abc06823) (cherry picked from commit 87a9efe751716ca741caac72b9061fdfdcec540a) Change-Id: I9c6076da2384f373d5f402bee4406b09b4ebc4ff Reviewed-on: http://git-master/r/23159 Reviewed-on: http://git-master/r/30281 Tested-by: Chris Johnson <cwj@nvidia.com> Reviewed-by: Ken Adams <kadams@nvidia.com> Reviewed-by: Prajakta Gudadhe <pgudadhe@nvidia.com>
2011-05-10ARM: tegra: dc: clip invalid windows to screen resJon Mayo
clip invalid windows to fix screen size, failure to do so causes display errors that result in corrupted display and invalid video modes. prints a warning only once, if this warning is present in the logs then there is a misbehaving application. Bug 821094 (cherry picked from commit e08f18eba00bd5d86cb7770f709417a1bd0ca14f) Change-Id: Ie5cec5c805bfe2bd4c5f1e5b7e22d5f255ca2680 Reviewed-on: http://git-master/r/30587 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-05-10usb: tegra: set sclk ratePrashant Gaikwad
sclk minimum rate is set to 40MHz which is less than required by usb. set sclk rate to 80MHz when usb is connected and disable sclk when usb is not connected so that sclk will get clocked at minimum rate. Bug 819796 Reviewed-on: http://git-master/r/28766 (cherry picked from commit e705e6b448791ef938a0897755205cdde72fa361) Change-Id: I180d044f788e153d0057355e22ed422f32552d5c Reviewed-on: http://git-master/r/30818 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com>
2011-05-09serial: core: Restore termios settings on resume console portsVandana Salve
The commit 4547be7 rewrites suspend and resume functions. According to this rewrite, when a serial port is a printk console device and can suspend(without set no_console_suspend flag), it will definitely call set_termios function during its resume, but parameter termios isn't initialized, this will pass an unpredictable config to the serial port. If this serial port is not a userspace opened tty device , a suspend and resume action will make this serial port unusable. I.E. ttyS0 is a printk console device, ttyS1 or keyboard+display is userspace tty device, a suspend/resume action will make ttyS0 unusable. If a serial port is both a printk console device and an opened tty device, this issue can be overcome because it will call set_termios again with the correct parameter in the uart_change_speed function. Refer to the deleted content of commit 4547be7, revert parts relate to restore settings into parameter termios. It is safe because if a serial port is a printk console only device, the only meaningful field in termios is c_cflag and its old config is saved in uport->cons->cflag, if this port is also an opened tty device, it will clear uport->cons->cflag in the uart_open and the old config is saved in tty->termios. refer http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.37.y.git; a=commit;h=891b9dd10764352926e1e107756aa229dfa2c210 cherry-pick the changes from the kernel 2.6.37 commit id :891b9dd10764352926e1e107756aa229dfa2c210 Cherry-picked http://git-master/r/#change,20302 Bug 819016 Change-Id: Ic7ce0a6d595c0e1f65285d7978db93be12158f0f Reviewed-on: http://git-master/r/30680 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-05-09video: tegra: dc: handle error conditionAmit Kamath
Do not handle requests further for displays that are not enabled Bug 813310 Bug 813728 Reviewed-on: http://git-master/r/29515 (cherry picked from commit 22578f1d7065ea84855fdbcaf09a792e9f9d3856) Change-Id: I1fa907e33f2d250fff64752c8f0e26de51f3655b Reviewed-on: http://git-master/r/30672 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-05-09usb: fsl_udc: Resume of device mode optimized.Suresh Mangipudi
Having the device resume and suspend when the cable is not present is an overhead for the system. Hence removed resume and device function calls when the cable is not present. Bug 803280 Change-Id: I238474fb1f3629f78833d58a89ffcabff7754fbb Reviewed-on: http://git-master/r/30500 Reviewed-by: Suresh Mangipudi <smangipudi@nvidia.com> Tested-by: Suresh Mangipudi <smangipudi@nvidia.com> Reviewed-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-05-09crypto: tegra-aes: performance optimisationsVarun Wadekar
* set bsea sclk to ulong_max * use unbounded work queues with 1 max_active work item on each of them * clear INTR_STATUS per operation * free nvmap handle after using it Bug 803932 Change-Id: I9e46d86891f0026504ca4ab2f0c6da5776bb9a73 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/30196 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-05-06media: video: tegra: avp: set sclk ratePrashant Gaikwad
sclk is shared between usb and avp. usb sets it to 80MHz, hence set sclk rate to max when avp is running. Bug 819796 Reviewed-on: http://git-master/r/28765 (cherry picked from commit 44234ba7be2de25ef79b803747064ce54f6dc081) Change-Id: Iea5c785da0aff69f61c82f7e67356d93ead1d994 Reviewed-on: http://git-master/r/30314 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com>
2011-05-04tegra:otg: Fix clock disable to match ref countBitan Biswas
usbd clock is enabled during the probe and not disabled after the functionality. Due to this clock reference count is non-zero and hence usbd clock is not disabled during suspend. Fixed this by disabling clock appropriately. - Since clocks are now turned off during suspend clock needs to be enabled during fsl_udc_resume. Bug 793834 Reviewed-on: http://git-master/r/21652 (cherry picked from commit 8fa46a6da22e6def221435098de054e55c7d1196) Reviewed-on: http://git-master/r/22999 (cherry picked from commit 7ca37264ae9f7358afea2622fa35b928391f8561) Change-Id: I9f39696e04674e76fb088e9eee498153f981bac6 Reviewed-on: http://git-master/r/30075 Reviewed-by: Bitan Biswas <bbiswas@nvidia.com> Reviewed-by: Suresh Mangipudi <smangipudi@nvidia.com> Tested-by: Suresh Mangipudi <smangipudi@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-05-02usb: host: tegra: PORTSC.SUSP needs a delaySuresh Mangipudi
Delay of 4ms is needed after the SUSPEND bit in the PORTSC register is programmed. The hardware would be set only after 4ms of delay. Bug 812427 Change-Id: I5253928264112b429f78e6682e261a44820811db Reviewed-on: http://git-master/r/27510 Reviewed-on: http://git-master/r/29974 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Suresh Mangipudi <smangipudi@nvidia.com> Tested-by: Suresh Mangipudi <smangipudi@nvidia.com>
2011-04-28crypto: tegra-aes: dual core supportSanjay Singh Rawat
* add bsea engine support for encryption and decryption * add arbitration semaphore id for bsea Bug 803932 Change-Id: I978b06a12265acecae99dbf13607e00ae74e87f7 Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/29672 Reviewed-by: Varun Wadekar <vwadekar@nvidia.com> Tested-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-25mfd: max8907c: Prog pwren to power down/up corePrashant Gaikwad
apis added to program max8907c regulator to power down and up core supply rail via the pwren signal on enter and exit deep sleep mode. Bug 817378 Change-Id: I5af04db22b6c84fc4359c1a0cf209710ca144159 Reviewed-on: http://git-master/r/28434 Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-25merging android-tegra-2.6.36 into git-master/linux-2.6/android-tegra-2.6.36Nitin Kumbhar
Conflicts: arch/arm/mm/proc-v7.S drivers/video/tegra/dc/dc.c Change-Id: I40be0d615f14f1c01305388a706d257f624ba968
2011-04-22Merge remote branch 'common/android-2.6.36' into android-tegra-2.6.36Rebecca Schultz Zavin
2011-04-21Merge remote branch 'tegra/linux-tegra-2.6.36' into android-tegra-2.6.36Rebecca Schultz Zavin
2011-04-21video: tegra: dc: Fix several problemsAndrei Warkentin
Resolve potential race between resume and reset Fix wmb after return Change-Id: I98ad1e713b9781d780bf93561496011bf62b86d1 Signed-off-by: Andrei Warkentin <andreiw@motorola.com>
2011-04-20media: video: tegra: SSL3250A torch driverErik Lilliebjerg
Fix SSL3250A camera flash I2C errors. Bug 778859 Change-Id: Ifaf800405bcfc080a66c500cb74fe87ca3074be9 Reviewed-on: http://git-master/r/28205 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-20crypto: tegra-aes: add support for aes-ofb modepuneet saxena
Bug 787628 Change-Id: I73c3b8f0b3e69f1c4bc13bdaea84b19b14eb73d1 Signed-off-by: Puneet Saxena <puneets@nvidia.com> Reviewed-on: http://git-master/r/28003 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-20net: wireless: bcm4329: Clean ARP offload table on IP updateGreg Goldman
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-04-20merging android-tegra-2.6.36 into git-master/linux-2.6/android-tegra-2.6.36Nitin Kumbhar
Change-Id: I903db54b76781cdb9231bb25d79635cb8f264087
2011-04-19rtc : tps6586x: avoid RTC time is getting slowertegra-10.11.8Daehyoung Ko
To ensure an accurate read of the RTC registers during the required multi-byte read operation, the PMU RTC is designed with the following protection scheme - A circuit detects a write/read and locks the RTC_COUNT4 value by keeping the RTC in a suspended mode - During the suspended mode, a secondary counter is used to keep track of all counts that would have normally incremented the RTC - After the read is complete, the value of the secondary counter is added back to the RTC registers and thereby keeping the RTC accurate - The backup counter allows for a 1ms RTC suspend mode duration when the RTC prescaler is enabled. i2c needs to generate a 2 msgs when reading. - the address setup(write RTC_COUNT4 operation), hence start locking the RTC_COUNT4 - the data transfer (read RTC_COUNT4 operation),release locking it. this may allow the CPU to execute other portions of code in between the two operation. The fix is to start a PMU RTC access by reading the register prior to the RTC_COUNT4 so that access of the RTC PMU registers will be guaranteed to always occur within the 1ms time period. - the address setup(write RTC_COUNT4-1 operation), so there is no locking the RTC_COUNT4 - the data transfer (read RTC_COUNT4 operation), starting locking the RTC_COUNT4 and release locking the RTC_COUNT4 in one operation, so it will be guaranteed within 1ms Bug 811075 Change-Id: Ie07472a329f6a0eed11e6a039cd93307bb5276a0 Reviewed-on: http://git-master/r/27537 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-19video: tegra: dc: hdcp: handle the case of DEVICE_COUNT = 0 properlyPeter Zu
bug 811316 Change-Id: I4513f81719a60c8f214ee07082e58defb1cca0aa Reviewed-on: http://git-master/r/26985 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-19video: tegra: dc: removed incorrect cropping codeDonghan Ryu
there was a cropping code which saves from out of FB.However, the cropping code was wrong and cropping should be done from usermode driver instead of kernel. a warning is added here for easy debugging Bug 792524 Change-Id: Id57243e36f903b14a093dad23a6111032890c01a Reviewed-on: http://git-master/r/28055 Reviewed-by: Donghan Ryu <dryu@nvidia.com> Tested-by: Donghan Ryu <dryu@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-19net: Reorder incoming packets in PPPoLAC and PPPoPNS.Chia-chi Yeh
PPP handles packet loss but does not work with out of order packets. This change performs reordering of incoming data packets within a sliding window of one second. Since sequence number is optional, receiving a packet without it will drop all queued packets. Currently the logic is triggered by incoming packets, so queued packets have to wait till another packet is arrived. It is done for simplicity since no additional locks or threads are required. For reliable protocols, a retransmission will kick it. For unreliable protocols, queued packets just seem like packet loss. Time-critical protocols might be broken, but they never work with queueing anyway. Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2011-04-19Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36Erik Gilling
Change-Id: I023482f230dc4f413647f47b3c7c36fd4c98b97d
2011-04-19video: tegra: prevent double disable in suspendAndrei Warkentin
Prevents HDMI detect worker from re-disabling DC during suspend (after tegra_dc_suspend has disabled DC itself)/ Change-Id: I90016fb709934ab8fb5135443980898069f8071f Signed-off-by: Andrei Warkentin <andreiw@motorola.com> Signed-off-by: Erik Gilling <konkers@android.com>
2011-04-19video: tegra: dc: hdcp: handle the case of DEVICE_COUNT = 0 properlyPeter Zu
When HDCP repeater has no device attached, DEVICE_COUNT reports back as 0. HDCP driver should handle this case as a good case and continue downstream authentication, other than fail it. Change-Id: Ied2e46428c0247f14fbd96016cd4fdbf358f6587
2011-04-18merging android-tegra-2.6.36 into git-master/linux-2.6/android-tegra-2.6.36Nitin Kumbhar
Change-Id: Ibf21f94d93ef237de6ab379dc1aa2498df08cdbd
2011-04-15camera: Add driver for soc380 front sensorAbhinav Sinha
Bug: 783488 Change-Id: I0d70ec5bb0fd880b167e9ced0e002829abeccdbf Reviewed-on: http://git-master/r/24969 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-15media: video: tegra: AD5820: Add AD5820 focuser driver.Frank Chen
Add AD5820 focuser driver for Whistler. Bug 783488 Change-Id: I0d8a08e7df9f472ffc4edfe7bfa255357bff5126 Reviewed-on: http://git-master/r/26970 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-15tegra dc: fix premult dst alpha blendingFrancis Hart
Register assignments were wrong for incoming overlay blend parameters. DisplayManagerLite policy sets src combine mode to premult to signal dst premult aplha blending. But the DC expects premult set for the dst window for this mode. Bug 796009 Change-Id: I5929bc4cd362ac60c7a9f14bb4ae83da04b857ab Reviewed-on: http://git-master/r/26835 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-04-15Merge branch 'linux-tegra' into android-tegraErik Gilling
2011-04-15video: tegra: fix more unplug/suspend timeout in nvhdcpErik Gilling
Change-Id: I30dfa03324eb5c4c344c62578eb808a150c80deb Signed-off-by: Erik Gilling <konkers@android.com>
2011-04-14ARM: tegra: dc: hdmi drive strength changesJon Mayo
use pixel clock to configure HDMI interface signaling properties. These options are different depending on which SoC. Bug 786961 Bug 795251 (cherry picked from commit a59e2483a9f85a72186f51c124709401af554eb3) Change-Id: Ie5ef35fe03065d3e77831a0e1a2bbf8319d04125 Reviewed-on: http://git-master/r/27722 Reviewed-by: Jonathan Mayo <jmayo@nvidia.com> Tested-by: Jonathan Mayo <jmayo@nvidia.com> Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Reviewed-by: Jessica Liao <jeliao@nvidia.com>
2011-04-14media: video: tegra: ov5650: add stereo camera supportPritesh Raithatha
-Removed unused sensor mode mode_1920x1088 -Added ov5650_write_reg_helper function to do write_reg() according to camera_mode. -ov5650_get_status function is removed as it is reading reg 2 value and there is not any definition of reg 2 in datasheet and even user space is not using it's value at all. -Added ov5650_set_power function to on/off camera sensors power according to camera_mode. -Added ioctl OV5650_IOCTL_SET_CAMERA_MODE to set camera_mode from user space. -Added i2c driver for right ov5650. Bug 809921 Change-Id: Ib3cf43d0a064c18c218d0850e849fff84e18e661 Reviewed-on: http://git-master/r/26857 Tested-by: Pritesh Raithatha <praithatha@nvidia.com> Reviewed-by: George Bauernschmidt <georgeb@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-14video: tegra: nvmap: debugfs improvementDonghan Ryu
nvmap's debugfs had a bad format so it was very difficult to read the outputs. this commit fixes it and added total allocation size along with it Bug 813891 Change-Id: I6e3165b3ff917d9510d39f1e35b8e6b59c086592 Reviewed-on: http://git-master/r/27349 Reviewed-by: Donghan Ryu <dryu@nvidia.com> Tested-by: Donghan Ryu <dryu@nvidia.com> Reviewed-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-14tegra_mediaserver: Adding kernel media driverS. Holmes
This kernel driver will replace the functionality that was previously in the NVRM daemon root process and allow multiple instances of OpenMAX to function and AVP resource tracking and cleanup. Bug 772210 Change-Id: Ia5eb559cde4644bae5fd8b23a1de57cd65f3fdd8 Reviewed-on: http://git-master/r/25115 Tested-by: Stephen Holmes <sholmes@nvidia.com> Reviewed-by: Stephen Holmes <sholmes@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-14net: caif: added tegra specific caif for rainbow modem.Sheshagiri Shenoy
- added the tegra dependent layer of the caif protocol. - integrated with the open source rainbow caif. - verified the functionality using latest rainbow RIL. bug 785523 Change-Id: I75be8d2ef6e5562facf902a3f963f34d241bb6c3 Reviewed-on: http://git-master/r/23421 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-14rtc: tps6586x RTC clock fixAndre Sihera
Specified OSC_SRC_SEL flag to force clock signal to be taken from an externally generated source rather than be calculated internally. This should raise the accuracy to within +/-2 seconds/24 hours. Bug 811075 Bug 810537 Change-Id: I7b7c4e4d752fdc03b81239f362a1d6f7aa4d3b92 Reviewed-on: http://git-master/r/27222 Reviewed-by: Andre Sihera <asihera@nvidia.com> Tested-by: Andre Sihera <asihera@nvidia.com> Reviewed-by: David Schalig <dschalig@nvidia.com> Reviewed-by: Scott Peterson <speterson@nvidia.com>
2011-04-13usb: otg: tegra: let the usb clock stabilizePrashant Gaikwad
add sleep to let the clock stabilize before handling interrupt. Bug 814888 Change-Id: I7983017f04ad8b84eb6def0f4f7c580292e6e374 Reviewed-on: http://git-master/r/27592 Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-13Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36Erik Gilling
Change-Id: I016b27ad8ada8ec6214b1ed2b6096c294d2e81b8
2011-04-13video: tegra: fix unplug/suspend timeout in nvhdcpErik Gilling
If HDCP was turned off (either by unplug or suspend) the work funciton would wait the full timeout 5 * l.75s before exiting. This causes suspend to timeout and crash. Change-Id: I8eb185452ad09e34f4573874e9766c0e1cec15de Signed-off-by: Erik Gilling <konkers@android.com>
2011-04-13merging android-tegra-2.6.36 into git-master/linux-2.6/android-tegra-2.6.36Nitin Kumbhar
Conflicts: drivers/video/tegra/fb.c Change-Id: Id2c7cf76925c140073baf04244b839c723515254
2011-04-12Merge branch linux-tegra-2.6.36 into android-tegra-2.6.36Erik Gilling
Change-Id: I4305576b867fb062db791b0e18a8f0215bbc5705
2011-04-12video: tegra: zero out var before calling fb_videomode_to_varErik Gilling
Change-Id: I23f01da0a7dcd62594faa828676ffb7a4bc72d9f Signed-off-by: Erik Gilling <konkers@android.com>
2011-04-12video: tegra: add debouncing to hdmi hotplugErik Gilling
Change-Id: Ic998e183e79faabc36d96720dcbae2640e8cf419 Signed-off-by: Erik Gilling <konkers@android.com>
2011-04-11usb: otg: tegra: disable clock when work is donePrashant Gaikwad
With check from!=to it remains on when device is resumes and usb cable state is not changed. Always disable the usbd clock after work is done. Bug 812197 Change-Id: Id0f4bfc6d4eb8f82e010de35594720fc82bd77c4 Reviewed-on: http://git-master/r/27147 Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-04-11merging android-tegra-2.6.36 into git-master/linux-2.6/android-tegra-2.6.36Nitin Kumbhar
Change-Id: I1f85b4ed49128a261b29bb7c3ffe8c5d511a44f9
2011-04-07MMC: Fix erase/trim for certain SanDisk cards.Andrei Warkentin
CMD38 argument is passed through EXT_CSD[113]. Change-Id: I47e9d5e2cf44d9274a65a3b1955026185cb8f2b8 Signed-off-by: Andrei Warkentin <andreiw@motorola.com>
2011-04-07MMC: Expose mmc_switch to higher drivers.Andrei Warkentin
Needed for Sandisk workaround (manipulate EXT_CSD). Change-Id: I7bfe50a1503ac73ae072db718b60c27526521e41 Signed-off-by: Andrei Warkentin <andreiw@motorola.com>