summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-09-26media: soc_camera: add imx135 sensor driverBryan Wu
Sony IMX135 camera sensor can be found on Ardbeg/Laguna. This patch introduced sensor driver for imx135 using soc_camera interface. Bug 1380143 Change-Id: Ifa0becf1ec2d9931ebf9ea3a4e9ea3e1013a9e36 Signed-off-by: Bryan Wu <pengw@nvidia.com> Reviewed-on: http://git-master/r/337469 (cherry picked from commit 94a04c2c9b614519aab6f718d60bcf1d8032aa8f) Reviewed-on: http://git-master/r/498935 GVS: Gerrit_Virtual_Submit Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-26video: tegra: nvmap: remove support for Deprecated GET_ID/FROM_ID ioctl'sManeet Singh
Remove support and add warning message for deprecated IOCTL's - NVMAP_IOC_FROM_ID and NVMAP_IOC_GET_ID. These ioctl calls are deprecated by corresponding FD ioctl calls. Bug 1553082 Change-Id: I3cd531422293f19496687f346692fa91ebe58a40 Signed-off-by: Maneet Singh <mmaneetsingh@nvidia.com> Reviewed-on: http://git-master/r/498045 (cherry picked from commit 420dce0a99231453ebbd091f110d0de816e4885e) Reviewed-on: http://git-master/r/538987 GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-26video: tegra: nvmap: fix use-after-free race conditionManeet Singh
Incremented nvmap_handle ref count in utility function nvmap_get_id_from_dmabuf_fd() before the function release reference to dma buffer. This is required to avoid race conditions in nvmap code where nvmap_handle returned by this function could be freed concurrently while the caller is still using it. As a side effect of above change, every caller of this utility function must decrement nvmap_handle ref count after using the returned nvmap_handle. Bug 1553082 Change-Id: Iffc2e5819f8b493d5ed95a9d0c422ccd52438965 Signed-off-by: Maneet Singh <mmaneetsingh@nvidia.com> Reviewed-on: http://git-master/r/498135 (cherry picked from commit afddea745cc4f4a824be501ecbbb50f55e7e6f04) Reviewed-on: http://git-master/r/538986 GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-26video: tegra: nvmap: cleanup redundant functionsManeet Singh
Removed redundant function unmarshal_user_id() and replaced it with unmarshal_user_handle() which it internally calls without any other changes. Bug 1553082 Change-Id: I7d998966c593f11a3322b0503ef11311fc1ae5e7 Signed-off-by: Maneet Singh <mmaneetsingh@nvidia.com> Reviewed-on: http://git-master/r/498103 (cherry picked from commit 4880b6c2bdf5b10e4a71b5b79e7878343b9e7e3b) Reviewed-on: http://git-master/r/538985 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-24ARM: tegra12: add clock preinit code for U-BootBryan Wu
U-Boot doesn't setup clock as NVTBoot or fastboot, so clocks need to be preinit before our normal clock init. Bug 1482099 Change-Id: I5ad8dc7e61f1ad4864410a808c41298a91c7198f Signed-off-by: Bryan Wu <pengw@nvidia.com> Signed-off-by: Prabhu Kuttiyam <pkuttiyam@nvidia.com> Reviewed-on: http://git-master/r/408427 (cherry picked from commit 6682ca58527e47fe6db40855d2deba48a6d321d3) Reviewed-on: http://git-master/r/500873 Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-24ARM: tegra12: config: enable clock preinit codeBryan Wu
Enable clock preinit code by default for U-Boot. Bug 1482099 Change-Id: I72fa1e9b45f580813846c7506efec5a03347efcd Signed-off-by: Bryan Wu <pengw@nvidia.com> Signed-off-by: Prabhu Kuttiyam <pkuttiyam@nvidia.com> Reviewed-on: http://git-master/r/408428 (cherry picked from commit 8f2ff20c410a8b7a25e4132e6a194117e4f74361) Reviewed-on: http://git-master/r/500874 Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-24video: tegra: host: gk20a: reduce gr delaysPrashant Malani
The delay value used in gr usleep_range calls is too high. We can start at a much lower value. Bug 200032452 Change-Id: I7d196d0e3be0a5cd84e8c4dad537fae043da6274 Signed-off-by: Prashant Malani <pmalani@nvidia.com> Reviewed-on: http://git-master/r/335234 (cherry picked from commit 49bb8436a534496c70e6238d3bc20ed280d5b654) Reviewed-on: http://git-master/r/504632 Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> Tested-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-19edp: sysedp : CPU/GPU priority depends on fGPUMatt Longnecker
Provide sysedp_dynamic_capping with the instantaneous GPU frequency when notifying it of the GPU load. Modify the gpu/cpu priority decision logic to choose CPU priority until GPU frequency gets "near" the CPU-priority-limited-GPU-fmax. Introduce the priority_bias debugfs parameter to facilitate tuning of "near". priority_bias takes a value from 0 to 100. Change-Id: I57df17d50cd8077a512b5932f4a304ca5e6992aa Signed-off-by: Matt Longnecker <mlongnecker@nvidia.com> Reviewed-on: http://git-master/r/481720 (cherry picked from commit b2ac745a45e273e849d7b190913ee97092fdebc2) Reviewed-on: http://git-master/r/498901 GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-19asoc: rt56xx: fix missing device_remove_fileShreshtha SAHU
added missing device_remove_file during device remove this resulted failure in modprobe of module Bug 200038187 Bug 200037087 Change-Id: Ibbe8cf92162144d438f5b563bf6d2b9787acc04e Signed-off-by: Shreshtha SAHU <ssahu@nvidia.com> Reviewed-on: http://git-master/r/499745 Reviewed-by: Sumit Bhattacharya <sumitb@nvidia.com> Reviewed-by: Zheng Liu <zhliu@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-18video: tegra: dc: Avoid FRAME_END_INT conflictDaniel Solomon
Allowing for dc->lock to be acquired by the caller in function tegra_dc_config_frame_end_intr can result in FRAME_END_INT mask register being overwritten if the lock is actually acquired by another thread. Refactor the critical section into its own function and allow callers to call either function. Also Change the name of tegra_dc_wait_for_frame_end to indicate that it should be called with dc->lock locked. Bug 1534724 Change-Id: I87b1fc529f29f707a1bdadf18efa6bb19d6966b3 Signed-off-by: Daniel Solomon <daniels@nvidia.com> Reviewed-on: http://git-master/r/456988 (cherry picked from commit ec9b7f555b9648e3aee0cd9781a92b14178a3344) Reviewed-on: http://git-master/r/496581 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Jong Kim <jongk@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Reviewed-by: Jon Mayo <jmayo@nvidia.com> Reviewed-by: Bibek Basu <bbasu@nvidia.com> Tested-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-18video: tegra: dc: Fix and refactor FRAME_END_INTDaniel Solomon
- Fix a conflict with other DC interrupt masks when the DSI driver waits on FRAME_END_INT - Move generic FRAME_END_INT mask/unmask and wait-for functions to dc.c Bug 1534724 Change-Id: I40e26ada2f0494782979e32c1a22906361b214b5 Signed-off-by: Daniel Solomon <daniels@nvidia.com> Reviewed-on: http://git-master/r/451186 (cherry picked from commit 24a39c49f63eea704003ee27296f1f70d46bcbd0) Reviewed-on: http://git-master/r/496580 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Jong Kim <jongk@nvidia.com> Reviewed-by: Bibek Basu <bbasu@nvidia.com> Tested-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-17ata: Skip ahci dump call if probe is not ivokedPreetham Chandru R
Skip ahci dump call if probe is not ivoked and even if CONFIG_TEGRA_SATA_IDLE_POWERGATE is not defined Bug 200010376 Change-Id: I4ec5f6643b3bc0dbbebbd65b6085d9ea2353eac1 Signed-off-by: Preetham Chandru R <pchandru@nvidia.com> Reviewed-on: http://git-master/r/455571 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Venkata Jagadish <vjagadish@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-17arm: tegra12: jetson-tk1: add debounce to power keyBibek Basu
Continuous press & release of power key during resume cause power key to generate continious interrupt leading to hang of device. So add debounce time Bug 200037478 Change-Id: Ia3081700af3291813450dda7205f842f511e63db Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/499296 GVS: Gerrit_Virtual_Submit Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-16arm: tegra: Ram repair for slow clusterBibek Basu
Do ram repair for slow cluster also during boot Bug 1528461 Change-Id: I71ed7891aaff48f0b87438ad029b22ced9be0f04 Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/494787 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-16ASoC: Tegra: Fix double regulator disableShreshtha SAHU
digital_reg was disabled second time instead of codec_reg Bug 200036995 Change-Id: I8e9b3aeafa613a5a58063b88ee81bf3d0aaf4e43 Signed-off-by: Shreshtha SAHU <ssahu@nvidia.com> Reviewed-on: http://git-master/r/498837 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Vinayak Pane <vpane@nvidia.com> Reviewed-by: Sumit Bhattacharya <sumitb@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-16usb: xhci: tegra: remove PCIe dependencyHaribabu Narayanan
PCIe powergating dependency is now handled internally in the powergating module for t12x/t13x. This patch removes PCIe related powergating calls from XHCI driver for tegra. Bug 1451279 Bug 1524744 Bug 200027067 Change-Id: I0752cd745f218266e1636cc7c40a6c29dee3b3d4 Reviewed-on: http://git-master/r/424036 (cherry picked from commit 91e2bd6728ca1969615081c70be6b2f21acd43d5) Signed-off-by: Vidya Sagar <vidyas@nvidia.com> Reviewed-on: http://git-master/r/498662 Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-16arm: tegra: power: add pcie dependency to xusb opsHaribabu Narayanan
Due to a HW bug 1320346 in t12x/t13x, PCIE needs to be unpowergated when XUSB is to be accessed. Currently PCIE powergating ops need to be invoked from XUSB driver since powergating module doesn't internally handle this dependency. This patch implements this dependency within the powergating module so that xhci-tegra driver can stay chip-agnostic. Bug 1451279 Bug 1524744 Bug 200027067 Change-Id: I57da2645c9bde1c98b73a906f2ff5e407a3a8380 Reviewed-on: http://git-master/r/424035 (cherry picked from commit ff373b04f297ee653c58a86c6642325037f5d10e) Signed-off-by: Vidya Sagar <vidyas@nvidia.com> Reviewed-on: http://git-master/r/498661 Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-16usb: xhci: tegra: remove conditional powergatingHaribabu Narayanan
The powergate module now maintains reference count for PCIE. Remove conditional checks in XHCI driver before invoking powergating APIs. Bug 1451279 Bug 1455032 Bug 200027067 Change-Id: I186270dc86fba78a8c321ba5923382e642b14b60 Reviewed-on: http://git-master/r/418061 (cherry picked from commit b0f746945fccf025e2ab1764c0cc35eb1bc780b3) Signed-off-by: Vidya Sagar <vidyas@nvidia.com> Reviewed-on: http://git-master/r/498660 Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-16arm: tegra: power: add reference counters for pcieHaribabu Narayanan
Due to HW Bug 1320346, both XUSB and PCIE modules need to control powergating on PCIE block. Implement reference counter mechanism so that powergating is done only when neither of these two drivers are active. Bug 1451279 Bug 1455032 Bug 200027067 Change-Id: I6866ba0fb47433e211360b722abbb1b2c1a05c35 Reviewed-on: http://git-master/r/418060 (cherry picked from commit 70be55b824632252be36f6ee0d495d4c0f4e507c) Signed-off-by: Vidya Sagar <vidyas@nvidia.com> Reviewed-on: http://git-master/r/498659 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15arm: tegra12: dtb: rearrange pmc registrationBibek Basu
PMC should be suspended as soon as interrupt- controller bus is suspended so that no wake signal is entertained in between leading to abnormal system behaviour Bug 200036432 Change-Id: I4de7462a8c0588f8cecde270a97c39040748a4b6 Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/498280 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15ARM: tegra: move pinmux dt node before gpio modeLaxman Dewangan
Move the pimx DT node before gpio node to make sure that pinmux get registered before the gpio. Bug 200033491 Change-Id: I55d5a5c1a1570c16d8332ba224e0ed9a1f7c257c Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/412630 (cherry picked from commit 463019f3158b58906f5b4c81463e5b0b1067576f) Reviewed-on: http://git-master/r/498813 Reviewed-by: Matthew Pedro <mapedro@nvidia.com> Tested-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15pinctrl: tegra: fix pinconfig_group_setBibek Basu
Prepare config using param parameter to generate the right value for pinmux register Bug 200033491 Change-Id: I973cc449e8cf89cb3b6f5b5da1021d21d193b47d Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/496827 (cherry picked from commit 418c027e40353a4b99fe7fcfbc0743de7e07d15c) Reviewed-on: http://git-master/r/498329 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Venkat Moganty <vmoganty@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15pinctrl: tegra: set tristate =1 and input =0 for unused pinsLaxman Dewangan
Set the tristate bit to 1 and e_input to 0 for unused pins to set it on low power and avoid conflict with any other pins. Bug 200033491 Change-Id: If83f6129dbf6c6fe28a7a7c596e5a3858a894914 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/416649 (cherry picked from commit 7e81b36f87cffdc5d473a39735877a1432ac3151) Reviewed-on: http://git-master/r/498328 GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Tested-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15pinctrl: tegra: configure pins for gpio directionLaxman Dewangan
If pin is configured on gpio mode and set for input direction then set e_input = 1 and if pin is set for output direction then set tristate = 0 for that pin. Bug 200033491 Change-Id: Ibcae17ad8bf4e45f0c74eb68d3bf975078fb67d6 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/416650 (cherry picked from commit 3dbac8e8382be0766e221c3f47f6254538b17030) Reviewed-on: http://git-master/r/498327 GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Tested-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15gpio: tegra: call pinctrl dirctions apis on direction input/outputLaxman Dewangan
Set the pins in different direction based on client request from gpio. This will help to non-tristate the pin on gpio output mode or enable input on gpio input mode without any explicit condition. Bug 200033491 Change-Id: I074451e344bfd8465aceb39c1091809da4f58f58 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> (cherry picked from commit c520a6048a942b5870f560979045c74659c8fe76) Reviewed-on: http://git-master/r/#/c/415991/ Reviewed-on: http://git-master/r/498326 Reviewed-by: Winnie Hsu <whsu@nvidia.com> Tested-by: Winnie Hsu <whsu@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-15gpio: tegra: Enable pinctrl_request_gpioshravanid
Call pinctrl_request_gpio when gpio is requested by tegra_gpio_request Bug 200033491 Change-Id: I0e0a129adf51775edaa5887b11188f0ed1776e0e Signed-off-by: shravanid <shravanid@nvidia.com> Reviewed-on: http://git-master/r/404352 (cherry picked from commit 7ba0a34569bff25730406a4c54967e4e2c470cbc) Reviewed-on: http://git-master/r/498325 GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Tested-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-12Arm: config: tegra12: Enable interactive governorRajkumar Kasirajan
The interactive governor provides better performance than ondemand governor. Enable it to improve the performance. Bug 1359622 Change-Id: Ibc51285531ce2ef0d20fc668e240ef59db1322b1 Signed-off-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> (cherry picked from commit 42ad40e52df0423d1622b1aa9835033c1c8ef890) Reviewed-on: http://git-master/r/#/c/488018/ Reviewed-on: http://git-master/r/488030 Reviewed-by: Winnie Hsu <whsu@nvidia.com> Tested-by: Winnie Hsu <whsu@nvidia.com>
2014-09-11arm64: configs: tegra13: enable Tegra ProfilerIgor Nabirushkin
Enable Tegra Profiler for L4T. Bug 1540280 Change-Id: I13f22d512c1e42d4ad91c03ed7825a8bdbbf2e93 Signed-off-by: Igor Nabirushkin <inabirushkin@nvidia.com> Reviewed-on: http://git-master/r/450456 (cherry picked from commit 395d3b5d3fad1ac49b06d3b78004cbfce660c504) Reviewed-on: http://git-master/r/481969 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Andrey Trachenko <atrachenko@nvidia.com> Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-09-08arm: configs: vcm30t124: enable Tegra ProfilerIgor Nabirushkin
Enable Tegra Profiler for vcm30t124 board. Bug 1540280 Change-Id: I75263020677b0dd7f210bbdc72a775a05370ef81 Signed-off-by: Igor Nabirushkin <inabirushkin@nvidia.com> Reviewed-on: http://git-master/r/437635 (cherry picked from commit f0cd768a1d49bcadc0ced238b0ce24272219cd2f) Reviewed-on: http://git-master/r/481972 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Andrey Trachenko <atrachenko@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-08arm: configs: tegra12: enable Tegra ProfilerIgor Nabirushkin
Enable Tegra Profiler for L4T. Bug 1540280 Change-Id: I700401a44e91370f3e811999b0017ac6ef2ff28a Signed-off-by: Igor Nabirushkin <inabirushkin@nvidia.com> Reviewed-on: http://git-master/r/453861 (cherry picked from commit 25cfc076fc7b4133d4d3027c9530723325b8fa3d) Reviewed-on: http://git-master/r/481968 Reviewed-by: Winnie Hsu <whsu@nvidia.com> Tested-by: Winnie Hsu <whsu@nvidia.com>
2014-09-08arm: tegra12: initialize pll_a_out0Bibek Basu
Before initializing i2s clock we need to intialize its parent clocks pll_a_out0 Bug 200027051 Change-Id: I9fa42e82bbf3c7742a57ffc698c31e6ca1d94bd5 Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/496028 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bryan Wu <pengw@nvidia.com> Tested-by: Bryan Wu <pengw@nvidia.com> Reviewed-by: Aleksandr Frid <afrid@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-08tegra: fb: Notify fbcon DC is unavailablePankaj Dabade
In the absence of hotplug, monitor data and mode database is removed and DC is switched off. However, fbcon is unaware. This patch adds the change to fb_info state to suspend while updating monitor specs. This state will denote that the hardware is unavailable. Info will be restored to state running once modelist is available. Bug 200031817 Change-Id: I0d4a51fdaa383d9201ab299d602fb3cc9ed93f52 Signed-off-by: Pankaj Dabade <pdabade@nvidia.com> Reviewed-on: http://git-master/r/496027 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-09-05arm: tegra12_defconfig: add Realtek wifi modulesMike Thompson
Adding kernel support for Realtek USB and minipci wifi modules. Bug 1512036 Change-Id: I44f52b5d2c0e55e56d0a53273f7c045d38ff485f Signed-off-by: Mike Thompson <mikthompson@nvidia.com> Reviewed-on: http://git-master/r/496144 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Zheng Liu <zhliu@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-09-05arm: tegra12_defconfig: modularize kernel bitsZheng Liu
Modularize some components to shrink the kernel. The target is a .text section <=8MB in order to ensure successful relocations from the 22MB module loading segment. This gets us to about 10MB which may suffice for now. Bug 1536426 Change-Id: Ib3f91eef4dfc4d1e3c9620020a326f3f53f0491e Signed-off-by: Zheng Liu <zhliu@nvidia.com> Reviewed-on: http://git-master/r/494898 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Allen Martin <amartin@nvidia.com>
2014-09-05arm: tegra12_defconfig: renormalize the defconfigZheng Liu
No actual configuration changes. Config items have shifted around, causing confusion when making actuall configuration changes. This defconfig is generated with the following process under the kernel directory: make tegra12_defconfig make oldconfig make savedefconfig cp defconfig arch/arm/configs/tegra12_defconfig Change-Id: Ic0c197cf6bad4cb4ddd7742215fab8a1e8d30a50 Signed-off-by: Zheng Liu <zhliu@nvidia.com> Reviewed-on: http://git-master/r/494897 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Allen Martin <amartin@nvidia.com>
2014-09-05tegra: sound: export symbols for module accessZheng Liu
Export symbols so the sound driver can be built as a module. Bug 1536426 Change-Id: I86fa8800df1988f630b4e45d4cbf1733c039c837 Signed-off-by: Zheng Liu <zhliu@nvidia.com> Reviewed-on: http://git-master/r/494120 GVS: Gerrit_Virtual_Submit Reviewed-by: Allen Martin <amartin@nvidia.com>
2014-09-05arm: tegra: export symbol for module accessZheng Liu
Export tegra_get_board_info to allow sound driver to be built as a module. Bug 1536426 Change-Id: Id125cce6fbef1a70c438bec2eabadf5fdc698272 Signed-off-by: Zheng Liu <zhliu@nvidia.com> Reviewed-on: http://git-master/r/494119 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Allen Martin <amartin@nvidia.com>
2014-09-03pwm: Add sysfs interfaceH Hartley Sweeten
Add a simple sysfs interface to the generic PWM framework. /sys/class/pwm/ `-- pwmchipN/ for each PWM chip |-- export (w/o) ask the kernel to export a PWM channel |-- npwm (r/o) number of PWM channels in this PWM chip |-- pwmX/ for each exported PWM channel | |-- duty_cycle (r/w) duty cycle (in nanoseconds) | |-- enable (r/w) enable/disable PWM | |-- period (r/w) period (in nanoseconds) | `-- polarity (r/w) polarity of PWM (normal/inversed) `-- unexport (w/o) return a PWM channel to the kernel Based on work by Lars Poeschel. Bug 200028381 Change-Id: I0c9c6ad2ca7173e6fc3fbe1d3cd3963cde00539a Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Lars Poeschel <poeschel@lemonage.de> Cc: Ryan Mallon <rmallon@gmail.com> Cc: Rob Landley <rob@landley.net> Signed-off-by: Thierry Reding <thierry.reding@gmail.com> Signed-off-by: Bibek Basu <bbasu@nvidia.com> (cherry picked from commit 76abbdde2d95a3807d0dc6bf9f84d03d0dbd4f3d) Reviewed-on: http://git-master/r/455068 (cherry picked from commit b1824bc0325f84ea04dab7d6d4f7c887c80b1982) Reviewed-on: http://git-master/r/488690 GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com> Tested-by: Winnie Hsu <whsu@nvidia.com>
2014-09-03tegra: dc: dont synchronize irq from irq threadBibek Basu
Synchronizing IRQ from irq thread context will never return because the thread will sleep forever.And thats the reason for DPM timeout and kernel crash when suspend hook also tries to do so. [ 204.471652] tegradc tegradc.1: **** DPM device timeout **** [ 204.484865] [<c07a58a8>] (__schedule+0x3b4/0x6e0) from [<c00ccf94>] (synchronize_irq+0xac/0xe4) [ 204.501399] [<c00ccf94>] (synchronize_irq+0xac/0xe4) from [<c0341628>] (tegra_dc_suspend+0xcc/0x15c) [ 204.518507] [<c0341628>] (tegra_dc_suspend+0xcc/0x15c) from [<c03da574>] (platform_pm_suspend+0x58/0x64) [ 204.536166] [<c03da574>] (platform_pm_suspend+0x58/0x64) from [<c0032c00>] (tegra_pd_suspend_dev+0x34/0x9c) [ 204.554226] [<c0032c00>] (tegra_pd_suspend_dev+0x34/0x9c) from [<c03e5384>] (pm_genpd_default_suspend+0x24/0x30) [ 204.572942] [<c03e5384>] (pm_genpd_default_suspend+0x24/0x30) from [<c03e5864>] (pm_genpd_suspend+0x58/0xa4) [ 204.591515] [<c03e5864>] (pm_genpd_suspend+0x58/0xa4) from [<c03dfb30>] (dpm_run_callback+0x34/0x54) [ 204.609552] [<c03dfb30>] (dpm_run_callback+0x34/0x54) from [<c03dffe4>] (__device_suspend+0x16c/0x380) Bug 1486344 Change-Id: Ie512262fdfef90dc199f1f39ebffb540b909f3e2 Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/450815 GVS: Gerrit_Virtual_Submit Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-08-29video: tegra: nvmap: track handle's mapped memoryManeet Singh
Added new file "maps" for nvmap heaps. In addition to data given by existing "allocations" file, this also shows the client's virtual mappings and total amount of handle physical memory that is actually mapped to a client's virtual address space. This change will help in tracking nvmap memory usage of processes. Bug 1529015 Change-Id: I85b5c221c7a7475cbc3585b130fda6a282756662 Signed-off-by: Maneet Singh <mmaneetsingh@nvidia.com> Reviewed-on: http://git-master/r/448503 (cherry picked from commit 1f632679174cea962406980c8201d63c163635ee) Reviewed-on: http://git-master/r/448580 Reviewed-by: Krishna Reddy <vdumpa@nvidia.com>
2014-08-26dma:coherent: manage resizable memory with single deviceKrishna Reddy
This is necessary to avoid unusable memory between device nodes. Bug 1517584 Change-Id: I37ac104fa5e512758a4df299424fa0456f368bb6 Signed-off-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-on: http://git-master/r/486855 (cherry picked from commit 5c76b9162730826191c71fcf082d3457e5496bc0) Reviewed-on: http://git-master/r/488266 GVS: Gerrit_Virtual_Submit Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
2014-08-26cpufreq: ondemand: Remove redundant return statementStratos Karafotis
After commit dfa5bb622555 (cpufreq: ondemand: Change the calculation of target frequency), this return statement is no longer needed. Bug 1359622 Change-Id: I277187f3e5cbbc205524d678f95a36d65e6c8ff8 Reported-by: Henrik Nilsson <Karl.Henrik.Nilsson@gmail.com> Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> (cherry picked from commit 880eef041655b35f9aa488726ea3c4303a4f2204) Reviewed-on: http://git-master/r/482372 Tested-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-08-26cpufreq: governors: Remove duplicate check of target freq in supported rangeStratos Karafotis
Function __cpufreq_driver_target() checks if target_freq is within policy->min and policy->max range. generic_powersave_bias_target() also checks if target_freq is valid via a cpufreq_frequency_table_target() call. So, drop the unnecessary duplicate check in *_check_cpu(). Bug 1359622 Change-Id: I2057504a85cc773f98497285cf9e62e5a15c09ea Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> (cherry picked from commit 934dac1ea072bd8adff8d6a6abba561731e093cf) Reviewed-on: http://git-master/r/482371 Tested-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-08-26cpufreq: Clean up header files included in the coreViresh Kumar
This patch addresses the following issues in the header files in the cpufreq core: - Include headers in ascending order, so that we don't add same many times by mistake. - <asm/> must be included after <linux/>, so that they override whatever they need to. - Remove unnecessary includes. - Don't include files already included by cpufreq.h or cpufreq_governor.h. Bug 1359622 [rjw: Changelog] Change-Id: I3d69d7243b982cd2e32abfdfb9dd750843a07629 Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> (cherry picked from commit 5ff0a268037d344f86df690ccb994d8bc015d2d9) Reviewed-on: http://git-master/r/482370 Tested-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-08-26cpufreq: ondemand: Change the calculation of target frequencyStratos Karafotis
The ondemand governor calculates load in terms of frequency and increases it only if load_freq is greater than up_threshold multiplied by the current or average frequency. This appears to produce oscillations of frequency between min and max because, for example, a relatively small load can easily saturate minimum frequency and lead the CPU to the max. Then, it will decrease back to the min due to small load_freq. Change the calculation method of load and target frequency on the basis of the following two observations: - Load computation should not depend on the current or average measured frequency. For example, absolute load of 80% at 100MHz is not necessarily equivalent to 8% at 1000MHz in the next sampling interval. - It should be possible to increase the target frequency to any value present in the frequency table proportional to the absolute load, rather than to the max only, so that: Target frequency = C * load where we take C = policy->cpuinfo.max_freq / 100. Tested on Intel i7-3770 CPU @ 3.40GHz and on Quad core 1500MHz Krait. Phoronix benchmark of Linux Kernel Compilation 3.1 test shows an increase ~1.5% in performance. cpufreq_stats (time_in_state) shows that middle frequencies are used more, with this patch. Highest and lowest frequencies were used less by ~9%. [rjw: We have run multiple other tests on kernels with this change applied and in the vast majority of cases it turns out that the resulting performance improvement also leads to reduced consumption of energy. The change is additionally justified by the overall simplification of the code in question.] Bug 1359622 Change-Id: Ibcbee5afef154c47e3ae45e133f3a0435d2a4fec Signed-off-by: Stratos Karafotis <stratosk@semaphore.gr> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> (cherry picked from commit dfa5bb622555d9da0df21b50f46ebdeef390041b) Reviewed-on: http://git-master/r/482369 Tested-by: Rajkumar Kasirajan <rkasirajan@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: Winnie Hsu <whsu@nvidia.com>
2014-08-25arm: tegra12: initialize pll_a before being usedBibek Basu
i2s clock tries to lock pll_a during clock init without initializing pll_a in kernel. Patch fixes that by initializing pll_a Bug 200027051 Change-Id: Ia4ba705ea1bb57e4d462854c24551ee3d3af4718 Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/455472 Reviewed-by: Winnie Hsu <whsu@nvidia.com> Tested-by: Winnie Hsu <whsu@nvidia.com>
2014-08-21gpu: nvgpu: Never use KEPLER_C sync point incrementTerje Bergstrom
Bug 1497928 Change-Id: Ic3a2923ae73792e87145b6211e45e5ace3651ddc Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/482492 GVS: Gerrit_Virtual_Submit Reviewed-by: Deepak Nibade <dnibade@nvidia.com> Tested-by: Prabhu Kuttiyam <pkuttiyam@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-08-20arm: tegra13: Jetson-TK1: update check for memtypeBibek Basu
If memtype from boardid eeprom is 1, then only load emc dvfs for 4GB Bug 1541809 Change-Id: I82b7b40b738308504cf9c88be0fc02d067d22d21 Signed-off-by: Bibek Basu <bbasu@nvidia.com> Reviewed-on: http://git-master/r/455952 Reviewed-by: Automatic_Commit_Validation_User Tested-by: Mike Thompson <mikthompson@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
2014-08-20media: platform: tegra: support 64 bit user codeCharlie Huang
Since the user space code may works in either 32 or 64 bit mode, attentions should be taken while passing pointers from user space to the kernel. In this case, the p_value of struct nvc_param and power_on/power_off of struct virtual_device received from the user space should be handled properly. The solution is to create a set of 32 bit version of structures nvc_param and virtual_device along with some dedicated 32 bit mode ioctl commands, then in the ioctl functions, the 32 bit user mode access will be handled separately. bug 1518359 Change-Id: I4cbbeeaef446ab962aaa1f92251ce1fd9d5723aa Signed-off-by: Charlie Huang <chahuang@nvidia.com> Reviewed-on: http://git-master/r/437390 (cherry picked from commit 3fdbc210fc9f33d0f89af079a89bdb1f41e73ecb) Reviewed-on: http://git-master/r/482230 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
2014-08-18arm: tegra: soctherm: revert reprogram suppressionDiwakar Tundlam
Suppressing reprogramming HW registers saves very little but can potentially result in suppressing all HW interrupts from soctherm. Bug 1536511 Change-Id: I57a78f7955089c60dde89e81ed8d88d9f408f364 Signed-off-by: Diwakar Tundlam <dtundlam@nvidia.com> Reviewed-on: http://git-master/r/453269 (cherry picked from commit d4428beada43ba8849eb98ec1e42e13e60fe5c4b) Reviewed-on: http://git-master/r/456766 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit