the following patch was just integrated into master:
commit 0a66991a345f437e957ecc0ddeed70bc304d2a43
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Sun Oct 5 14:34:17 2014 +0200
acpi: Remove explicit pointer tracking in per-device ssdt.
It's useless and error-prone.
Change-Id: Ie385e147d42b05290ab8c3ca193c5c871306f4ac
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
Reviewed-on: http://review.coreboot.org/7018
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin(a)google.com>
See http://review.coreboot.org/7018 for details.
-gerrit
the following patch was just integrated into master:
commit 334fd8e28b6f572dc8a82c7969696c6072709583
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Sun Oct 5 11:10:35 2014 +0200
bd82x6x, ibexpeak, lynxpoint: Declare NVSA before its use.
Windows chokes if it's not the case.
Change-Id: I3df15228ed00c3124b8d42fc01d7d63ff3fe07ba
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
Reviewed-on: http://review.coreboot.org/7017
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin(a)gmail.com>
See http://review.coreboot.org/7017 for details.
-gerrit
the following patch was just integrated into master:
commit bf3e2dfaafb4b523a893a43aab4e0da661c94e5a
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Sat Oct 11 03:49:24 2014 +0200
early section: Don't add empty .car.cbmem_console.
With handling of this section removed it confused the linker.
Change-Id: Id096c1642c0bfed1007a4b7d7dfa89f8b4ffcae1
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
Reviewed-on: http://review.coreboot.org/7042
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin(a)gmail.com>
See http://review.coreboot.org/7042 for details.
-gerrit
Vladimir Serbinenko (phcoder(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/7042
-gerrit
commit 1edc54ea5783f667039562ecf5e472857d525616
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Sat Oct 11 03:49:24 2014 +0200
early section: Don't add empty .car.cbmem_console.
With handling of this section removed it confused the linker.
Change-Id: Id096c1642c0bfed1007a4b7d7dfa89f8b4ffcae1
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
---
src/arch/x86/include/arch/early_variables.h | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/arch/x86/include/arch/early_variables.h b/src/arch/x86/include/arch/early_variables.h
index 80e82d6..ea57d89 100644
--- a/src/arch/x86/include/arch/early_variables.h
+++ b/src/arch/x86/include/arch/early_variables.h
@@ -23,8 +23,6 @@
#ifdef __PRE_RAM__
asm(".section .car.global_data,\"w\",@nobits");
asm(".previous");
-asm(".section .car.cbmem_console,\"w\",@nobits");
-asm(".previous");
#define CAR_GLOBAL __attribute__((section(".car.global_data")))
#else
#define CAR_GLOBAL
Francis Rowe (info(a)gluglug.org.uk) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/7041
-gerrit
commit cbb76b18d78ccb5ede03916bf805497c615528b3
Author: Francis Rowe <info(a)gluglug.org.uk>
Date: Fri Oct 10 21:46:36 2014 +0100
Revert "cbmem console: Locate the preram console with a symbol instead of a section."
This reverts commit 35382a6eeb6634c291ffb67a3c4fa7a4601a7328.
X60, X201t and Google/panther (Haswell) were found not to boot at all with this commit. Reverting it fixes boot issue.
Change-Id: Idfe7bd5323e4936441f112f3bb65287f3ec6cd1f
Signed-off-by: Alexander Couzens <lynxis(a)fe80.eu>
Signed-off-by: Francis Rowe <info(a)gluglug.org.uk>
---
src/arch/arm/include/arch/early_variables.h | 1 +
src/arch/x86/include/arch/early_variables.h | 2 ++
src/arch/x86/init/romstage.ld | 14 +++++++-------
src/console/Kconfig | 10 +++++-----
src/lib/cbmem_console.c | 5 ++---
5 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/src/arch/arm/include/arch/early_variables.h b/src/arch/arm/include/arch/early_variables.h
index 5b58baa..041d0ae 100644
--- a/src/arch/arm/include/arch/early_variables.h
+++ b/src/arch/arm/include/arch/early_variables.h
@@ -21,6 +21,7 @@
#define ARCH_EARLY_VARIABLES_H
#define CAR_GLOBAL
+#define CAR_CBMEM
#define CAR_MIGRATE(migrate_fn_)
static inline void *car_get_var_ptr(void *var) { return var; }
diff --git a/src/arch/x86/include/arch/early_variables.h b/src/arch/x86/include/arch/early_variables.h
index 80e82d6..ea1a133 100644
--- a/src/arch/x86/include/arch/early_variables.h
+++ b/src/arch/x86/include/arch/early_variables.h
@@ -26,8 +26,10 @@ asm(".previous");
asm(".section .car.cbmem_console,\"w\",@nobits");
asm(".previous");
#define CAR_GLOBAL __attribute__((section(".car.global_data")))
+#define CAR_CBMEM __attribute__((section(".car.cbmem_console")))
#else
#define CAR_GLOBAL
+#define CAR_CBMEM
#endif
#if defined(__PRE_RAM__)
diff --git a/src/arch/x86/init/romstage.ld b/src/arch/x86/init/romstage.ld
index d6eb511..5458cfc 100644
--- a/src/arch/x86/init/romstage.ld
+++ b/src/arch/x86/init/romstage.ld
@@ -55,15 +55,15 @@ SECTIONS
.car.data . (NOLOAD) : {
_car_data_start = .;
*(.car.global_data);
- _car_data_end = .;
- /* The preram cbmem console area comes last to take advantage
- * of a zero-sized array to hold the memconsole contents that
- * grows to a bound of CONFIG_CONSOLE_PRERAM_BUFFER_SIZE.
- * However, collisions within the cache-as-ram region cannot be
+ /* The cbmem_console section comes last to take advantage of
+ * a zero-sized array to hold the memconsole contents that
+ * grows to a bound of CONFIG_CONSOLE_CAR_BUFFER_SIZE. However,
+ * collisions within the cache-as-ram region cannot be
* statically checked because the cache-as-ram region usage is
* cpu/chipset dependent. */
- preram_cbmem_console = .;
+ *(.car.cbmem_console);
+ _car_data_end = .;
}
- _bogus = ASSERT((SIZEOF(.car.data) + CONFIG_CONSOLE_PRERAM_BUFFER_SIZE <= CONFIG_DCACHE_RAM_SIZE), "Cache as RAM area is too full");
+ _bogus = ASSERT((SIZEOF(.car.data) <= CONFIG_DCACHE_RAM_SIZE), "Cache as RAM area is too full");
}
diff --git a/src/console/Kconfig b/src/console/Kconfig
index 619af56..472ac5c 100644
--- a/src/console/Kconfig
+++ b/src/console/Kconfig
@@ -184,15 +184,15 @@ config CONSOLE_CBMEM_BUFFER_SIZE
value (128K or 0x20000 bytes) is large enough to accommodate
even the BIOS_SPEW level.
-config CONSOLE_PRERAM_BUFFER_SIZE
+config CONSOLE_CAR_BUFFER_SIZE
depends on CONSOLE_CBMEM
- hex "Room allocated for console output before RAM is initialized"
+ hex "Room allocated for console output in Cache as RAM"
default 0xc00
help
Console is used before RAM is initialized. This is the room reserved
- in the DCACHE based RAM, SRAM, etc. to keep console output before it
- can be saved in a CBMEM buffer. 3K bytes should be enough even for
- the BIOS_SPEW level.
+ in the DCACHE based RAM to keep console output before it can be
+ saved in a CBMEM buffer. 3K bytes should be enough even for the
+ BIOS_SPEW level.
config CONSOLE_QEMU_DEBUGCON
bool "QEMU debug console output"
diff --git a/src/lib/cbmem_console.c b/src/lib/cbmem_console.c
index b5b75f3..9d5419a 100644
--- a/src/lib/cbmem_console.c
+++ b/src/lib/cbmem_console.c
@@ -44,7 +44,7 @@ static struct cbmem_console *cbmem_console_p CAR_GLOBAL;
* the area are defined in the config.
*/
-extern struct cbmem_console preram_cbmem_console;
+static struct cbmem_console car_cbmem_console CAR_CBMEM;
#else
@@ -86,8 +86,7 @@ static inline void init_console_ptr(void *storage, u32 total_space)
void cbmemc_init(void)
{
#ifdef __PRE_RAM__
- init_console_ptr(&preram_cbmem_console,
- CONFIG_CONSOLE_PRERAM_BUFFER_SIZE);
+ init_console_ptr(&car_cbmem_console, CONFIG_CONSOLE_CAR_BUFFER_SIZE);
#else
/*
* Initializing before CBMEM is available, use static buffer to store
Francis Rowe (info(a)gluglug.org.uk) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/7041
-gerrit
commit 0359eda692561abdefeeddcb09d884900fa3dabf
Author: Francis Rowe <info(a)gluglug.org.uk>
Date: Fri Oct 10 21:46:36 2014 +0100
Revert "cbmem console: Locate the preram console with a symbol instead of a section."
This reverts commit 35382a6eeb6634c291ffb67a3c4fa7a4601a7328.
X60/X201 were found not to boot at all with this commit. Reverting it fixes boot issue.
Change-Id: Idfe7bd5323e4936441f112f3bb65287f3ec6cd1f
Signed-off-by: Alexander Couzens <lynxis(a)fe80.eu>
Signed-off-by: Francis Rowe <info(a)gluglug.org.uk>
---
src/arch/arm/include/arch/early_variables.h | 1 +
src/arch/x86/include/arch/early_variables.h | 2 ++
src/arch/x86/init/romstage.ld | 14 +++++++-------
src/console/Kconfig | 10 +++++-----
src/lib/cbmem_console.c | 5 ++---
5 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/src/arch/arm/include/arch/early_variables.h b/src/arch/arm/include/arch/early_variables.h
index 5b58baa..041d0ae 100644
--- a/src/arch/arm/include/arch/early_variables.h
+++ b/src/arch/arm/include/arch/early_variables.h
@@ -21,6 +21,7 @@
#define ARCH_EARLY_VARIABLES_H
#define CAR_GLOBAL
+#define CAR_CBMEM
#define CAR_MIGRATE(migrate_fn_)
static inline void *car_get_var_ptr(void *var) { return var; }
diff --git a/src/arch/x86/include/arch/early_variables.h b/src/arch/x86/include/arch/early_variables.h
index 80e82d6..ea1a133 100644
--- a/src/arch/x86/include/arch/early_variables.h
+++ b/src/arch/x86/include/arch/early_variables.h
@@ -26,8 +26,10 @@ asm(".previous");
asm(".section .car.cbmem_console,\"w\",@nobits");
asm(".previous");
#define CAR_GLOBAL __attribute__((section(".car.global_data")))
+#define CAR_CBMEM __attribute__((section(".car.cbmem_console")))
#else
#define CAR_GLOBAL
+#define CAR_CBMEM
#endif
#if defined(__PRE_RAM__)
diff --git a/src/arch/x86/init/romstage.ld b/src/arch/x86/init/romstage.ld
index d6eb511..5458cfc 100644
--- a/src/arch/x86/init/romstage.ld
+++ b/src/arch/x86/init/romstage.ld
@@ -55,15 +55,15 @@ SECTIONS
.car.data . (NOLOAD) : {
_car_data_start = .;
*(.car.global_data);
- _car_data_end = .;
- /* The preram cbmem console area comes last to take advantage
- * of a zero-sized array to hold the memconsole contents that
- * grows to a bound of CONFIG_CONSOLE_PRERAM_BUFFER_SIZE.
- * However, collisions within the cache-as-ram region cannot be
+ /* The cbmem_console section comes last to take advantage of
+ * a zero-sized array to hold the memconsole contents that
+ * grows to a bound of CONFIG_CONSOLE_CAR_BUFFER_SIZE. However,
+ * collisions within the cache-as-ram region cannot be
* statically checked because the cache-as-ram region usage is
* cpu/chipset dependent. */
- preram_cbmem_console = .;
+ *(.car.cbmem_console);
+ _car_data_end = .;
}
- _bogus = ASSERT((SIZEOF(.car.data) + CONFIG_CONSOLE_PRERAM_BUFFER_SIZE <= CONFIG_DCACHE_RAM_SIZE), "Cache as RAM area is too full");
+ _bogus = ASSERT((SIZEOF(.car.data) <= CONFIG_DCACHE_RAM_SIZE), "Cache as RAM area is too full");
}
diff --git a/src/console/Kconfig b/src/console/Kconfig
index 619af56..472ac5c 100644
--- a/src/console/Kconfig
+++ b/src/console/Kconfig
@@ -184,15 +184,15 @@ config CONSOLE_CBMEM_BUFFER_SIZE
value (128K or 0x20000 bytes) is large enough to accommodate
even the BIOS_SPEW level.
-config CONSOLE_PRERAM_BUFFER_SIZE
+config CONSOLE_CAR_BUFFER_SIZE
depends on CONSOLE_CBMEM
- hex "Room allocated for console output before RAM is initialized"
+ hex "Room allocated for console output in Cache as RAM"
default 0xc00
help
Console is used before RAM is initialized. This is the room reserved
- in the DCACHE based RAM, SRAM, etc. to keep console output before it
- can be saved in a CBMEM buffer. 3K bytes should be enough even for
- the BIOS_SPEW level.
+ in the DCACHE based RAM to keep console output before it can be
+ saved in a CBMEM buffer. 3K bytes should be enough even for the
+ BIOS_SPEW level.
config CONSOLE_QEMU_DEBUGCON
bool "QEMU debug console output"
diff --git a/src/lib/cbmem_console.c b/src/lib/cbmem_console.c
index b5b75f3..9d5419a 100644
--- a/src/lib/cbmem_console.c
+++ b/src/lib/cbmem_console.c
@@ -44,7 +44,7 @@ static struct cbmem_console *cbmem_console_p CAR_GLOBAL;
* the area are defined in the config.
*/
-extern struct cbmem_console preram_cbmem_console;
+static struct cbmem_console car_cbmem_console CAR_CBMEM;
#else
@@ -86,8 +86,7 @@ static inline void init_console_ptr(void *storage, u32 total_space)
void cbmemc_init(void)
{
#ifdef __PRE_RAM__
- init_console_ptr(&preram_cbmem_console,
- CONFIG_CONSOLE_PRERAM_BUFFER_SIZE);
+ init_console_ptr(&car_cbmem_console, CONFIG_CONSOLE_CAR_BUFFER_SIZE);
#else
/*
* Initializing before CBMEM is available, use static buffer to store