Age | Commit message (Collapse) | Author |
|
Implement Tegra WDT FIQ debug function.
Default is disabled.
Bug 1581432
Change-Id: Ic81ab4cd3285080016b37191e6e0fab18e330a30
Signed-off-by: Renn Wu <rewu@nvidia.com>
Reviewed-on: http://git-master/r/#/c/271988
Reviewed-on: http://git-master/r/662550
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
|
|
To assure post of the previous writes through Tegra interconnect
added read fences in the following power gating code paths:
- Seconadry CPU boot ungating (path taken on Tegra11, Tegra14, Tegra12)
- GPU rail clamps gating/ungating (path taken on Tegra12, Tegra13)
- MC client ungating flush done (path taken on all platforms)
Bug 1484343
Change-Id: Ie09ef37135beae0ed0beb1cd4d7e96187ba9be26
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/385403
Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
|
|
tegra_cpu_reset_handler_init() was called during SMP prepare
explicitly. In order to use PSCI calls during cpu reset handler
init, it needs to be initialized using early_initcall(). The ARM
init code makes sure that all early_initcalls are invoked before
SMP is enabled. Cleanup the ARM64 version as well.
Bug 1475528
Change-Id: I24d424b1c2ade4d5737764d6c5378b57ed3f8c7b
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/378351
Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com>
|
|
Port the inline assemblies w.r.t ARMv8 ISA and #ifdef
the code with CONFIG_ARM64.
Change-Id: I430b441cc23c88ef947ddb7c5aa1836d06dbabf9
Signed-off-by: Peng Du <pdu@nvidia.com>
Reviewed-on: http://git-master/r/196609
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alexander Van Brunt <avanbrunt@nvidia.com>
|
|
This allows us to get the callstack from the FIQ debugger, in
case any secondary CPUs hangs.
Bug 1326082
Change-Id: I7bbaf7226766764b88496a0a46d40b15fbc710a7
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/338252
|
|
cleanup of unwanted fuse related data as
a part of migration of fuse driver
Bug 1380004
Change-Id: I78ff9f6b1d3a27ae0ba0369ad9692c40e9e24bfd
Signed-off-by: Shardar Shariff Md <smohammed@nvidia.com>
Reviewed-on: http://git-master/r/310037
Reviewed-by: Venu Byravarasu <vbyravarasu@nvidia.com>
|
|
Replace globals tegra_sku_id, tegra_chip_id &
tegra_bct_strapping with below functions
u32 tegra_get_sku_id(void);
u32 tegra_get_chip_id(void);
u32 tegra_get_bct_strapping(void);
Bug 1380004
Change-Id: I43eb2523e4af5d06bc1aa1f03c02c5168577878c
Signed-off-by: Shardar Shariff Md <smohammed@nvidia.com>
Reviewed-on: http://git-master/r/300401
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Venu Byravarasu <vbyravarasu@nvidia.com>
|
|
Moving mach-tegra/clock.h and mach-tegra/timer.h to
include/linux/tegra-cpuidle.h and include/linux/tegra-timer.h so that
it helps faclitate the movement of drivers from mach-tegra/ to
drivers/.
Bug 1379817
Change-Id: Ia0a33c3f726d2f672409c270ac8ca1629f05eff8
Signed-off-by: Ajay Nandakumar <anandakumarm@nvidia.com>
Reviewed-on: http://git-master/r/299019
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
|
|
This moved upstream, do the equivalent change here.
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Change-Id: I2de76e5c6487ed4513b6d070e0c515a27a881fff
|
|
So that the upstream common clk infrastructure can live side by side.
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Change-Id: I0fe0ef8cd207d27b707821eed838c75b8ec04025
|
|
(Original patch written by Paul Walmsley <pwalmsley@nvidia.com>)
Switch the CPU affinity of the Tegra cputimer IRQ to CPU0 much later
in the hot-unplug process - after sched_cpu_inactive() runs.
The code originally added by commit
6012d7167f715f91a43f0bf826aae00de0e5f860 ("ARM: tegra: fix warning
related to soc timer irq affinity") switched the CPU affinity of the Tegra
cputimer IRQ during the CPU_DOWN_DISABLE phase of the cpu_notifier.
This is the same phase used by sched_cpu_inactive() to mark the CPU as
unavailable to the scheduler, as well as by cpufreq_cpu_callback().
The call to sched_cpu_inactive() must take place before the CPU
affinity of the cputimer IRQ is reset. Unfortunately there's no easy
and clean way to enforce ordering inside this notifier chain.
This could result in the following attempted notifier callback sequence:
1. Tegra cputimer hotplug_notify()
-> CPU1 no longer receives scheduler ticks from its local timer
2. cpufreq_cpu_callback()
-> eventually winds up in schedule() - but cannot make progress because
the scheduler tick is never received
-> HANG
3. sched_cpu_inactive()
To work correctly, the CPU affinity of the Tegra cputimer IRQ must
only be switched after sched_cpu_inactive() runs.
The initial approach attempted was to move the affinity switch to the
CPU_DYING cpu_notifier event. This causes warnings to be logged to
the kernel console by the ARM migrate_irqs() code, which does not
expect an IRQ to have an affinity to a downed CPU. So instead, we
move the affinity switch to the Tegra-specific callback for the
cpu_disable() smp_ops function pointer. This is called between the
CPU_DOWN and CPU_DYING cpu_notifier events.
Bug 1309706
Bug 1317133
Change-Id: I2756843917c77ac1405c35bd726a7294f947e406
[sgadagottu@nvidia.com: removed EXPERIMENTAL notations; removed
Cc: lines; wrapped references to tegra_cputimer_reset_irq_affinity()
in #ifdefs; updated copyrights]
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: http://git-master/r/243683
(cherry picked from commit dbd37f36c6793377e59a9d69a12542fd32ca224f)
Reviewed-on: http://git-master/r/247335
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
|
|
Change-Id: Ia622e439d385ad2affb0958f9c86fccd3eef71a6
Signed-off-by: Graziano Misuraca <gmisuraca@nvidia.com>
Reviewed-on: http://git-master/r/249910
(cherry picked from commit 00da56084285e681be834b08f3c6f0921a31612f)
Reviewed-on: http://git-master/r/250819
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
|
|
T40DC (dual core) SKU will not have
FUSE_SKU_DIRECT_CONFIG_0 set so we need to check
the SKU explicitly and set the number of cores to
two in that case.
Bug 1262581
Change-Id: I341a606698a5bd72374adaecdcbaf3ef62e351d3
Signed-off-by: Graziano Misuraca <gmisuraca@nvidia.com>
Reviewed-on: http://git-master/r/234210
(cherry picked from commit 4402ec2394f686e90453b881eaa162db95b303bc)
Reviewed-on: http://git-master/r/240684
(cherry picked from commit e06aea34a825185de5ee479009da2c970f1133c1)
Reviewed-on: http://git-master/r/249748
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
|
|
Adding basic board file for ardbeg.
Bug 1257423
Change-Id: I6c8c666da189e6b0ea39024218937ded2f8fe148
Signed-off-by: Mitch Luban <mluban@nvidia.com>
Reviewed-on: http://git-master/r/216248
Reviewed-by: Chao Xu <cxu@nvidia.com>
|
|
- the chip id have been defined in 2 places: fuse.h as
TEGRAXX & mach/hardware.h as TEGRA_CHIPID_TEGRAXX
- some part of code used defines from fuse.h while others
used mach/hardware.h
- this commit removes the defines in fuse.h and converts
all the code to use the defines from mach/hardware.h
- kernel in dev-chips is also using defines from
mach/hardware.h
Change-Id: Ia65f8ead3f8eccdd6cba4a159c3d0e16a2566e41
Signed-off-by: Mayuresh Kulkarni <mkulkarni@nvidia.com>
Reviewed-on: http://git-master/r/208375
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
|
|
The decision to enter LP1BB might occur well into
iRAM code. These functions will help to save
and restore cpu_power_mask in case we decide to
enter LP1BB in iRAM.
Bug 1236920
Change-Id: Ic1e38281bdc508014d4edb3e9645c7ba89a2b4c1
Signed-off-by: Prashant Malani <pmalani@nvidia.com>
Reviewed-on: http://git-master/r/203166
(cherry picked from commit 8fc48afefb64fecb99db1d2cab1ac57d0af19bb2)
Reviewed-on: http://git-master/r/204858
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
GVS: Gerrit_Virtual_Submit
|
|
Secondary cpu boot sequence corrected for first time
booting and hot-plug booting. For first time booting
partition power un-gating needs to be done. For hot-plug
booting flow controller needs to be programmed for
SCLK event trigger.
Also fixed the merge issue in tegar11 code, so that
tegra11 hotplug code can be re-used.
Change-Id: I65673fb221b47eb24169d8c8cd7a8ebb1db5dd15
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: http://git-master/r/174363
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
|
|
The first time when a CPU powers up in kernel, it has to be
done by directly toggling PMC register.
Remove the flowctrl_write_cpu_halt() call.
Bug 1191165
Change-Id: I22cabf0a10ae24af568ac317b241cefb8ba59fae
Signed-off-by: Chandler Zhang <chazhang@nvidia.com>
Reviewed-on: http://git-master/r/170970
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
|
|
T14x flow controller logic is same as T11x, but
PMC_CLAMPING logic is same as T30. To take care
of these conditions separate sequence for booting
of secondary cpu's for T14x is added.
Change-Id: I7a6776b48ae7c79574ae81c09aafc4961c86fbfd
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: http://git-master/r/163131
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
|
|
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
|
|
Change-Id: I8af4f7869054b4a835ef5c7ee14d5fbcef89f0b6
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: http://git-master/r/118440
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Hoang Pham <hopham@nvidia.com>
Reviewed-by: Bo Yan <byan@nvidia.com>
|
|
Update core EDP limits when CPU cluster is switched between fast
(G-mode) CPU, and slow (LP-mode) CPU.
Bug 1165638
Change-Id: I956eb5ab2d8fbe873f998cca1e22984413cf5743
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/165617
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
|
|
There is no need to clear CPU CSR register. The "ENABLE" bit (bit 0)
is set by software, but cleared by hardware once the sequence is
completed. In case of failure, it's desirable not to change it for
debug purpose.
After CPU_CSR clear is removed, the power mask is set by the CPU
that's booting up.
Change-Id: I4879c64ec5858ed85008fbeeedb8232e35643a8c
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/164891
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
|
|
The secondary CPU power up can happen so fast that it enters power
gating even before the CPU that's trying to bring it up gets a
chance to check status in PMC register. This can happen because
interrupt and preemption are not disabled, so the primary CPU can
switch to do something else, when it comes back to check PMC status,
it's already too late. When this happens, it will simply declare a
timeout failure, though the secondary power up is actually successful.
The fix is to check online status as well, because the CPU that's
coming up will set online flag before entering idle loop.
Another enhancement is to skip the status check altogether if this
is not the first boot up after cold boot or warm boot. The
synchronisation done in __cpu_up is more adequate.
For the first boot after cold boot or warm boot, set the timeout
back to 100ms.
Bug 1169512
Change-Id: Ie4b873d853c40207c7b1bc1acf0982a7bf0ecd9f
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/164065
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Tested-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Tested-by: Sang-Hun Lee <sanlee@nvidia.com>
|
|
tegra11x is taking 2 seconds for core power up currently
Increase the wait time to avoid a failure
Bug 1169512
Change-Id: Ie5b2c35bc846ece47920f99be3b369b9ede73e0f
Signed-off-by: Sang-Hun Lee <sanlee@nvidia.com>
Reviewed-on: http://git-master/r/162527
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Bo Yan <byan@nvidia.com>
Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
|
|
The current implementation waits a constant number of jiffies,
which would give the system less time for a core boot up if we
increase HZ
Bug 1169512
Change-Id: I789feaa7c3d528b99d2d1b9163bd5394957c626e
Signed-off-by: Sang-Hun Lee <sanlee@nvidia.com>
Reviewed-on: http://git-master/r/162480
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Matthew Longnecker <mlongnecker@nvidia.com>
Reviewed-by: Bo Yan <byan@nvidia.com>
Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
|
|
This is the first patch to support CPUID virtualization. The goal is
to treat all CPUs as equal in software. In current implementation,
CPU0 is the anchor CPU, which must be the first one brought up, and
the last one taken down. This patch removes that restriction.
the cluster switch still has to start from CPU0 with this patch.
This can not coexist with secure OS
Reviewed-on: http://git-master/r/144610
(cherry picked from commit d32fba4be39e3f9a95ef5ab44d0c64dc6d2808a3)
Change-Id: Ib7fcaae751d17fee839a4f228f5ef5c3ee2390c2
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/159486
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
Rebase-Id: R09e29d45acf92b3ad2d909d5438c3375aa85e7dd
|
|
The first time when a CPU powers up in kernel, it has to be
done by directly toggling PMC register.
Subsequent CPU power up sequence is controlled by flow controller.
This is done after LP0 exit as well.
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/143296
Change-Id: If32712706d827e4d0337d75163449cfa0a3a50f8
Signed-off-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-on: http://git-master/r/146484
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
Tested-by: Bo Yan <byan@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
GVS: Gerrit_Virtual_Submit
Rebase-Id: R8909dae486432fd628e8d89735634eee26063f4e
|
|
The secondary CPU startup sequence of t11x is different because
flow controller behavior has changed, so fix it accordingly
Change-Id: I26aa26593943fde0cf7b599b4fca04644715ca4a
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/138705
(cherry picked from commit 79ecf6b4ba3902b1b5bd79d8d4942884a8dc78eb)
Reviewed-on: http://git-master/r/143973
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Rebase-Id: R1fbf3fe1f0c175f930ed452cdf2d3758eaa392c2
|
|
This reverts commit 06c880a6086183173c361b4a9d4f8047c6a39769.
This CL is reverted as it causes write perf regression with lmbench(bw_mem)
benchmark.
Bug 1026077
Change-Id: I7ff9ffbfe74e2083aa43cab75b694b1c61987bc3
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/125097
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Rebase-Id: Rc0198bdf02ba5b692efd503e0bd25fc52e6bd2b3
|
|
This reverts commit b25193d5c3e2c59169c127d23b59123136cfefa7.
This CL is reverted as it causes write perf regression with lmbench(bw_mem)
benchmark.
Bug 1026077
Change-Id: I9858c88a6e846d2c3629f14c7cc62a7feb4f4528
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/125096
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Rebase-Id: R28f527b5db038bb6d79b60717be50af6f0ca2dac
|
|
get_core_count calls scu_get_core_count which is part of the __init section.
Hence we can only call this from another function inside this section.
Refactor the code to initialize number_of_cores at boottime in an __init
function.
Change-Id: I200a6ea297a8abe1a3b3fbdd050de5917875d7bc
Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Reviewed-on: http://git-master/r/117053
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
Rebase-Id: Ra89316289b1c471916dcbc9e3b260894b2f34265
|
|
On Tegra3 make sure cpu rate is within G-mode range before LP to G
mode switch triggered by secondary cpu boot directly from LP mode.
Bug 988544
Change-Id: I0d86fbf0727a6bbf6069159e7c532947a9d0af73
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/115930
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Greg Lo <glo@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Rebase-Id: R2058bc1820b2d27c927de4b2d5b2bc03746fd668
|
|
Change-Id: I30e115061c24f1a8f3f11cab0f21678d3cf096f1
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/113766
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Varun Wadekar <vwadekar@nvidia.com>
Rebase-Id: Rbdcccb2d66aac3e30cc452766d287fc562bfd89f
|
|
bug 949932
get_core_count function was optimized for only case of T20. Since the
available_cpus function has got conditional compilation. This resulted
in execution of mrc instruction to cop which is meant for A15 arm core.
Change-Id: Ia9c0f284362adaf61fa18fe05370954666a283bc
Signed-off-by: Amit Kamath <akamath@nvidia.com>
Reviewed-on: http://git-master/r/95569
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
Tested-by: Bo Yan <byan@nvidia.com>
Rebase-Id: R212658bcf5a45e44ffec2a182ab9074a01d0af74
|
|
The detection of the number of CPU cores when no SCU is present
was incorrect and would result in a kernel panic. Correctly
determine the CPU type first and then use the proper method for
obtaining the CPU count.
Change-Id: I9570e2f0b7443576a754dfd49d6fb46236c9cf47
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-on: http://git-master/r/92930
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Rebase-Id: Ra691be09f25cf2eaa65b9f2878e974bed087478f
|
|
Bug 941810
Change-Id: I0ed732a35dff4884c74ee3c0bf38fb3c3e5c9efc
Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Reviewed-on: http://git-master/r/87181
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Tested-by: Scott Williams <scwilliams@nvidia.com>
Rebase-Id: Rc1acb149dbc53402f300fd9867dc283081e089f4
|
|
Cortex-A15 does not have a memory-mapped SCU in the PERIPHBASE
aperture. Instead, the number of CPUs present is obtained from
the architectural L2 Cache Control (L2CTLR) register.
Enable HAVE_ARM_SCU only on platforms that have a memory-mapped
SCU and add the necessary conditionals to prevent access to the
memory-mapped SCU address range on platforms that don't.
Change-Id: I4027d034fe79339fab0030a44780240785206cba
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-on: http://git-master/r/79341
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Mark Stadler <mastadler@nvidia.com>
Reviewed-by: Jeff Smith <jsmith@nvidia.com>
Reviewed-by: Bo Yan <byan@nvidia.com>
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Rebase-Id: R62dcd56e7abed8ef5cef60325c6ca52fbfb43b22
|
|
Rebase-Id: R940fad74c7e91ef3d1d3d589a48064ccb7335541
|
|
Rebase-Id: Ra1789ff842b792d442d5c11266dedbde07af8589
|
|
Bug 947861
Change-Id: I1ac97b5de5e7e79a418b3c38c70df4976616cdf3
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/100457
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Rebase-Id: R7d702046b68e7e2e5ee36f1ceca5779ac5cd982d
|
|
Enable speculative line fill in SCU.
Bug 947861
Change-Id: I2db7515c47715160a4e559931e178b41c01a1744
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/91834
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Rebase-Id: Ra417206fd2895f95226617212dc7dfb088af8c88
|
|
cherry-picked from adf08ef4030598a6bf9036f45584be8acc008fea
Bug 862504
Change-Id: I79460aa4abdccc4f2ca17867197bb12668d59dea
Reviewed-on: http://git-master/r/52420
Tested-by: Jin Qian <jqian@nvidia.com>
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Rebase-Id: Rffc2d7314a61f04274e0db116c5a1cb7004dc77d
|
|
Change-Id: I156af0bdd8b37cb23aec214c3e158027252e27e1
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Reviewed-on: http://git-master/r/51157
Rebase-Id: R5aa782b116daefeb126b3bf58af90a7fd78f648d
|
|
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
|
|
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
|
|
This change provides a centralized location for powergating modules.
It would take care of switching on/off clocks while un-powergating/
powergating modules respectively.
Bug: 814267
Original-Change-Id: Ic80dc517f634c29085c8e089bdaa32c6fd742710
Reviewed-on: http://git-master/r/31776
Reviewed-by: Niket Sirsi <nsirsi@nvidia.com>
Tested-by: Niket Sirsi <nsirsi@nvidia.com>
Rebase-Id: Re0c233ed4bacc27feb7b210cddc6ff3e487c528f
|
|
For CONFIG_SMP systems that report only a single CPU available,
platform_smp_prepare_cpus() will never get called. Make sure that
tegra_all_cpus_booted is properly set in this case.
Change-Id: I6bf30be02c0b692f0578eb9a19062bcb562c1892
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Rebase-Id: Rb800c15e27cff51a091e8e704610ed72572b4b6e
|
|
- For CONFIG_SMP kernels on systems that only report one CPU available,
there is never a call to platform_smp_prepare_cpus() which means
the reset handler would not get initialized. Invoke the reset handler
initialization from smp_init_cpus() if there is only one CPU.
- For non-CONFIG_SMP kernels, the call to initialize the reset handler
got accidentally dropped in the port to Linux 2.6.39. Invoke the
reset handler initiazation from tegra_init_early() in this case.
Change-Id: I782faf84c89d4285aac26bfccb829f27878029de
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Rebase-Id: R9b35221571885a1620e0d7e19880b05a18c97233
|
|
Add support for forced Tegra3 LP2 low power mode on the boot processor
(CPU 0) via the cluster control interface when all others are offline.
Switching to the LP CPU mode is also enabled with this change.
LP2 in idle and LP2 mode on the secondary processors is not yet
supported.
Change-Id: Icb898729f093be5e006c413f701532dd45228687
Signed-off-by: Scott Williams <scwilliams@nvidia.com>
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Rebase-Id: Rd5d8c2b0addfd6853033670b992ae082e4a0d9c8
|