Aaron Durbin (adurbin(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8986
-gerrit
commit 2ef85e3269db7f20ccbc1a52e7135009f8330ca3
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Tue Mar 24 11:33:03 2015 -0500
baytrail: select PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
This platform supports PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
in that CAR region can be migrated and the data can be maintained
across the CAR tear down boundary.
Change-Id: I232613ebb641eb9d8fc61af4ba8d2e9b66ec5e51
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
---
src/soc/intel/baytrail/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/soc/intel/baytrail/Kconfig b/src/soc/intel/baytrail/Kconfig
index 214a1ac..fbd2b01 100644
--- a/src/soc/intel/baytrail/Kconfig
+++ b/src/soc/intel/baytrail/Kconfig
@@ -21,6 +21,7 @@ config CPU_SPECIFIC_OPTIONS
select HAVE_HARD_RESET
select MMCONF_SUPPORT
select MMCONF_SUPPORT_DEFAULT
+ select PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
select RELOCATABLE_MODULES
select RELOCATABLE_RAMSTAGE
select PARALLEL_MP
Aaron Durbin (adurbin(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8984
-gerrit
commit 800af75fc0fc72715f73aa0a86532ecbdcc968f1
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Wed Mar 25 10:44:53 2015 -0500
broadwell: select PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
This platform supports PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
in that CAR region can be migrated and the data can be maintained
across the CAR tear down boundary.
Change-Id: Iff3372fabc684bf8742e8f7fbfde9fbc105a7aa7
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
---
src/soc/intel/broadwell/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/soc/intel/broadwell/Kconfig b/src/soc/intel/broadwell/Kconfig
index c147663..c81fa6e 100644
--- a/src/soc/intel/broadwell/Kconfig
+++ b/src/soc/intel/broadwell/Kconfig
@@ -29,6 +29,7 @@ config CPU_SPECIFIC_OPTIONS
select IOAPIC
select MMCONF_SUPPORT
select MMCONF_SUPPORT_DEFAULT
+ select PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
select RELOCATABLE_MODULES
select RELOCATABLE_RAMSTAGE
select REG_SCRIPT
Aaron Durbin (adurbin(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8985
-gerrit
commit a5b05270f079dff3cf1535e6f5e45b64edda6c71
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Wed Mar 25 10:45:20 2015 -0500
haswell: select PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
This platform supports PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
in that CAR region can be migrated and the data can be maintained
across the CAR tear down boundary.
Change-Id: If131e26b719828647b9fe66f30fc0c87dbcb185f
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
---
src/cpu/intel/haswell/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/cpu/intel/haswell/Kconfig b/src/cpu/intel/haswell/Kconfig
index 741b677..7352c63 100644
--- a/src/cpu/intel/haswell/Kconfig
+++ b/src/cpu/intel/haswell/Kconfig
@@ -17,6 +17,7 @@ config CPU_SPECIFIC_OPTIONS
select TSC_CONSTANT_RATE
select SMM_TSEG
select SMM_MODULES
+ select PLATFORM_HAS_EARLY_WRITABLE_GLOBALS
select RELOCATABLE_MODULES
select RELOCATABLE_RAMSTAGE
select SUPPORT_CPU_UCODE_IN_CBFS
Aaron Durbin (adurbin(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8835
-gerrit
commit b573384177a0269931eb1bc47f25eeaa10013288
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Fri Mar 20 10:58:41 2015 -0500
loading: move ramstage cache function declarations
The functions related to caching ramstage were in cbfs.h.
Now that the loading code is separate move those declarations
to the common program_loading.h.
Change-Id: Ib22ef8a9c66e1d2b53388bceb8386baa6302d28b
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
---
src/include/cbfs.h | 38 --------------------------------------
src/include/program_loading.h | 36 ++++++++++++++++++++++++++++++++++++
src/lib/ramstage_cache.c | 2 +-
3 files changed, 37 insertions(+), 39 deletions(-)
diff --git a/src/include/cbfs.h b/src/include/cbfs.h
index 2db3c94..c0e3d80 100644
--- a/src/include/cbfs.h
+++ b/src/include/cbfs.h
@@ -79,43 +79,5 @@ int run_address(void *f);
/* Defined in individual arch / board implementation. */
int init_default_cbfs_media(struct cbfs_media *media);
-#if defined(__PRE_RAM__)
-struct romstage_handoff;
-struct cbmem_entry;
-
-#if CONFIG_RELOCATABLE_RAMSTAGE && defined(__PRE_RAM__)
-/* The cache_loaded_ramstage() and load_cached_ramstage() functions are defined
- * to be weak so that board and chipset code may override them. Their job is to
- * cache and load the ramstage for quick S3 resume. By default a copy of the
- * relocated ramstage is saved using the cbmem infrastructure. These
- * functions are only valid during romstage. */
-
-/* The implementer of cache_loaded_ramstage() may use the romstage_handoff
- * structure to store information, but note that the handoff variable can be
- * NULL. The ramstage cbmem_entry represents the region occupied by the loaded
- * ramstage. */
-void cache_loaded_ramstage(struct romstage_handoff *handoff,
- const struct cbmem_entry *ramstage, void *entry_point);
-/* Return NULL on error or entry point on success. The ramstage cbmem_entry is
- * the region where to load the cached contents to. */
-void * load_cached_ramstage(struct romstage_handoff *handoff,
- const struct cbmem_entry *ramstage);
-#else /* CONFIG_RELOCATABLE_RAMSTAGE */
-
-static inline void cache_loaded_ramstage(struct romstage_handoff *handoff,
- const struct cbmem_entry *ramstage, void *entry_point)
-{
-}
-
-static inline void *
-load_cached_ramstage(struct romstage_handoff *handoff,
- const struct cbmem_entry *ramstage)
-{
- return NULL;
-}
-
-#endif /* CONFIG_RELOCATABLE_RAMSTAGE */
-#endif /* defined(__PRE_RAM__) */
-
#endif
diff --git a/src/include/program_loading.h b/src/include/program_loading.h
index 21d2c1e..e071db9 100644
--- a/src/include/program_loading.h
+++ b/src/include/program_loading.h
@@ -40,8 +40,44 @@ void run_romstage(void);
* RAMSTAGE LOADING *
************************/
+struct romstage_handoff;
struct cbmem_entry;
+#if defined(__PRE_RAM__)
+#if CONFIG_RELOCATABLE_RAMSTAGE
+/* The cache_loaded_ramstage() and load_cached_ramstage() functions are defined
+ * to be weak so that board and chipset code may override them. Their job is to
+ * cache and load the ramstage for quick S3 resume. By default a copy of the
+ * relocated ramstage is saved using the cbmem infrastructure. These
+ * functions are only valid during romstage. */
+
+/* The implementer of cache_loaded_ramstage() may use the romstage_handoff
+ * structure to store information, but note that the handoff variable can be
+ * NULL. The ramstage cbmem_entry represents the region occupied by the loaded
+ * ramstage. */
+void cache_loaded_ramstage(struct romstage_handoff *handoff,
+ const struct cbmem_entry *ramstage, void *entry_point);
+/* Return NULL on error or entry point on success. The ramstage cbmem_entry is
+ * the region where to load the cached contents to. */
+void * load_cached_ramstage(struct romstage_handoff *handoff,
+ const struct cbmem_entry *ramstage);
+#else /* CONFIG_RELOCATABLE_RAMSTAGE */
+
+static inline void cache_loaded_ramstage(struct romstage_handoff *handoff,
+ const struct cbmem_entry *ramstage, void *entry_point)
+{
+}
+
+static inline void *
+load_cached_ramstage(struct romstage_handoff *handoff,
+ const struct cbmem_entry *ramstage)
+{
+ return NULL;
+}
+
+#endif /* CONFIG_RELOCATABLE_RAMSTAGE */
+#endif /* defined(__PRE_RAM__) */
+
/* Run ramstage from romstage. */
void run_ramstage(void);
diff --git a/src/lib/ramstage_cache.c b/src/lib/ramstage_cache.c
index 814d807..d61f1c1 100644
--- a/src/lib/ramstage_cache.c
+++ b/src/lib/ramstage_cache.c
@@ -19,8 +19,8 @@
#include <stddef.h>
#include <string.h>
-#include <cbfs.h>
#include <console/console.h>
+#include <program_loading.h>
#include <ramstage_cache.h>
#include <romstage_handoff.h>