diff options
author | Zhang Bo <bo.zhang@nxp.com> | 2017-11-23 14:29:28 +0800 |
---|---|---|
committer | Zhang Bo <bo.zhang@nxp.com> | 2018-01-25 19:19:40 +0800 |
commit | 6ccbd3bce5fe6abb872e3dab31eac70516ad5347 (patch) | |
tree | 0460e7131820b2d0c292a77b4e33ed381f92bbeb | |
parent | db35ba76fbc9fd8a524543fc79cd0f2eed28084f (diff) | |
download | uboot-imx-6ccbd3bce5fe6abb872e3dab31eac70516ad5347.tar.gz |
MA-10732[Android] Change pmic sw3 mode to avoid DDR power off
Write 1 to bit5 of PMIC SW3MODE(0x3f) register to change sw3 mode to avoid DDR
power off. It will avoid DRAM lose data when reset or reboot.
This feature is essental for pstore/ramoops work normally.
Change-Id: I92a1e198d57d77ae117d0d49675fc8afffec9656
Signed-off-by: Zhang Bo <bo.zhang@nxp.com>
-rw-r--r-- | board/freescale/mx7dsabresd/mx7dsabresd.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/board/freescale/mx7dsabresd/mx7dsabresd.c b/board/freescale/mx7dsabresd/mx7dsabresd.c index 6096e3c5cd..e3b75166ec 100644 --- a/board/freescale/mx7dsabresd/mx7dsabresd.c +++ b/board/freescale/mx7dsabresd/mx7dsabresd.c @@ -624,6 +624,7 @@ int power_init_board(void) { struct udevice *dev; int ret, dev_id, rev_id; + u32 sw3mode; ret = pmic_get("pfuze3000", &dev); if (ret == -ENODEV) @@ -637,6 +638,12 @@ int power_init_board(void) pmic_clrsetbits(dev, PFUZE3000_LDOGCTL, 0, 1); + /* change sw3 mode to avoid DDR power off */ + sw3mode = pmic_reg_read(dev, PFUZE3000_SW3MODE); + ret = pmic_reg_write(dev, PFUZE3000_SW3MODE, sw3mode | 0x20); + if (ret < 0) + printf("PMIC: PFUZE3000 change sw3 mode failed\n"); + return 0; } #endif |