mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 22:51:37 +00:00
Blackfin: only initialize the RTC when actually used
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
621e579b81
commit
3c87989834
2 changed files with 10 additions and 13 deletions
|
@ -26,10 +26,17 @@
|
||||||
#define NUM_SECS_IN_HR HRS_TO_SECS(1)
|
#define NUM_SECS_IN_HR HRS_TO_SECS(1)
|
||||||
#define NUM_SECS_IN_DAY DAYS_TO_SECS(1)
|
#define NUM_SECS_IN_DAY DAYS_TO_SECS(1)
|
||||||
|
|
||||||
|
/* Enable the RTC prescaler enable register */
|
||||||
|
static void rtc_init(void)
|
||||||
|
{
|
||||||
|
if (!(bfin_read_RTC_PREN() & 0x1))
|
||||||
|
bfin_write_RTC_PREN(0x1);
|
||||||
|
}
|
||||||
|
|
||||||
/* Our on-chip RTC has no notion of "reset" */
|
/* Our on-chip RTC has no notion of "reset" */
|
||||||
void rtc_reset(void)
|
void rtc_reset(void)
|
||||||
{
|
{
|
||||||
return;
|
rtc_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Wait for pending writes to complete */
|
/* Wait for pending writes to complete */
|
||||||
|
@ -42,14 +49,6 @@ static void wait_for_complete(void)
|
||||||
bfin_write_RTC_ISTAT(WRITE_COMPLETE);
|
bfin_write_RTC_ISTAT(WRITE_COMPLETE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Enable the RTC prescaler enable register */
|
|
||||||
int rtc_init(void)
|
|
||||||
{
|
|
||||||
pr_stamp();
|
|
||||||
bfin_write_RTC_PREN(0x1);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Set the time. Get the time_in_secs which is the number of seconds since Jan 1970 and set the RTC registers
|
/* Set the time. Get the time_in_secs which is the number of seconds since Jan 1970 and set the RTC registers
|
||||||
* based on this value.
|
* based on this value.
|
||||||
*/
|
*/
|
||||||
|
@ -64,6 +63,7 @@ int rtc_set(struct rtc_time *tmp)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rtc_init();
|
||||||
wait_for_complete();
|
wait_for_complete();
|
||||||
|
|
||||||
/* Calculate number of seconds this incoming time represents */
|
/* Calculate number of seconds this incoming time represents */
|
||||||
|
@ -100,6 +100,7 @@ int rtc_get(struct rtc_time *tmp)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rtc_init();
|
||||||
wait_for_complete();
|
wait_for_complete();
|
||||||
|
|
||||||
/* Read the RTC_STAT register */
|
/* Read the RTC_STAT register */
|
||||||
|
|
|
@ -250,7 +250,6 @@ void init_cplbtables(void)
|
||||||
|
|
||||||
extern int exception_init(void);
|
extern int exception_init(void);
|
||||||
extern int irq_init(void);
|
extern int irq_init(void);
|
||||||
extern int rtc_init(void);
|
|
||||||
extern int timer_init(void);
|
extern int timer_init(void);
|
||||||
|
|
||||||
void board_init_f(ulong bootflag)
|
void board_init_f(ulong bootflag)
|
||||||
|
@ -313,9 +312,6 @@ void board_init_f(ulong bootflag)
|
||||||
display_banner();
|
display_banner();
|
||||||
|
|
||||||
checkboard();
|
checkboard();
|
||||||
#if defined(CONFIG_RTC_BFIN) && defined(CONFIG_CMD_DATE)
|
|
||||||
rtc_init();
|
|
||||||
#endif
|
|
||||||
timer_init();
|
timer_init();
|
||||||
|
|
||||||
printf("Clock: VCO: %lu MHz, Core: %lu MHz, System: %lu MHz\n",
|
printf("Clock: VCO: %lu MHz, Core: %lu MHz, System: %lu MHz\n",
|
||||||
|
|
Loading…
Add table
Reference in a new issue