summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2011-08-03Revert "usb: host: ehci-tegra: Power saving on USB suspend"Bharat Nihalani
This reverts commit a5dc52ce49d00bba963544251a1fe858e774780b. Bug 857124 Change-Id: Ib8c350b44d8334894f96439b67a8a41acabff848 Reviewed-on: http://git-master/r/44493 Reviewed-by: Joshua Cha <joshuac@nvidia.com> Tested-by: Joshua Cha <joshuac@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-08-02arm: tegra: otg Recheck connected usb devices on resumeVictor Ryabukhin
A device might be connected while CPU is in sleep mode. In this case no interrupt will be triggered. Force irq_work to recheck connected devices. Reviewed-on: http://git-master/r/40331 (cherry picked from commit 749e994e1e0010843e4a2d54e27a7f19274661a7) Change-Id: I8e42593a113ce00108a629474bfa9dcc4b4d09b5 Reviewed-on: http://git-master/r/43414 Reviewed-by: David Schalig <dschalig@nvidia.com> Tested-by: David Schalig <dschalig@nvidia.com> Reviewed-by: Hanumanth Venkateswa Moganty <vmoganty@nvidia.com>
2011-08-02video: tegra: dc: fix hdmi mode filterDonghan Ryu
If there are more than one hdmi modes that have same xres, yres, and vmode, tegra_dc_hdmi_mode_equal can return true even though pixclocks are way different from each other. Now, tegra_dc_hdmi_mode_equal will retun false if pixclock has more than 1Hz of difference. Also, tegra_fb_set_par will use fb_find_nearest_mode instead of fb_find_best_mode to take refresh rate into the consideration. Bug: 815409 Reviewed-on: http://git-master/r/36464 (cherry picked from commit 8cf6e47dd3d4efaa3a1f0a15f1bd36ad34d3a951) Change-Id: I14fbfba832bd130c7f04369b360d48fbbfad3d7b Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/43655 Reviewed-by: Manish Tuteja <mtuteja@nvidia.com> Tested-by: Manish Tuteja <mtuteja@nvidia.com>
2011-08-01video: tegra: dc: use a delayed_work on hdcpDonghan Ryu
hdmi modeset triggers to re-start hdcp and trying to negotiate too early can cause HDCP failure. using delayed_work can avoid this situation by starting HDCP a little bit late Bug 855002 Change-Id: I607d31c80b57c4e76dc34d2b19d1d8e9cebe4b8f Reviewed-on: http://git-master/r/43692 Reviewed-by: Donghan Ryu <dryu@nvidia.com> Tested-by: Donghan Ryu <dryu@nvidia.com> Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
2011-07-28video: tegra: dc: fix delay on hdmi modesetDonghan Ryu
wait_event_interruptible_timeout checks the condition before it enters a sleep. Adding a real condition to the function avoids an un-wanted aditional sleep. Bug 833476 Reviewed-on: http://git-master/r/43225 Reviewed-on: http://git-master/r/43426 (cherry picked from commit 40a95f668b311b66212cf81638bb65f241835e98) Change-Id: I46ebab6229d24d0977e1ce640bdec9611df621e7 Reviewed-on: http://git-master/r/43610 Reviewed-by: Donghan Ryu <dryu@nvidia.com> Tested-by: Donghan Ryu <dryu@nvidia.com> Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
2011-07-27fbdev: Fix fb_find_nearest_mode refresh comparisonDonghan Ryu
Refresh rate nearness is not calculated or reset when nearest resolution changes. This patch resets the refresh rate differential measurement whenever a new nearest resolution is discovered. This fixes two error cases; first, wherein the first mode's refresh rate differential is never calculated and second, when the closest refresh rate from a previous nearest resolution is erroneously preserved. back-ported from kernel.org (cherry picked from commit 8917a5603a3e6534d6c75ed0d91077062805b111) Reviewed-on: http://git-master/r/37417 (cherry picked from commit a169b1a92dc1ed4c824569e9dc70267cb1e2eb52) Change-Id: I9757e98053a0676491dfe943f06a0c4946ef96be Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/42390 Reviewed-by: Donghan Ryu <dryu@nvidia.com> Tested-by: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-27usb: host: ehci-tegra: Power saving on USB suspendJoshua Cha
In current implementation, the HSIC port cannot have PHY power off without re-enumeration when it is suspended. This patch will do following upon USB port suspend: * disable the USB PHY clock * disable the shared EMC clock * keep the USB core but running it at 0.95v VDD With this patch, VDD can be reduced to when the HSIC port is suspended. There is no re-enumeration when HSIC port is resumed, also it will not affect the normal LP0 suspend/resume. BUG 817725 BUG 796594 (cherry picked from http://git-master/r/30224) Change-Id: Ie0553335ae50bca1a91e94d46d14bb9127874ae4 Reviewed-on: http://git-master/r/37226 Reviewed-by: Joshua Cha <joshuac@nvidia.com> Tested-by: Joshua Cha <joshuac@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-26arm: tegra: correct 3D power gate WAR.Roger Hsieh
3D power gate should be always disabled to keep the power. Set T20 enabled by default. Bug 843271 Change-Id: Icf464cd107e65636440f8103ac6b104e2939e8b9 Reviewed-on: http://git-master/r/40342 Reviewed-on: http://git-master/r/43175 Reviewed-by: David Schalig <dschalig@nvidia.com> Tested-by: David Schalig <dschalig@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-26tegra: usb: fix ehci suspend in host modeAlexandre Courbot
When suspend is called and usb1 is in host mode, tegra_hci_remove is invoked to remove the device. However, at this time it is likely that runtime PM will have powered off usb1. This patch ensures usb1 is powered on if necessary within tegra_hci_remove so that ehci controller registers can be manipulated. Bug 835677. (cherry picked from commit 3a3535c5f95596ecfc9b06c2eb088bfccd062c24) Change-Id: I4096a85f49abee8021a824ba52507294ad57c353 Reviewed-on: http://git-master/r/39616 Reviewed-by: Niket Sirsi <nsirsi@nvidia.com> Tested-by: Niket Sirsi <nsirsi@nvidia.com>
2011-07-26usb: tegra: set emc clock hint to 300 mhz for usbWen Yi
EMC clock has been set to 400 mhz if USB is enabled. This value set the DDR frequency to 300 mhz. Test showed that DDR 150 mhz is sufficient to meet the throughput requirement and thus emc clock is set to 300 mhz to achieve 150 mhz DDR clock to save power. Bug 817738 Bug 796594 (cherry picked from http://git-master/r/30220) Change-Id: I938fd2b4cc14b9133abec7721af9364881de0457 Reviewed-on: http://git-master/r/37212 Reviewed-by: Niket Sirsi <nsirsi@nvidia.com> Tested-by: Niket Sirsi <nsirsi@nvidia.com>
2011-07-25ARM: tegra: dc: Disable EDID dumpArtiste Hsu
tegra_edid_dump() causes audio noise when plugin HDMI cable during video playback and should not be enabled by default. Bug 837728 Reviewed-on: http://git-master/r/42006 (cherry picked from commit 02bedac446b3951e9d5a34f1be97ca3918d80821) Change-Id: I3298f5a98245fc9c3561b3a62a496dcf452280f5 Reviewed-on: http://git-master/r/42311 Tested-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-by: ChihJen Hsu <chhsu@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-25usb: gadget: udc: USB charger detection supportRakesh Bodla
Adding the USB charger detection support for device controller. Bug 819334 Change-Id: I9350c6abaa2be38ecb40db6bc9bc5e84c5303998 Reviewed-on: http://git-master/r/42299 Reviewed-by: Rakesh Bodla <rbodla@nvidia.com> Tested-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Hanumanth Venkateswa Moganty <vmoganty@nvidia.com>
2011-07-22tegra: fb: HDMI monitor spec. not correct via "mode" device.Andre Sihera
When monitor is auto-detected on HDMI port, a special structure is initialised to hold the video mode properties for the plugged- in monitor. From this the display string is generated for displa via the "mode" character device under /sys. When the monitor is disconnected, the structures associated with the monitor tself are cleared, but the pointer to the video mode properties structure was left initialised and so pointed into thin air, which resulted in garbage appearing on the "mode" device. Added explicit deinitialisation code to reset pointer to video mode properties so "cat mode" within /sys yields an empty string when the HDMI monitor is unplugged. Bug 849877 Change-Id: Idbd3f308ee0ee466f7aba0af9aac7e60af72b7fd Reviewed-on: http://git-master/r/41205 Reviewed-by: Niket Sirsi <nsirsi@nvidia.com> Tested-by: Niket Sirsi <nsirsi@nvidia.com>
2011-07-22video: tegra: host: change acm timeout to 40 msWen Yi
The cursor in Android application flashes about 1 hz and the duty cycle for this kind of 3D activity should be far smaller than 1 second. To save power set acm timeout to 25 ms. 40 ms (4 in jiffies) is selected to prevent jitter of 30 fps video capture. BUG 824299 (cherry picked from http://git-master/r/31905) Change-Id: Ibab9949d18c464119886ecefa016fbb963eeb2b7 Reviewed-on: http://git-master/r/37279 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Tested-by: Sun Kyu Choi <sunkyuc@nvidia.com> Reviewed-by: Joshua Cha <joshuac@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-22video: tegra: check for hdmi peripheral during resumeSanjay Singh Rawat
As HDMI is not a wakeup source. To detect HDMI peripheral which is connected after suspend, we scan for it during HDMI resume. Bug 846365 Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/39776 (cherry picked from commit fd1134f413845f8e0b3944153eb7406f713a9709) Change-Id: Ifcdeb340d953b288bdfee224f3b0f0f3caab98c1 Reviewed-on: http://git-master/r/40808 Tested-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-by: Gaurav Sarode <gsarode@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-21Revert "video: tegra: add mmap support for framebuffer"vidyasagar
This reverts commit 2b96783fd25eb2153cab2fb6ff92b2bacc809bed. Recovery process is hanging because of this change. Bug 848403 Bug 800107 Change-Id: I1b7d3f6c08d6db40eda077e5f128c4bf3be681ac Reviewed-on: http://git-master/r/41818 Reviewed-by: Nitin Kumbhar <nkumbhar@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Kaushik Sen <ksen@nvidia.com> Reviewed-by: Joseph Lehrer <jlehrer@nvidia.com> Tested-by: Joseph Lehrer <jlehrer@nvidia.com> Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
2011-07-18crypto: tegra-aes: replace dev_err and add NULL checkingJubeom Kim
Changed dev_err to pr_err because 'dd' can be NULL. Added NULL checking before clock disable of engine->pclk Reviewed-on: http://git-master/r/37857 (cherry picked from commit 851ffd0a30cbe67a5033a9792825b319f0bcd7ed) Change-Id: Ib6d688432b89d37eb9b388b364303850afe94d53 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/41510 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-07-18crypto: tegra-aes: code refactorVarun Wadekar
- reset intr_status if error occur while encrypt/decrypt - rename iram variables to _phys and _virt - use bsea for rng - remove unwanted macros from the header file Bug 833165 Bug 778258 Reviewed-on: http://git-master/r/35830 (cherry picked from commit b3c905c825c16cfff9fe43681f616aa4a0314a8d) Change-Id: I4c76bc87ae4dbf5cab7a49ff070cf95323124537 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/41509 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-07-18crypto: tegra-aes: validate clk_get return valuesVarun Wadekar
instead of checking for NULL, IS_ERR_OR_NULL() should be used to check the validity of a clock handle Reviewed-on: http://git-master/r/35619 (cherry picked from commit f69d9be1947af12d634bf6a8da4fd44bdf58193d) Change-Id: Id33535b01e8591b0ab580def009c737278b72717 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/41508 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-18media: video: tegra: set_clk_rate for avpSachin Nikam
set_clk_rate for sclk which is parent of avp clock. Bug 843725 Signed-off-by: Sachin Nikam <snikam@nvidia.com> Reviewed-on: http://git-master/r/39772 (cherry picked from commit 7ca01f6ae2071c5adac467552bdedb54d158d51b) Change-Id: I8549554b1515be39722fe5c0da5a2ad037e3d2f2 Reviewed-on: http://git-master/r/40598 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-18media: video: tegra: avp: get module clock freqSachin Nikam
AVP wants to know the clock freq of the modules like VDE and AVP itself. Added interface to handle the get clock message from AVP. Bug 843882 Signed-off-by: Sachin Nikam <snikam@nvidia.com> Reviewed-on: http://git-master/r/38506 (cherry picked from commit 7ab89380014b5b5f368548615f5ab2e144b3e57a) Change-Id: I83e06877f36ed2901e7bd481915d3b38929cd52a Reviewed-on: http://git-master/r/40597 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-18media: tegra: avp: respond to unsupported service idsSachin Nikam
AVP service driver responds error to AVP for invalid or unsupported service IDs. Bug 843473 Signed-off-by: Sachin Nikam <snikam@nvidia.com> Reviewed-on: http://git-master/r/39225 (cherry picked from commit 11237d6a408d6ca7aea619e47b02ddf7e158945d) Change-Id: I53d185b8b5a7cd720723a51ad7f0ad4aeafe3b3d Reviewed-on: http://git-master/r/40596 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-18tegra: avp: implement NvRmPowerModuleClockConfig() for AVPMayuresh Kulkarni
this change will allow clock rate control from AVP. Signed-off-by: Mayuresh Kulkarni <mkulkarni@nvidia.com> Reviewed-on: http://git-master/r/31839 (cherry picked from commit 82f7aa65a57b808a5b028918c7b1b997f8a76db7) Change-Id: I218d0661d107db2eecdc1254fa399a902e49acc7 Reviewed-on: http://git-master/r/40595 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-15tegra_mediaserver: fix wrong kzalloc param, uninitialized valuesJubeom Kim
- Changed the kzalloc param from node to block. - 'CHECK_CONDITION((physical_address < 0), ...' is not valid, because the physical_address value is unsigned value. - Fixed uninitialized values Bug 825511 Change-Id: Ib579c591c39396533eea8ecc42e92373ed49bd18 Reviewed-on: http://git-master/r/37862 (cherry picked from commit 06d905e9ed14d28224d5f59acf75b4de503f8796) Reviewed-on: http://git-master/r/39782 Tested-by: Shridhar Rasal <srasal@nvidia.com> Reviewed-by: Jubeom Kim <jubeomk@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-15input: tegra-kbc: Make sure KBC in wakeupmode before suspendPradeep Goudagunta
Making sure that keyboard controller should be in the wakeup mode before going to suspend. Doing additional check in suspend. bug 845098 Change-Id: Ia645be1881390de9d18cf03633cef47e654209e2 Reviewed-on: http://git-master/r/40221 Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Victor Ryabukhin <vryabukhin@nvidia.com>
2011-07-13usb: host: ehci: Increase IAA watchdogBenoit Goby
The IAA watchdog has been added to work around flaky controllers that sometimes miss IAA interrupts. We don't need it on Tegra and it is known to cause panics. Increase it to a large value to make sure it does not fire unexpectedly. Signed-off-by: Benoit Goby <benoit@android.com> Reviewed-on: http://git-master/r/40065 (cherry picked from commit efd61c3725c8759b42550a97e9867e46a77dbf10) Change-Id: Ia35b06cd9d8f7948ee33aa5793a63d6e929df7f4 Reviewed-on: http://git-master/r/40634 Tested-by: Cho-Che Cheng <jacheng@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-11video: tegra: dc: Reduce usage count of nvmap clientVandana Salve
Carveout memory leak occured in video playback on abnormal termination as the tegra overlay driver didn't had the implementation to reduce the usage count of nvmap client on device closure. Hence on abnormal termination of mediaserver, the carveout memory remained allocated causing memory leak. The usage count of nvmap client for overlay driver is incremented on ioctl TEGRA_OVERLAY_IOCTL_SET_NVMAP_FD.It should be decremented on device closure. Added the code to decrement the uage count of nvmap client on release, so that the client and the carveout memory is free'd whenever the count reaches zero on successful as well as abnormal termination of mediaserver process. Similar implementation is done by NvHost channel driver, The NvHost drivers takes care of nvmap client usage count.i.e. decrement the uasge count of nvmap client which is incremented by NVHOST_IOCTL_CHANNEL_SET_NVMAP_FD ioctl. Bug 845676 Change-Id: I17b8d3c34adba5352af61355d8648b2611b62ef2 Reviewed-on: http://git-master/r/40157 Tested-by: Vandana Salve <vsalve@nvidia.com> Reviewed-by: Jonathan Mayo <jmayo@nvidia.com> Reviewed-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-11video: tegra: add mmap support for framebuffertegra-10.11.11Nitin Kumbhar
fb_mmap maps current window so that content of screen is accessible through mmap sys call to user space components. BUG 832288 Change-Id: I10ccb0b70c951f6d43dbd8a7a1e59e86c0ee75e9 Reviewed-on: http://git-master/r/39204 Reviewed-by: Manish Tuteja <mtuteja@nvidia.com> Tested-by: Manish Tuteja <mtuteja@nvidia.com>
2011-07-11i2c: tegra: Avoid duplicate write into Tx FifoAlok Chauhan
Dvc I2C_DONE_INTR_EN interrupt bit is always enable into dvc control register3.During normal transaction on dvc i2c bus sometimes one transaction written two times in TX fifo buffer because of triggered dvc interrupt.This is causing to corrupt the next transaction header and send wrong address over dvc i2c bus.To solve this issue dvc i2c interrupt has to disable during filling of Tx fifo and enable after that. Writing last packet into Tx Fifo is generating i2c interrupt immediately if IE bit is enable in Packet header. Data shared between isr and normal thread are not in sync. So alway update these data before writing into Tx fifo. Updated the following things in code: (1) Add the code to mask/unmask I2C_DONE_INTR_EN into dvc control reg3 (2) Always updates the i2c driver required field structure data before writing into Tx Fifo register. (3) Add the code to handle tx fifo overflow condition also. (4) Put delay before resetting the controller BUG 839528 Change-Id: I7780411b474a20f985e1f7993e5ccccbab619bbc Reviewed-on: http://git-master/r/39985 Reviewed-by: Alok Chauhan <alokc@nvidia.com> Tested-by: Alok Chauhan <alokc@nvidia.com> Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2011-07-07nvrm: wrong comparision to trigger BUG_ON()BK Kim
BUG_ON() function has wrong comparision. the comparision should be '>='. (not '>') Change-Id: I39453cc02615236b52aa04be076184da35df8e94 Reviewed-on: http://git-master/r/39503 Reviewed-by: BK Kim <bkk@nvidia.com> Tested-by: BK Kim <bkk@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-07mmc: sdhci-tegra: Correct clock setting at set_clkHarry Hong
-Setting the minimum clock at enabling clock -Enabling controller clock before MMC_POWER_UP to ensure proper register read/write -Limit max sdio clk to 24MHz for wifi on whistler. whistler only supports up to 24MHz. bug 834281 bug 845180 Change-Id: I9993a8bd9ab99af21c81d42f91175279f91cf0e4 Reviewed-on: http://git-master/r/39525 Tested-by: Harry Hong <hhong@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-07-05usb: otg: tegra: disable usbd clock at end of probePrashant Gaikwad
In the function tegra_otg_probe(), usbd clock is kept on after probe function completes. Fix this by disabling the clock before exiting the probe function if usb hotplug is not enabled. Bug 829628 Change-Id: I2ec96fedb2ed04a9c39f3c7d34cb86fdac821822 Reviewed-on: http://git-master/r/39354 Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Suresh Mangipudi <smangipudi@nvidia.com>
2011-07-05usb: ehci: tegra: Enable/disable usb clockPrashant Gaikwad
Disable usb clock when no cable is connected. Bug 829628 Change-Id: Idabe72093ae1fc1a236b0173da93813f07f3501c Reviewed-on: http://git-master/r/39353 Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Suresh Mangipudi <smangipudi@nvidia.com>
2011-07-05serial: tegra: support auto control of RTSPradeep Goudagunta
Added support for auto control of RTS. Bug 825938 Change-Id: Id6f8a26f2178acb9dd8c54069fde4dd879e9d5f1 Reviewed-on: http://git-master/r/39363 Tested-by: Pradeep Goudagunta <pgoudagunta@nvidia.com> Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2011-06-29video: tegra: Skip syncpoint increments if disabledYu-Huan Hsu
Avoid Display Controller (DC) syncpoint increments if that instance of DC is not enabled. Bug 793874 (cherry picked from commit 5be1dd4dd04db4a4c4e8004e364d504bf9f56857) Change-Id: I91f05694044bbefb15c3b92047be3be47b2ceacc Reviewed-on: http://git-master/r/38464 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2011-06-29ARM: tegra: dc: fix deadlock on overlay wq flushJon Mayo
dc lock is head while flush occurred, but functions called by workers need take the dc lock to proceed. Bug 807015 (cherry picked from commit 2e12d89ac51fe1358f0b01b9ff5cb4978fdcbe9d) Change-Id: Ib358685c478c05a8f95c926e708de12b6a3556fb Reviewed-on: http://git-master/r/38463 Reviewed-by: Linqiang Pu <dpu@nvidia.com> Tested-by: Linqiang Pu <dpu@nvidia.com> Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
2011-06-29serial: tegra: Support for best clock sourceLaxman Dewangan
Finding the best clock source for uart controller which can generate the clock rate having minimum error between requested baudrate and configured baudrate. bug 842665 Change-Id: I9a750f578f7dfd7ea2138fdf1bcec30b0f3392d5 Reviewed-on: http://git-master/r/38426 Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Pradeep Goudagunta <pgoudagunta@nvidia.com> Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2011-06-24video: tegra: Do not set HDMI as a wakeup sourceSanjay Singh Rawat
HDMI connect/disconnect will not affect the suspended device. bug 835157 Change-Id: Ie094a2dcebdca2e405f3e02b4de3d12d0cb665f0 Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/37174 (cherry picked from commit 31f69bbe2e832a7dfa7678bb965b3461f421e0f5) Reviewed-on: http://git-master/r/38089 Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
2011-06-24tegra: fix warning arguments count mismatchAlexandre Courbot
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Change-Id: I32755368de7059a8aa08b114af84d952adf16a1d Reviewed-on: http://git-master/r/37981 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-24video: tegra: add 504MHz pll_d rate for HDMIJoseph Lehrer
To support the 25.2MHz pixel clock frequency required for CEA-861-B format 1: 640x480p at 59.94Hz bug 837571 Change-Id: I33d5c82bbc9c79fd43d86abf72d5b94b1c723dd5 Reviewed-on: http://git-master/r/37916 Reviewed-by: Joseph Lehrer <jlehrer@nvidia.com> Tested-by: Joseph Lehrer <jlehrer@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Reviewed-by: Jonathan Mayo <jmayo@nvidia.com>
2011-06-24tegra: dc: fix compilation with lock debuggingAlexandre Courbot
Fix incorrect invocation of mutex_destroy that results in a compile error if mutex debugging features are enabled. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Change-Id: I4f5ce4406e11b94d108f0e0b09b2d4a77d902ac6 Reviewed-on: http://git-master/r/37435 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-21usb: ehci: tegra: Correctly handle GetPortStatus during ResumeNathan Connell
Multiple GetPortStatus requests can be made while the USB bus is resuming. All requests must be handled properly to prevent incorrect disconnect detection during Resume and improper indentification of Resume signaling as a remote wakeup event. Bug 817128 Signed-off-by: Nathan Connell <w14185@motorola.com> Reviewed-on: http://git-master/r/36311 (cherry picked from commit f4cd754c1af2bbc2101dd208fd4d3d0bf6368d26) Change-Id: I5e4a7aeaef97f0416ff8ea32e6391fe8450e4c26 Reviewed-on: http://git-master/r/37413 Reviewed-by: Manish Tuteja <mtuteja@nvidia.com> Tested-by: Manish Tuteja <mtuteja@nvidia.com>
2011-06-21video: tegra: hdcp: correct retry delay conditionPritesh Raithatha
This incorrect condition adds sleep to i2c read & write functions even though they are executed successfully. Bug 831891 Change-Id: If029b16c724516e96bf75458c60ca6b411ab5a96 Reviewed-on: http://git-master/r/37463 Reviewed-on: http://git-master/r/37472 Reviewed-by: Pritesh Raithatha <praithatha@nvidia.com> Tested-by: Pritesh Raithatha <praithatha@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-21usb: host: tegra: Fix a possible int storm on resume from lp0Benoit Goby
usbcore will reenable usb interrupts later once the bus has been resumed. bug 835193 Signed-off-by: Benoit Goby <benoit@android.com> Reviewed-on: http://git-master/r/36145 (cherry picked from commit 1ffaaac2463f94ad1056abfa345f6e50249ec1c4) Change-Id: Iee7f29ad5ec409fa563742c505b448f5cbdf3c81 Reviewed-on: http://git-master/r/37412 Tested-by: Cho-Che Cheng <jacheng@nvidia.com> Reviewed-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-21usb: ehci: tegra: Don't change the hcd state on restartBenoit Goby
usbcore will change it once the bus has been resumed. This fixes the "hub 3-0:1.0: activate --> -22" error on resume. bug 835193 Signed-off-by: Benoit Goby <benoit@android.com> Reviewed-on: http://git-master/r/36144 (cherry picked from commit bce8ee9ee177c2c4af21f3275b6472e68a13850e) Change-Id: I08b7485f68e4e9a1e91c37e35a65d037a4e30879 Reviewed-on: http://git-master/r/37411 Tested-by: Cho-Che Cheng <jacheng@nvidia.com> Reviewed-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-21ARM: tegra: usb: prefetch engine buffer coherency protectionJay Cheng
The prefetcher fetches a total of 128 bytes, and then responding to sequential reads with this prefetched data. To avoid coherency issues, it discards the prefetched data if a non sequential read occurs. Allocate dtd with 128 bytes boundary to make 2 consecutive dtd 128 bytes apart. bug 825970 Reviewed-on: http://git-master/r/36157 (cherry picked from commit bf623c5edbc8f0f5b23d5580aea1038418893792) Change-Id: I6cc977545aee1bec1c91e4085cc2b3b55acccdb5 Reviewed-on: http://git-master/r/37410 Tested-by: Cho-Che Cheng <jacheng@nvidia.com> Reviewed-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-17tegra: dc: set HDMI clock to 0 if HDMI unpluggedtegra-10.11.10Xin Xie
HDMI clock is not auto dvfs, so we need set the clock rate to 0 if HDMI is disabled. Otherwise the Vdd core voltage will be always 1.2v even after HDMI cable unplugged. BUG 828306 Reviewed-on: http://git-master/r/34379 (cherry picked from commit 58ddd144a6c2dd9bbc9d2f3c8b1e025364d88c22) Change-Id: I5b455a7a945d4834fb162b2986639df5a26b112c Reviewed-on: http://git-master/r/37176 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com>
2011-06-16usb: gadget: f_mass_storage: Make us pass USBCV MSC Compliance testsRakesh Bodla
Defer the SET_CONFIG and SET_INTERFACE control transfer's data/status stages till we are ready to process new CBW from the host. This way we ensure that we don't loose any CBW during MSC compliance tests and cause lock up. (cherry picked from commit 95ed32366748e2034e82c9e738c312df8fb3d3a9) Change-Id: Ib8c7140d11f558c969802558476ff6013aae3269 Reviewed-on: http://git-master/r/36275 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2011-06-16mmc: fix card detect after suspendDavid Schalig
If defered SD card resume (CONFIG_MMC_BLOCK_DEFERRED_RESUME) is enabled, PM_POST_SUSPEND handler will never set host->rescan_disable back to 0, and card detect logic will be disabled forever. fix missing break fix incorrect cleanup sequences Bug 833034 http://git-master/r/#change,36251 (cherry picked from commit 31d509d8e2e2b7c35da69029f932d35c3995fe36) Change-Id: I3e513359af68e92476d693f4d1751b4b0d883569 Reviewed-on: http://git-master/r/36429 Reviewed-by: David Schalig <dschalig@nvidia.com> Tested-by: David Schalig <dschalig@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-06-16usb: gadget: composite: Allow function drivers to pause control transfersRakesh Bodla
Some USB function drivers (e.g. f_mass_storage.c) need to delay or defer the data/status stages of standard control requests like SET_CONFIGURATION or SET_INTERFACE till they are done with their bookkeeping and are actually ready for accepting new commands to their interface. They can now achieve this functionality by returning USB_GADGET_DELAYED_STATUS in their setup handlers (e.g. set_alt()). The composite framework will then defer completion of the control transfer by not completing the data/status stages. This ensures that the host does not send new packets to the interface till the function driver is ready to take them. When the function driver that requested for USB_GADGET_DELAYED_STATUS is done with its bookkeeping, it should signal the composite framework to continue with the data/status stages of the control transfer. It can do so by invoking the new API usb_composite_setup_continue(). This is where the control transfer's data/status stages are completed and host can initiate new transfers. The DELAYED_STATUS mechanism is currently only supported if the expected data phase is 0 bytes (i.e. w_length == 0). Since SET_CONFIGURATION and SET_INTERFACE are the only cases that will use this mechanism, this is not a limitation. (cherry picked from commit 1b9ba000177ee47bcc5b44c7c34e48e735f5f9b1) Change-Id: I4aaf702e03898573f92e58223a29eafbc9612219 Reviewed-on: http://git-master/r/36273 Tested-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Hanumanth Venkateswa Moganty <vmoganty@nvidia.com>