summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/pm.c
AgeCommit message (Collapse)Author
2012-04-24arm: tegra: pm: use writel instead pmc_32kwritelShridhar Rasal
For update of PMC_CTRL register delay is not required. Replacing pmc_32kwritel by writel to improve cluster switch time. bug 954247 Change-Id: Ic39c6fafd606321d549cf26e4cfe662f462b9bdc Signed-off-by: Shridhar Rasal <srasal@nvidia.com> Reviewed-on: http://git-master/r/97229 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-04-19Revert "ARM: tegra: remove usage of USE_TEGRA_CPU_SUSPEND"Sang-Hun Lee
This reverts commit e6d0e0ceec7cd1a7b8085eb31d2e70bc4d15684f. Bug 967887 Change-Id: I60927a93ebdf6ba4da14311f8ffcc1edf4f56391 Signed-off-by: Sang-Hun Lee <sanlee@nvidia.com> Reviewed-on: http://git-master/r/96788 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
2012-04-19Revert "ARM: tegra: rethink the cpu suspend-resume code path"Sang-Hun Lee
This reverts commit f31ca2d9e0580b58dc51fde31fc8ace190dd253b. Bug 967887 Change-Id: I3fe975f7a6939cace5e208947bcb82e09008c0ac Signed-off-by: Sang-Hun Lee <sanlee@nvidia.com> Reviewed-on: http://git-master/r/96787 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
2012-04-12tracing: Add tracepoints for cluster switchAntti P Miettinen
Simple trace points for measuring cluster switch latencies. Bug 958262 Change-Id: Ia1e5e13131d5e55aaa0a44e9e8b5196539df54e7 Signed-off-by: Antti P Miettinen <amiettinen@nvidia.com> Reviewed-on: http://git-master/r/93841 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
2012-04-05ARM: tegra: rethink the cpu suspend-resume code pathVarun Wadekar
The current kernel methodology expects that tegra_cpu_suspend is actually the last function in the entire suspend sequence. In order to achieve this, the code needs to be remodelled a bit so that we actually execute native cpu_suspend at the end of the suspend sequence. This allows us to leverage all the cpu_suspend code developed by ARM in the upstream kernels. Bug 934368 Change-Id: I94172d7adaa54c10043c479a57b270925d85a16b Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/84481 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-04-05ARM: tegra: remove usage of USE_TEGRA_CPU_SUSPENDVarun Wadekar
Bug 934368 Change-Id: Ic9d75cbb0c324b1858b2e476e33dd4f96349bce3 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/86351 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-04-05arm: tegra: turn off pll-a/p in LP1Mayuresh Kulkarni
- current code does not turn off pll-a/p in LP1 irrespective of voice call status - add a new flag to indicate voice call on-going - use PMC_SCRATCH37 to hold this flag - if it is set, do not turn-off pll-a/p during LP1 - save-restore PMC_SCRATCH37 if it was used to hold the voice call on-going flag - fix few misc formatting issues in tegra3_cpu_clk32k Bug 924817 Signed-off-by: Mayuresh Kulkarni <mkulkarni@nvidia.com> Reviewed-on: http://git-master/r/85768 (cherry picked from commit 7853981c987ae329620bb54d869016cb74a6c054) Change-Id: Id5348d2eb44a4bacaf00f6d17edceedaef819e29 Reviewed-on: http://git-master/r/94395 Tested-by: Mayuresh Kulkarni <mkulkarni@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-04-03arm: tegra3: change min_rate for sclkAmit Kamath
Change the minimal rate of sclk to 12 MHz and set the lowest frequency of sbus to be 40 MHz when display is on. bug 939415 Original change http://git-master/r/#change,76959 Change-Id: I81cda6a95494764721c1be5b4001c476f3aed6ab Signed-off-by: Amit Kamath <akamath@nvidia.com> Reviewed-on: http://git-master/r/93850 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-04-03arm: tegra: pm: Update CPU complex resumePrashant Gaikwad
Completely removed PLLP restoration from CPU complex resume on Tegra2 platforms (too late: PLLP is restored from AVP warm boot code) Bug 952200 Bug 931285 Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-on: http://git-master/r/92523 (cherry picked from commit 066dc172010f1a5ea5a375e1cbdcf162ab206d63) Change-Id: I1a31793db8ee1fda5a947d69890e3118f0d3cdab Reviewed-on: http://git-master/r/93562 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-03-15ARM: tegra: power: Set awake system CPU rate floorWen Yi
Set CPU rate floor to 100MHz when the system is awake (after boot, or on late resume). Remove the floor when the system enters early suspend. Bug 922351 Change-Id: Ibaca50791a5b04b4b4165ceac5018d4cfd7c1bcf Signed-off-by: Alex Frid <afrid@nvidia.com> Reviewed-on: http://git-master/r/89587 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-03-14ARM: tegra: power: Boost CPU rate before device resumeAlex Frid
Boost CPU frequency in tegra platform resume finish phase, just before driver resume. Boost level is specified by platform suspend data (ignored if 0). Bug 946301 Signed-off-by: Alex Frid <afrid@nvidia.com> (cherry picked from commit eaedf228861e4456454ca13f0958ed97e799fc59) Change-Id: Ica0cff28f9651e38787ec98f54563d95d876d79e Reviewed-on: http://git-master/r/89353 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2012-03-13ARM: tegra: pm: only identity map lowmem areaRay Poudrier
Bug 941380 Signed-off-by: Ray Poudrier <rapoudrier@nvidia.com> Reviewed-on: http://git-master/r/87095 (cherry picked from commit 72b72afb18f852ee0b352b0644bf30b4afeaa055) Change-Id: I7e10b6180044a6fb58b2fee835991812c193d9b1 Reviewed-on: http://git-master/r/89564 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Raymond Poudrier <rapoudrier@nvidia.com> Tested-by: Raymond Poudrier <rapoudrier@nvidia.com> Reviewed-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com>
2012-03-07ARM: tegra: Clean kernel and I/O mappings upon LP2Antti P Miettinen
There is no need to flush the complete L2 upon LP2 entry but it is necessary to clean the page table entries needed by LP2 code sequence that has L2 off and MMU on. Bug 931316 Change-Id: Ice353f16d35ee24d4387e7b9b135f205c4d0ba32 Signed-off-by: Antti P Miettinen <amiettinen@nvidia.com> Reviewed-on: http://git-master/r/86293 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-03-02arm: tegra: power: disable SUSPEND_LP2 mode selectionAshwini Ghuge
Disable selection of LP2 suspend mode from sysfs and if LP2 mode set from board file change mode to LP0 Bug 928456 Change-Id: I1603153e23688ff1048289c4e04f7c7337f480af Reviewed-on: http://git-master/r/86580 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-03-01ARM: tegra: Add support for passing arguments to bootloader.Gaurav Sarode
PMC SCRATCH register 0 holds value across warmboot. Storing values in bit31:30 for recovery and fastboot. This requires change in bootloader as well to parse these arguments. Bug 863014 Change-Id: I1d4b752dbc6dd7b065e9d0cc87df189e7caeb201 Signed-off-by: Gaurav Sarode <gsarode@nvidia.com> Reviewed-on: http://git-master/r/86140 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-03-01ARM: tegra: power: Fix Tegra2 power timer rateAlex Frid
Commit cb0428145196ed7a75861c78d28f46b6bc8d2320 implemented LP0 state entry with fast CPU and system bus clocks only for Tegra3, but changed power timers rate calculation in the common Tegra2 and Tegra3 path. Fixing it now. Signed-off-by: Alex Frid <afrid@nvidia.com> (cherry picked from commit 9e66d6adf6ab1fe06eee63baf0f1f684715d1ae2) Change-Id: Iac276f048fed4edbee318cadddb862e45ba851c6 Reviewed-on: http://git-master/r/86550 Tested-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
2012-02-23ARM: tegra: power: Don't lower clocks on LP0 entryAlex Frid
Do not change (lower) CPU and system clocks, and do not disable PLLs on entry to LP0, since all clocks and PLLs are stopped in h/w, anyway. Signed-off-by: Alex Frid <afrid@nvidia.com> (cherry picked from commit 0142197cf7b1828fa7935c9d8715f37313864db1) Change-Id: I2f175882d4d3dcfe5aee9c460f873a5e907e4ece Reviewed-on: http://git-master/r/84714 Reviewed-by: Lokesh Pathak <lpathak@nvidia.com> Tested-by: Lokesh Pathak <lpathak@nvidia.com>
2012-02-23ARM: tegra: clock: Update secondary pll dividers resumeAlex Frid
During resume from LP0 on Tegra3 always enable pll secondary dividers before clocks restoration (to make sure clock sources are enabled). Restore actual secondary dividers settings after clocks are restored. Remove pllp secondary dividers restoration from cpu complex restore, and add them to common clock restoration procedure. These dividers are not affected by CPU complex suspend, only by LP0 core suspend. Signed-off-by: Alex Frid <afrid@nvidia.com> (cherry picked from commit 1f631436717c0602ef30770f7976615150114afe) Change-Id: I45777ca0535f51a39c35e9d360ac6e97a13ea92c Reviewed-on: http://git-master/r/84712 Reviewed-by: Lokesh Pathak <lpathak@nvidia.com> Tested-by: Lokesh Pathak <lpathak@nvidia.com>
2012-02-17Revert "arm: tegra3: change min_rate for sclk"Chandrakanth Gorantla
This reverts commit a61ef84d7746134aae316fa76867d69fc0753880. Bug 939415 Change-Id: I7d7c2a69ac7261a221cf69b8f8981d42f575f789 Signed-off-by: Chandrakanth Gorantla <cgorantla@nvidia.com> Reviewed-on: http://git-master/r/84025 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-02-13ARM: tegra: Clean up CACHE_L2X0 conditionals and includesScott Williams
Change-Id: I9862e73f264c757f97aaad03f3373fb1d3e95462 Signed-off-by: Scott Williams <scwilliams@nvidia.com> Reviewed-on: http://git-master/r/79138 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-02-03ARM: tegra: power: Update CPU complex resumeAlex Frid
- Completely removed PLLP restoration from CPU complex resume on Tegra3 platforms (too late: if necessary PLLP is restored by LPx exit code on Tegra3, and attempt to restore it again does not do any good). - Restored PLLX only if it is not already used as CPU source (it is dangerous to restore PLL in use). - Restore burst policy on exit from LPx states, but preserve it after cluster switch, as it maybe different for LP and G clusters. Reviewed-on: http://git-master/r/72535 Change-Id: Ia5ff24d22a2135494bc3442f92bebcc1953c7f08 Signed-off-by: Alex Frid <afrid@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/78702 Reviewed-by: Automatic_Commit_Validation_User
2012-01-31ARM: tegra: power: Set awake system CPU rate floorAlex Frid
Set CPU rate floor to 100MHz when the system is awake (after boot, or on late resume). Remove the floor when the system enters early suspend. Bug 922351 Reviewed-on: http://git-master/r/77444 Change-Id: I68f54a3d981c1cbeac16d58d3beb6e3aa6bf190c Signed-off-by: Alex Frid <afrid@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/78031 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-01-31arm: tegra3: change min_rate for sclkWen Yi
Change the minimal rate of sclk to 12 MHz and set the lowest frequency of sbus to be 40 MHz when display is on. BUG 922351 Reviewed-on: http://git-master/r/76959 Change-Id: I6a2871d1cc02a19829cf397e9583122e02255f81 Signed-off-by: Wen Yi <wyi@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/78010 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-01-30arm: tegra: power: disable SUSPEND_NONE mode selectionBitan Biswas
sysfs interface to select suspend mode as TEGRA_SUSPEND_NONE is disabled. Additionally, if tegra_suspend_dram is called with suspend mode as TEGRA_SUSPEND_NONE we return error bug 927937 Reviewed-on: http://git-master/r/77268 Change-Id: Ifdd57cdf27e739a9c093cad4eddefb73a6a2355d Signed-off-by: Bitan Biswas <bbiswas@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/77757 Reviewed-by: Automatic_Commit_Validation_User
2012-01-30arm: tegra: Fix setting CPU_RESETTABLE_SOON flagJoshua Cha
tegra2_cpu_set_resettable_soon() should be called in CPU1 only. Reviewed-on: http://git-master/r/75517 Change-Id: I0825a2d2ed2935d2b1dac1ff7d134e1f4f37f552 Signed-off-by: Joshua Cha <joshuac@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/77751 Reviewed-by: Automatic_Commit_Validation_User
2012-01-30ARM: tegra: power: Fix warnings when PM_SLEEP is not selectedScott Williams
Reviewed-on: http://git-master/r/76686 Change-Id: I88939c92aa1c28f5177010ba2afd524c3a4b713d Signed-off-by: Scott Williams <scwilliams@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/77738 Reviewed-by: Automatic_Commit_Validation_User
2012-01-04arm: tegra: delete the debugfs sys entry for suspendVandana Salve
Deleted the tegra debugfs /sys entry. Instead have a unified /sys/power/suspend/mode sysfs entry to set the suspend state. Bug 911096 Change-Id: I280eb0ed0f5c8b46c2147d84c27b1cf728078709 Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/72419 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Mayuresh Kulkarni <mkulkarni@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2011-12-15ARM: tegra: dvfs: Add DVFS rails statisticAlex Frid
On Tegra3: complete account of in- and out-of-bound rails control. On Tegra2: out-of-bound vdd_cpu control in LP2 state is not accounted. Change-Id: Ib68cbbfe3e4f965e758aca17a0ba30277d530347 Signed-off-by: Alex Frid <afrid@nvidia.com> Reviewed-on: http://git-master/r/67340 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
2011-12-08arm: tegra: add Trusted Foundations hooks and driverChris Johnson
Add CONFIG_TRUSTED_FOUNDATIONS build option and calls to issue SMCs to the TL secure monitor (used when needing to update state not writable by non-secure code). Make security/tf_driver an optional part of the build, which is part of the TL framework to interact with secure services. Bug 883391 Change-Id: I9c6c14ff457fb3a0c612d558fe731a17c2480750 Signed-off-by: Chris Johnson <cwj@nvidia.com> Reviewed-on: http://git-master/r/65616 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-12-08arm: tegra: Set G-CPU L2 cache latency to 0x442/552.Krishna Reddy
also restore the L2 cache latency values after exit from LP2. Bug 909628 Change-Id: Ia113d3511255f77ba5f5bfbfafebe43ba247818f Signed-off-by: Krishna Reddy <vdumpa@nvidia.com> Reviewed-on: http://git-master/r/67767 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
2011-11-30ARM: tegra: power: omit L2 flush for LP2Antti P Miettinen
The L2 cache RAM is preserved over LP2 so omit the L2 cache flush in tegra_idle_lp2_last(). Bug 880338 Change-Id: I6aa30c712b6e467bd48e9c1959da2a69453a8f43 Signed-off-by: Antti P Miettinen <amiettinen@nvidia.com> Reviewed-on: http://git-master/r/59892 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R6eee47d009d45d0e20254a97df919bf2fc34e6cd
2011-11-30ARM: tegra: power: add combined power req processingJoshua Cha
For platforms where the core & CPU power requests are combined as a single request to the PMU, we need separate processing to enable its suspend/resume operation. Bug 862504 Change-Id: If66282a7b069d35568147e2d64f14371e1692bfd Reviewed-on: http://git-master/r/64011 Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Rebase-Id: R21b966a438be03b11b80ce7deb70e3036b80dab2
2011-11-30ARM: tegra: uart: Restore FCR in uart resumePradeep Goudagunta
Restore FCR while resuming debug uart, to enable RX and TX FIFOs with trigger levels configured during initialisation of debug uart port. Bug 867063 Change-Id: I9665ff29a53c3e2e6c78a3037e20e7362a642f77 Reviewed-on: http://git-master/r/62411 Tested-by: Pradeep Goudagunta <pgoudagunta@nvidia.com> Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Rebase-Id: Ra3b9858456b952ab539a36019a55863077094054
2011-11-30ARM: tegra: timer: Update twd suspend/resumeAlex Frid
- Preserve twd periodic load register across suspend and LP2 on main CPU. Keep timer disabled on resume, since it will be re-configured later when timekeeping switches from global system timer. - Generate "load equal zero" warning in twd suspend/resume code only when timer is in periodic mode. Change-Id: If7df8be08c0ef4e355f315e3f0b7e3cf1b358f0f Reviewed-on: http://git-master/r/55068 Tested-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com> Rebase-Id: R75f3950a915e0953a098620dea9ea32a7d5e9482
2011-11-30ARM: tegra: power: fix build error on tegra_pm_enter routinesJin Qian
Change-Id: I2f22bf2b416eb7617c2d845b6f7a9f293eb32c1c Reviewed-on: http://git-master/r/51852 Tested-by: Jin Qian <jqian@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com> Rebase-Id: R986d6156129b2d62176e68aa01ae3c11e4ef6861
2011-11-30ARM: tegra: power: save cluster switch status before entering LP0Jin Qian
warm boot reads SCRATCH4 to choose wake-up from LP or G Bug 862504 Change-Id: I5ee4697c6268d379a6708e6a87e3f7df12f2994a Reviewed-on: http://git-master/r/50610 Reviewed-by: Jin Qian <jqian@nvidia.com> Tested-by: Jin Qian <jqian@nvidia.com> Reviewed-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Rebase-Id: R7e61acb99f023449c2416054c44b75837c3aff94
2011-11-30ARM: tegra: power: move cluster switch to syscore for LP0Jin Qian
move printk as well since they rely on uart resume in syscore Bug 862504 Change-Id: Iad62c87dbb01d07bf731babb62cb480d62b9402e Reviewed-on: http://git-master/r/50240 Reviewed-by: Jin Qian <jqian@nvidia.com> Tested-by: Jin Qian <jqian@nvidia.com> Reviewed-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Rebase-Id: R8c5b23f5045260160a4906da425cc297fae5b59b
2011-11-30ARM: tegra: power: move cluster switch prolog/epilog from suspendJin Qian
They're called only when doing cluster switch so move them to cluster control function. Change-Id: Ic258dd06ab454aa5eb96673665607b373284a43c Reviewed-on: http://git-master/r/49952 Reviewed-by: Jin Qian <jqian@nvidia.com> Tested-by: Jin Qian <jqian@nvidia.com> Reviewed-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Rebase-Id: R1b68449702767a8555fff82b5fb8c88e1acbe363
2011-11-30ARM: tegra: power: restore reset handler after lp0Jin Qian
Bug 862504 Change-Id: I910f4f229a2040d13d79e2a4f64fd2558509d9e7 Reviewed-on: http://git-master/r/50241 Reviewed-by: Jin Qian <jqian@nvidia.com> Tested-by: Jin Qian <jqian@nvidia.com> Reviewed-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Rebase-Id: R3c4d055f1c2ebad76ad2a9305d5e02f5a4411400
2011-11-30ARM: tegra: power: Call cluster_switch_prolog/epilog for LP1Yudong Tan
cluster_switch_prolog is needed to set up car/flow controller registers for LP1 entry. epilog is needed to clean up some flags in flow controller after LP1 exit. Bug 862502 Change-Id: Ib9eeac6fc541cfa644d782071dbd4187255404d8 Reviewed-on: http://git-master/r/47585 Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com> Tested-by: Daniel Willemsen <dwillemsen@nvidia.com> Rebase-Id: R2c72673ba1b7f04ffa1b760ff54aaf73cf23f09e
2011-11-30ARM: tegra: power: implement LP1 suspend/resume for Tegra3Yudong Tan
Bug 862502 Change-Id: If70e54fb32ce14d5f13dde1d7fb4c1f1499a6722 Reviewed-on: http://git-master/r/47398 Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com> Tested-by: Daniel Willemsen <dwillemsen@nvidia.com> Rebase-Id: Ra77a54e6930692bca628a97bf1de10a30408cdef
2011-11-30ARM: tegra: power: fix cpu context save page mappingJin Qian
Change-Id: Ie2bcc74d4a4fb76ee29c4a01e5dae72261da4885 Reviewed-on: http://git-master/r/48623 Reviewed-by: Jin Qian <jqian@nvidia.com> Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com> Tested-by: Daniel Willemsen <dwillemsen@nvidia.com> Rebase-Id: R5ee134042966de7a620f60095169e3aba823cd82
2011-11-30ARM: tegra: Use CONFIG_TERGA_CLUSTER_CONTROL for cluster controlScott Williams
Change-Id: I07c389092132e52e2bdd3deab22c10f8e1e6035c Signed-off-by: Scott Williams <scwilliams@nvidia.com> Reviewed-on: http://git-master/r/48798 Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com> Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com> Rebase-Id: R1e0c9acc87c81f9d0dc394c09d6a7b8b94c48d3f
2011-11-30ARM: tegra: Avoid timer calibration on slave cpu's.Krishna Reddy
Use the value calibrated by master cpu. Bug 843553 Original-Change-Id: I88939f37050873e0633782f6a927ffaf9b8d776d Reviewed-on: http://git-master/r/47988 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R6520764a88346d5ab4a180810636b04ce474f4d7
2011-11-30ARM: tegra: pm: Do not use ioremap for sys memPrashant Gaikwad
ARMv6+ architecture does not allow ioremap on system memory. lp0 is relocated using ioremap on DRAM. If lp0 vector start address is in system memory then use memblock_reserve and do not relocate. Else if it is overlapping with carveout/fb then first remove the carveout/fb using memblock_remove and then use ioremap. Bug 827199 Reviewed-on: http://git-master/r/43685 (cherry picked from commit 1753408edc65ebfc0d4d203f2be960d49ca747a8) Original-Change-Id: Ic4abfbc98b43aafb2756cb3e69d0ee178204ec7d Reviewed-on: http://git-master/r/44717 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: Re90d5554c301471fd177632887741109318c2c97
2011-11-30arm: tegra: pm: Relocate lp0 vectorPrashant Gaikwad
LP0 vector is allocated by BL and address is shared to kernel. For platform with memory less than 1GB it was allocated in the overlapping region of carveout memory. Because of it during AVP operation it gets corrupted, which prevents resume. Relocate AVP vector to some other location where overlapping will not occur. Bug 827199 Reviewed-on: http://git-master/r/42113 (cherry picked from commit 9a3993d39599d1637d7c04218e6a634f914e9f91) Original-Change-Id: If862f6ff61a316c478806b7dc3deff70a2861410 Reviewed-on: http://git-master/r/44716 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R085bc615567c70b7ff3b0ba1aee375fb29a72bfd
2011-11-30ARM: tegra: Fix warnings when CONFIG_PM_SLEEP is not selectedScott Williams
Change-Id: If06bd6a9030c8b1502c96459eb6657a6bff4b0fa Signed-off-by: Scott Williams <scwilliams@nvidia.com> Reviewed-on: http://git-master/r/47634 Rebase-Id: R2982ec1b130417178376a06bb37f24aaf65ec19f
2011-11-30arm: tegra: Console suspend for all boardsLaxman Dewangan
Added the board level suspend/resume and call the console suspend from board level suspend/resume. bug 820536 Original-Change-Id: I246265241246dc0682870571c927bd23023e5aca Reviewed-on: http://git-master/r/41448 Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Tested-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by: Bitan Biswas <bbiswas@nvidia.com> Reviewed-by: Narendra Damahe <ndamahe@nvidia.com> Rebase-Id: Re1f3dd4f75ee05456899d9a67f74ae84f9572654
2011-11-30arm: tegra: suspend: Add board specific suspend/resume callsLaxman Dewangan
Adding board specific suspend and resume call apis through platform data. Added call of these function at appropriate stage of suspend/resume. Added mechanism to select the uart debug channel base address through variable so that board file can directly change this. bug 820536 bug 832273 Original-Change-Id: Ia9ff3b8a8d2faa1071a8ff634960e6a6c8a43d40 Reviewed-on: http://git-master/r/34494 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R6d7bfb3f8f9152779f5138cbcd1b7a9e9a9545df
2011-11-30tegra: power: correct LP0 sequenceJay Cheng
Change-Id: I5f548f11059039cbd830be483ecfa0c6671002e7 Reviewed-on: http://git-master/r/47365 Tested-by: Cho-Che Cheng <jacheng@nvidia.com> Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com> Rebase-Id: Rd7ef967c8b40295a04a0447eb8bbc8e2d577a48e