History log of /rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.c (Results 51 – 75 of 87)
Revision Date Author Comments
# a14e0916 04-Nov-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: disable watchdog during suspend

The CA53 and CM0 WDT clock gating in rk3399 SGRF, and ATF is in charge of
it because the kernel can't touch SGRF.

Basically the WDT didn't stop at suspend

rockchip: disable watchdog during suspend

The CA53 and CM0 WDT clock gating in rk3399 SGRF, and ATF is in charge of
it because the kernel can't touch SGRF.

Basically the WDT didn't stop at suspend time, it just switched from the
24M to the 32k clock. That meant that the WDT would fire if you slept for
long enough. In other word, the watchdog timer over count will increase to
750 (24*1000/32) times.
The RK3399 HW watchdog interval is 21 seconds. When machine enters the
suspend, the watchdog will reset the system after 35.7 (750/21) hours.

BUG=chrome-os-partner:59257
TEST=daisydog checked and set value, powerd_dbus_suspend to verify.

Change-Id: I88bb2a05b7d67d5ffd292f9d05d033ae9a6a3593
Signed-off-by: Caesar Wang <wxt@rock-chips.com>

show more ...


# 2fef96a3 03-Nov-2016 danh-arm <dan.handley@arm.com>

Merge pull request #745 from rockchip-linux/support-rk3399-dram

Support rk3399 dram


# 4c127e68 26-Oct-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: close the PD center logic during suspend

The RK3399 supports close the center logic enter power mode,
so we can close PD_CENTER to save more power during suspend.
Therefore, we need to sup

rockchip: close the PD center logic during suspend

The RK3399 supports close the center logic enter power mode,
so we can close PD_CENTER to save more power during suspend.
Therefore, we need to support save/restore the DDR PHY and
controller registers during suspend/resume.

Also, need CL (http://crosreview.com/397399) to check disabling
center logic.

Change-Id: I288defd8e9caa3846d9fa663a33e4d51df1aaa5d
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Signed-off-by: Derek Basehore <dbasehore@chromium.org>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>

show more ...


# ad09652c 26-Oct-2016 davidcunado-arm <david.cunado@arm.com>

Merge pull request #724 from rockchip-linux/support-rk3399-sdram

rockchip: optimize the link mechanism for SRAM code


# 7ac52006 11-Oct-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: clear the power mode status via M0

Due to the PMU design, the PMU may not clear the WAKEUP bit after
wakeup, therefore, the state machine at the power mode may enter
the infinite loop duri

rockchip: clear the power mode status via M0

Due to the PMU design, the PMU may not clear the WAKEUP bit after
wakeup, therefore, the state machine at the power mode may enter
the infinite loop during WFI.

There is a solution that we can use the M0 to monitor the WAKEUP
bit and clear it during power mode, then the state machine will be
recovered immediately. Then, the DUT can exit the WFI normally.

Change-Id: I303628553b728c214bf2d436bd3122032b5e669c
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>

show more ...


# ec693569 11-Oct-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: optimize the link mechanism for SRAM code

Add the common extra.ld.S and customized rk3399.ld.S to extend
to more features for different platforms.
For example, we can add SRAM section and

rockchip: optimize the link mechanism for SRAM code

Add the common extra.ld.S and customized rk3399.ld.S to extend
to more features for different platforms.
For example, we can add SRAM section and specific address to
load there if we need it, and the common bl31.ld.S not need to
be modified.

Therefore, we can remove the unused codes which copying explicitly
from the function pmusram_prepare(). It looks like more clear.

Change-Id: Ibffa2da5e8e3d1d2fca80085ebb296ceb967fce8
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>

show more ...


# d9738fbc 14-Sep-2016 davidcunado-arm <david.cunado@arm.com>

Merge pull request #700 from rockchip-linux/fixes-typo-and-warnings

rockchip: Fixes typo and warnings


# b1887a86 13-Sep-2016 davidcunado-arm <david.cunado@arm.com>

Merge pull request #703 from rockchip-linux/fixes-gic-panic

rockchip: fixes the gic panic for rk3399 resume


# 0587788a 13-Sep-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: fixes the gic panic for rk3399 resume

We make sure the resuming of gic need to be enabled.
Otherwise, The resume will hit the below panic.
...
[ 24.230541] CPU0: update max cpu_capacity

rockchip: fixes the gic panic for rk3399 resume

We make sure the resuming of gic need to be enabled.
Otherwise, The resume will hit the below panic.
...
[ 24.230541] CPU0: update max cpu_capacity 451
[ 24.236029] CPU5: update max cpu_capacity 1024
[ 24.236046] CPU4: shutdown
[ 24.243205] psci: CPU4 killed.
[ 24.258730] CPU5: shutdown
[ 24.261472] psci: CPU5 killed.
[ 24.270417] GIC: unable to set SRE (disabled at EL2), panic ahead
[ 24.270417] cat[7801]: undefined instruction: pc=ffffffc0004e65d0
[ 24.270417] Code: b0003940 91274400 97f871af d2801e00 (d5184600)
[ 24.270417] Internal error: Oops - undefined instruction: 0 [#1] PREEMPT

Change-Id: Ie9542c8d5768ba0accfa073453da8bfe06d4f921

show more ...


# 4531d3c9 12-Sep-2016 davidcunado-arm <david.cunado@arm.com>

Merge pull request #698 from rockchip-linux/set-APIO-for-rk3399

Set apio for rk3399


# 7e1bedb6 09-Sep-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: fixes some typo

As the checkpatch reports the warning or error.

plat/rockchip/common/plat_pm.c:96:
ERROR: do not set execute permissions for source files
plat/rockchip/rk3399/drivers/pmu/

rockchip: fixes some typo

As the checkpatch reports the warning or error.

plat/rockchip/common/plat_pm.c:96:
ERROR: do not set execute permissions for source files
plat/rockchip/rk3399/drivers/pmu/pmu.c:294:
ERROR: do not set execute permissions for source files

plat/rockchip/common/plat_pm.c:286: WARNING: line over 80 characters
plat/rockchip/common/plat_pm.c:287: WARNING: line over 80 characters

Change-Id: Ib347da21c56551c31df3f90f03777b13c75d5c26

show more ...


# 2bff35bb 09-Sep-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: set gpio2 ~ gpio4 to input and pull none mode

For save power cosumption, if gpio power supply shut down, we need to
set gpio2 ~ gpio4 to input and HiZ status when suspend, and recovery
the

rockchip: set gpio2 ~ gpio4 to input and pull none mode

For save power cosumption, if gpio power supply shut down, we need to
set gpio2 ~ gpio4 to input and HiZ status when suspend, and recovery
they status when rusume. we do it base on apio pass from loader.

Change-Id: I59fd2395e5e37e63425472a39f519822c9197e4c

show more ...


# e550c631 09-Sep-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: support disable/enable specific gpio when suspend/resume

some specific board need to disable/enable specific gpio when
suspend/resume, so we add this function, bootloader can pass the
spec

rockchip: support disable/enable specific gpio when suspend/resume

some specific board need to disable/enable specific gpio when
suspend/resume, so we add this function, bootloader can pass the
specific gpio, and we can handle these gpios in bl31 suspend/resuem
function.

Change-Id: I373b03ef9202ee4a05a2b9caacdfa01b47ee2177

show more ...


# 77b05323 08-Sep-2016 davidcunado-arm <david.cunado@arm.com>

Merge pull request #697 from rockchip-linux/fixes-scu-idle

rockchip: fix the scu idle for rk3399


# 63ebf051 02-Sep-2016 Tony Xie <tony.xie@rock-chips.com>

rockchip: fix the scu idle for rk3399

As rk3399 reported the d8/octane scores drop 10% with cpu idle.
The root cause is thc cpu cluster enter the slow mode.
We don't need switch the clock to 24MHz i

rockchip: fix the scu idle for rk3399

As rk3399 reported the d8/octane scores drop 10% with cpu idle.
The root cause is thc cpu cluster enter the slow mode.
We don't need switch the clock to 24MHz if cpu cluster enter the
retention mode. In order to improve performance, it just needs for
cluster enter powering off mode.

Also, we shouldn't do anything for hlvl if the system is off.

Change-Id: I2a02962a01343abd0cba47ed63192c1cdf88b119

show more ...


# 27c67f4e 26-Aug-2016 davidcunado-arm <david.cunado@arm.com>

Merge pull request #691 from rockchip-linux/fixes-suspend/resume-bugs

Fixes suspend/resume bugs


# bdb2763d 18-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: handle some interrupt before enter power mode for rk3399

For the PMU design, we don't expect to get the interrupts before enter
the power mode. Since that will cause the confusion for the

rockchip: handle some interrupt before enter power mode for rk3399

For the PMU design, we don't expect to get the interrupts before enter
the power mode. Since that will cause the confusion for the state
machine in the power mode.

Change-Id: Id8dee79ae617a66271b5caf92caf35f520f45099

show more ...


# b3464232 23-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: remove the unused code for rk3399

Change-Id: I986d64df9dc62354d50ccea0468b90f090a44160
Signed-off-by: Caesar Wang <wxt@rock-chips.com>


# 9d5aee2b 24-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: on rk3399 enable Schmitt trigger on 32 kHz clock

If we don't enable the Schmitt trigger on the 32 kHz clock then systems
won't always resume from suspend properly. Presumably anything els

rockchip: on rk3399 enable Schmitt trigger on 32 kHz clock

If we don't enable the Schmitt trigger on the 32 kHz clock then systems
won't always resume from suspend properly. Presumably anything else in
the system that relies on the 32 kHz clock also will have problems
without the Schmitt trigger enabled.

Enable it always since having the 32 kHz clock on GPIO0_A0 isn't
exactly an optional feature, so all boards using rk3399 will need this.

Change-Id: Idc18c6cd1adc5be5f60efd9cb805d83d5cd40129

show more ...


# 0786d688 24-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: on rk3399 init the PMU counts at boot; set 24M/32k properly

In a previous change we mistakenly thought that PMU_24M_EN_CFG directly
controlled whether the PMU counts ran off the 32k vs. 24

rockchip: on rk3399 init the PMU counts at boot; set 24M/32k properly

In a previous change we mistakenly thought that PMU_24M_EN_CFG directly
controlled whether the PMU counts ran off the 32k vs. 24M clock.
Apparently that's not true. Real logic is now documented in code.

Also in the previous change we mistaknely though that PMU_24M_EN_CFG was
normally supposed to be 1 and we should "restore" it at resume time.
This is a terrible idea and made the system totally unreliable after
resume. Apparently PMU_24M_EN_CFG should always be 0 with all the
current code and settings.

Let's fix the above two problems. While we're changing all of this,
let's also:

1. Init at boot time. Many of these counts are used when the system is
running normally. We want the behavior at boot to match the behavior
after suspend/resume.

2. Init CPU counts to be 1 us. Although old code was trying to set this
to 1 ms (1000x slower) at suspend/resume time, we've been testing the
kernel with 1 us for a long time now. That's because the kernel (at
boot time) set these values to 24. Let's keep at 24 until we know
that's wrong.

3. Init GPU counts to be 1 us. Old code wasn't touching the GPU, but as
documented in comments it makes sense to init here. Do it.

4. Document the crap out of this code, since the SoC's behavior is
confusing and poorly documented in the TRM.

5. Increase some stabilization times to 30 ms (from 3 ms). It's unclear
that a full 30 ms is needed, but let's be safe for now.

This also inits the counts for the GPU.

(Thanks to Doug's patch that come from https://crosreview.com/372381)

Change-Id: Id1bc159a5a99916aeab043895e5c4585c4adab22

show more ...


# 50990186 12-Aug-2016 danh-arm <dan.handley@arm.com>

Merge pull request #679 from rockchip-linux/support-pwm-for-rk3399

Support pwm for rk3399


# 78f7017c 08-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: fix the reset-hold release for rk3399 resume

The pmusgrf reset-hold bits needs to be released, since the
pmusgrf reset-hold bits needs to be held.

Change-Id: Ia1eccc8fba18294f26b4cc07d47b

rockchip: fix the reset-hold release for rk3399 resume

The pmusgrf reset-hold bits needs to be released, since the
pmusgrf reset-hold bits needs to be held.

Change-Id: Ia1eccc8fba18294f26b4cc07d47bc5e513dd9a1f

show more ...


# 545bff0e 09-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: fix the power up/dowm cnt for rk3399

Sometimes this will cause the long delay for suspend/resume.
Since the 24M OCS will be turned off in power mode.
Also, remove the ERROR_DEPRECATED conf

rockchip: fix the power up/dowm cnt for rk3399

Sometimes this will cause the long delay for suspend/resume.
Since the 24M OCS will be turned off in power mode.
Also, remove the ERROR_DEPRECATED config define.

Change-Id: I78f21c35912c2250972e551695cdacc7bc4c020a

show more ...


# 5d3b1067 10-Aug-2016 Caesar Wang <wxt@rock-chips.com>

rockchip: update to handle PWMs for rk3399

This patch updates some things for rk3399, as following:

1) Add the new file to handle the pwm. (e.g. the pwm regulator)
Make sure that good deal with the

rockchip: update to handle PWMs for rk3399

This patch updates some things for rk3399, as following:

1) Add the new file to handle the pwm. (e.g. the pwm regulator)
Make sure that good deal with the pwm related things.
Also, remove some pwm setting for pmu.c.

2) Set the plls slow mode and bypass in suspend, and restore them.

Change-Id: I112806700bf433c87763aac23d22fa7e6a7f5264

show more ...


# d75eff80 28-Jul-2016 danh-arm <dan.handley@arm.com>

Merge pull request #674 from rockchip-linux/Support-PWMs-for-rk3399-suspend/resume

rockchip: fixes typo and some bugs for suspend/resume tests


1234