Browse Source

MA-9554[Android_6DL_SD]RTC: Sometimes the RTC reset to the initial time 1970 after softare reboot the first time. 40%

RTC timer is default disabled after power off and bootup again. it will be
enabled in kernel rtc driver init. But rtc time is shorter than system clock,
so rtc time cannot update to system clock in rtc_hctosys(), and the sysfs
file /sys/class/rtc/rtc0/hctosys cat result is 0. Android AlarmManagerService
cannot work normally when hctosys is 0.
Enable RTC in u-boot so the time in RTC timer is longer than system clock.

Change-Id: Ie8b1c1b36e5ab48031efe44dd06468ac35ca3d3b
Signed-off-by: Zhang Bo <bo.zhang@nxp.com>
imx_v2017.03_4.9.11_1.0.0_ga n7.1.2_2.0.0-20170908
Zhang Bo 3 years ago
parent
commit
c250b072a6
3 changed files with 12 additions and 0 deletions
  1. +4
    -0
      arch/arm/cpu/armv7/mx6/soc.c
  2. +4
    -0
      arch/arm/cpu/armv7/mx7/soc.c
  3. +4
    -0
      arch/arm/cpu/armv7/mx7ulp/soc.c

+ 4
- 0
arch/arm/cpu/armv7/mx6/soc.c View File

@ -810,6 +810,10 @@ void s_init(void)
u32 mask528;
u32 reg, periph1, periph2;
#if defined(CONFIG_ANDROID_SUPPORT)
/* Enable RTC */
writel(0x21, 0x020cc038);
#endif
if (is_mx6sx() || is_mx6ul() || is_mx6ull() || is_mx6sll())
return;


+ 4
- 0
arch/arm/cpu/armv7/mx7/soc.c View File

@ -483,6 +483,10 @@ void s_init(void)
/* clock configuration. */
clock_init();
#if defined(CONFIG_ANDROID_SUPPORT)
/* Enable RTC */
writel(0x21, 0x30370038);
#endif
return;
}


+ 4
- 0
arch/arm/cpu/armv7/mx7ulp/soc.c View File

@ -151,6 +151,10 @@ void s_init(void)
/* enable dumb pmic */
writel((readl(SNVS_LP_LPCR) | 0x20), SNVS_LP_LPCR);
#if defined(CONFIG_ANDROID_SUPPORT)
/* Enable RTC */
writel(0x21, 0x40230038);
#endif
return;
}


Loading…
Cancel
Save