aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Roth <gaumless@gmail.com>2014-05-12 21:52:54 -0600
committerMartin Roth <gaumless@gmail.com>2014-05-29 23:09:12 +0200
commit7312c54dc684099a6d85ae13f3de097754ced0f0 (patch)
tree9042b9a10d9202330048f6ea31872e2ae7d6b7a1
parent2c55b70d1a9a52060708ee0cf44eac9c2764ddd4 (diff)
downloadcoreboot-7312c54dc684099a6d85ae13f3de097754ced0f0.tar.gz
coreboot-7312c54dc684099a6d85ae13f3de097754ced0f0.tar.xz
coreboot-7312c54dc684099a6d85ae13f3de097754ced0f0.zip
add rtc_init() to romstage
The FSP clears the bit that tells us whether or not the RTC has lost power when it sets up memory. Because of this, we need to initialize the RTC in romstage instead of ramstage. Change-Id: I158e4339fc539d32cfb2428042df6156d312a5f4 Signed-off-by: Martin Roth <gaumless@gmail.com> Signed-off-by: Martin Roth <martin.roth@se-eng.com> Reviewed-on: http://review.coreboot.org/5735 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marc.jones@se-eng.com>
-rw-r--r--src/drivers/pc80/Makefile.inc1
-rw-r--r--src/drivers/pc80/mc146818rtc.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/src/drivers/pc80/Makefile.inc b/src/drivers/pc80/Makefile.inc
index 4d0a280b2..d216e2cc6 100644
--- a/src/drivers/pc80/Makefile.inc
+++ b/src/drivers/pc80/Makefile.inc
@@ -1,3 +1,4 @@
+romstage-y += mc146818rtc.c
ramstage-y += mc146818rtc.c
ramstage-y += isa-dma.c
ramstage-y += i8254.c
diff --git a/src/drivers/pc80/mc146818rtc.c b/src/drivers/pc80/mc146818rtc.c
index 51cd6c316..6f8a4eb35 100644
--- a/src/drivers/pc80/mc146818rtc.c
+++ b/src/drivers/pc80/mc146818rtc.c
@@ -71,6 +71,7 @@ void rtc_init(int invalid)
unsigned char x;
#endif
+#ifndef __PRE_RAM__
#if CONFIG_HAVE_ACPI_RESUME
/*
* Avoid clearing pending interrupts and resetting the RTC control
@@ -80,7 +81,8 @@ void rtc_init(int invalid)
*/
if (acpi_slp_type == 3)
return;
-#endif
+#endif /* CONFIG_HAVE_ACPI_RESUME */
+#endif /* __PRE_RAM__ */
printk(BIOS_DEBUG, "RTC Init\n");