Naman Govil (namangov(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11371
-gerrit
commit 66c311c2909ff2c48033833b759c425033a4b889
Author: Naman Govil <namangov(a)gmail.com>
Date: Thu Aug 27 05:46:45 2015 +0530
Alignment Issue in arm64
The qemu-armv8 was unable to branch and link to appropriate location
(smp_processor_id) due to misalignment by 1 byte.
Change-Id: I38634cc075bfb1b72098b1dc4c9e488531f2c4e8
Signed-off-by: Naman Govil <namangov(a)gmail.com>
---
src/arch/arm64/id.S | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/arch/arm64/id.S b/src/arch/arm64/id.S
index a588f1e..b36e6f2 100644
--- a/src/arch/arm64/id.S
+++ b/src/arch/arm64/id.S
@@ -16,5 +16,6 @@ part:
.long CONFIG_ROM_SIZE /* Size of this romimage */
.globl __id_end
+ .align 2
__id_end:
.previous
Naman Govil (namangov(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/10854
-gerrit
commit 3a6a7180df6e7695aae55690139303d00c9cb724
Author: Akshay Saraswat <akshay.s(a)samsung.com>
Date: Fri Sep 5 10:49:34 2014 +0530
ARMv8: Bootblock: Fix compile and runtime errors
This patch intends to fix following logical errors:
1. bootblock.S is getting compiled everytime even if
CONFIG_ARM_BOOTBLOCK_CUSTOM is not defined. bootblock.S
contains same declarations as of id.S, hence, compiler
complains for duplicate definitions.
2. mmu_enable, exception_hwinit and arch_secondary_cpu_init function
calls are happening for all stages without any check but the
definitions for these functions are getting compiled only for
ramstage. Obviously compiler doesn't find that definitions in case
bootblock and complains.
3. bootblock_cpu_init, bootblock_mainboard_init are required to be
called from bootblock's main function when CPU_HAS_BOOTBLOCK_INIT and
alike CONFIGS are enabled. But these function calls are commented.
4. CONFIG_BOOTBLOCK_CONSOLE is always defined. When it is enbaled it
contains value 1 in the final config else 0. Checking this config
with #ifdef doesn't make sense, hence, replaced it with if.
BRANCH=None
BUG=None
TEST=Compiled and booted over Jazz board using linaro-4.8 gnu gcc
and didn't find errors related to this part of code
Change-Id: I72fe02509c25e76c029ee6af0442f059adb54736
Signed-off-by: Akshay Saraswat <akshay.s(a)samsung.com>
Signed-off-by: Naman Govil <namangov(a)gmail.com>
---
src/arch/arm64/armv8/Makefile.inc | 3 ++-
src/arch/arm64/armv8/bootblock_simple.c | 12 ++++++------
src/arch/arm64/c_entry.c | 17 +++++++++++++++++
src/arch/arm64/include/bootblock_common.h | 6 +++++-
4 files changed, 30 insertions(+), 8 deletions(-)
diff --git a/src/arch/arm64/armv8/Makefile.inc b/src/arch/arm64/armv8/Makefile.inc
index 0c4778d..13181a8 100644
--- a/src/arch/arm64/armv8/Makefile.inc
+++ b/src/arch/arm64/armv8/Makefile.inc
@@ -32,8 +32,9 @@ armv8_asm_flags = $(armv8_flags)
################################################################################
ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARMV8_64),y)
-ifneq ($(CONFIG_ARM64_BOOTBLOCK_CUSTOM),y)
+ifeq ($(CONFIG_ARM64_BOOTBLOCK_CUSTOM),y)
bootblock-y += bootblock.S
+else
bootblock-y += bootblock_simple.c
endif
bootblock-y += cache.c
diff --git a/src/arch/arm64/armv8/bootblock_simple.c b/src/arch/arm64/armv8/bootblock_simple.c
index 6cb55e6..c93a100 100644
--- a/src/arch/arm64/armv8/bootblock_simple.c
+++ b/src/arch/arm64/armv8/bootblock_simple.c
@@ -51,14 +51,14 @@ void main(void)
*/
if (boot_cpu()) {
- //bootblock_cpu_init();
- //bootblock_mainboard_init();
+ bootblock_cpu_init();
+ bootblock_mainboard_init();
}
-#if IS_ENABLED(CONFIG_BOOTBLOCK_CONSOLE)
- console_init();
- exception_init();
-#endif
+ if (IS_ENABLED(CONFIG_BOOTBLOCK_CONSOLE)) {
+ console_init();
+ exception_init();
+ }
run_romstage();
}
diff --git a/src/arch/arm64/c_entry.c b/src/arch/arm64/c_entry.c
index a4d4773..5970405 100644
--- a/src/arch/arm64/c_entry.c
+++ b/src/arch/arm64/c_entry.c
@@ -29,6 +29,12 @@ void __attribute__((weak)) arm64_soc_init(void)
/* Default weak implementation does nothing. */
}
+unsigned int __attribute__((weak)) smp_processor_id(void)
+{
+ /* Default weak implementation does nothing. */
+ return 0;
+}
+
static void seed_stack(void)
{
char *stack_begin;
@@ -57,6 +63,17 @@ static void arm64_init(void)
main();
}
+static void secondary_cpu_start(void)
+{
+#ifndef __PRE_RAM__
+ mmu_enable();
+ exception_hwinit();
+
+ /* This will never return. */
+ arch_secondary_cpu_init();
+#endif
+}
+
/*
* This variable holds entry point for CPUs starting up. The first
* element is the BSP path, and the second is the non-BSP path.
diff --git a/src/arch/arm64/include/bootblock_common.h b/src/arch/arm64/include/bootblock_common.h
index 2fa705f..ed6569e 100644
--- a/src/arch/arm64/include/bootblock_common.h
+++ b/src/arch/arm64/include/bootblock_common.h
@@ -5,7 +5,11 @@
#ifdef CONFIG_BOOTBLOCK_MAINBOARD_INIT
#include CONFIG_BOOTBLOCK_MAINBOARD_INIT
#else
-static void bootblock_mainboard_init(void)
+static inline void bootblock_mainboard_init(void)
{
+ /*
+ * Do nothing.
+ * Start adding activities as and when required
+ */
}
#endif
the following patch was just integrated into master:
commit bf8589e95760226dd591ea57d656e1b4aa94bea5
Author: Patrick Georgi <patrick(a)georgi-clan.de>
Date: Fri Aug 28 20:27:28 2015 +0200
gitconfig/rebase.sh: adapt default branch name
Whatever it is, it likely won't be cros/chromeos-2013.04 anymore.
Change-Id: I020b65a7406e3bef7d1c8fad8c530354b1f78819
Signed-off-by: Patrick Georgi <patrick(a)georgi-clan.de>
Reviewed-on: http://review.coreboot.org/11438
Reviewed-by: Alexandru Gagniuc <mr.nuke.me(a)gmail.com>
Tested-by: build bot (Jenkins)
See http://review.coreboot.org/11438 for details.
-gerrit
Patrick Georgi (pgeorgi(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11438
-gerrit
commit 77b23db157c19996f3ae5615b0d616ba6c40f105
Author: Patrick Georgi <patrick(a)georgi-clan.de>
Date: Fri Aug 28 20:27:28 2015 +0200
gitconfig/rebase.sh: adapt default branch name
Whatever it is, it likely won't be cros/chromeos-2013.04 anymore.
Change-Id: I020b65a7406e3bef7d1c8fad8c530354b1f78819
Signed-off-by: Patrick Georgi <patrick(a)georgi-clan.de>
---
util/gitconfig/rebase.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/util/gitconfig/rebase.sh b/util/gitconfig/rebase.sh
index 4bc32a4..26cec55 100755
--- a/util/gitconfig/rebase.sh
+++ b/util/gitconfig/rebase.sh
@@ -13,7 +13,7 @@
#
# Adapt to your remote branch:
-BRANCH="cros/chromeos-2013.04"
+BRANCH="cros/chromeos-2015.07"
# When pulling in patches from another tree from a gerrit repository,
# do the following at the end of a larger cherry-pick series:
Patrick Georgi (pgeorgi(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11435
-gerrit
commit c1510082d836debdb6fb9bf37b2bce73ff3839af
Author: Martin Roth <martinroth(a)chromium.org>
Date: Tue Aug 25 11:26:33 2015 -0600
glados: Remove unnecessary check for mainboard_ec_init()
mainboard_ec_init() wasn't getting run due to an invalid
Kconfig symbol. This check isn't required as the Kconfig
option for the EC is forced to be enabled, and the function
should always be run.
BRANCH=none
BUG=none
TEST=Rebuilt glados mainboard.
Change-Id: I2c4a33d80533a19b02b83b3aaa6a3386e927f1c7
Signed-off-by: Patrick Georgi <patrick(a)georgi-clan.de>
Original-Commit-Id: edd8c7a0666208b35ee81f57ec2626390958dfb7
Original-Change-Id: I2a92fd28347455c09ecf2119788ca9b6a97a11de
Original-Signed-off-by: Martin Roth <martinroth(a)chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/295143
Original-Reviewed-by: Duncan Laurie <dlaurie(a)chromium.org>
Original-Reviewed-by: Aaron Durbin <adurbin(a)chromium.org>
---
src/mainboard/google/glados/mainboard.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/mainboard/google/glados/mainboard.c b/src/mainboard/google/glados/mainboard.c
index 5e48f17..ac4a2ad 100644
--- a/src/mainboard/google/glados/mainboard.c
+++ b/src/mainboard/google/glados/mainboard.c
@@ -25,8 +25,7 @@
static void mainboard_init(device_t dev)
{
- if (IS_ENABLED(CONFIG_GOOGLE_CHROME_EC))
- mainboard_ec_init();
+ mainboard_ec_init();
}
/*