diff options
author | Gabe Black <gabeblack@google.com> | 2013-09-29 03:02:55 -0700 |
---|---|---|
committer | Isaac Christensen <isaac.christensen@se-eng.com> | 2014-08-22 22:23:11 +0200 |
commit | 8b685398a74065d832fe2a3dfcfb313f0f4f11c3 (patch) | |
tree | eb01a01843aad059fb4221563fac25fa78e7d109 /src/cpu | |
parent | bc349b81e97350b13d7d70c400e46d0bb8e4d1aa (diff) |
ARM: Overhaul the ARM Makefile.
The ARM Makefile was copied from x86 and then modified, and as a result it
was carrying a lot of baggage. On top of that, the extra complication made it
inflexible, and we need a lot of flexiblity in order to support the fact that
the Tegra124 starts on an ARMv4 coprocessor instead of one of the ARMv7 main
CPUs.
Change-Id: Ia6ddc27619bdb51e152ad0c628ad6f3037c103ce
Signed-off-by: Gabe Black <gabeblack@google.com>
Reviewed-on: https://chromium-review.googlesource.com/171017
Reviewed-by: Ronald Minnich <rminnich@chromium.org>
Commit-Queue: Gabe Black <gabeblack@chromium.org>
Tested-by: Gabe Black <gabeblack@chromium.org>
(cherry picked from commit 512d942788336c8d52470135b43ee4e6a1c95f6c)
Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com>
Reviewed-on: http://review.coreboot.org/6709
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: David Hendricks <dhendrix@chromium.org>
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/samsung/exynos5250/Kconfig | 9 | ||||
-rw-r--r-- | src/cpu/samsung/exynos5250/Makefile.inc | 1 | ||||
-rw-r--r-- | src/cpu/samsung/exynos5250/bootblock.c | 3 | ||||
-rw-r--r-- | src/cpu/samsung/exynos5420/Kconfig | 9 | ||||
-rw-r--r-- | src/cpu/samsung/exynos5420/Makefile.inc | 1 | ||||
-rw-r--r-- | src/cpu/samsung/exynos5420/bootblock.c | 2 |
6 files changed, 7 insertions, 18 deletions
diff --git a/src/cpu/samsung/exynos5250/Kconfig b/src/cpu/samsung/exynos5250/Kconfig index 116f568b2d..2b4ad3995b 100644 --- a/src/cpu/samsung/exynos5250/Kconfig +++ b/src/cpu/samsung/exynos5250/Kconfig @@ -2,6 +2,7 @@ config CPU_SAMSUNG_EXYNOS5250 select ARCH_BOOTBLOCK_ARMV7 select ARCH_ROMSTAGE_ARMV7 select ARCH_RAMSTAGE_ARMV7 + select CPU_HAS_BOOTBLOCK_INIT select HAVE_MONOTONIC_TIMER select HAVE_UART_SPECIAL select DYNAMIC_CBMEM @@ -10,14 +11,6 @@ config CPU_SAMSUNG_EXYNOS5250 if CPU_SAMSUNG_EXYNOS5250 -config BOOTBLOCK_CPU_INIT - string - default "cpu/samsung/exynos5250/bootblock.c" - help - CPU/SoC-specific bootblock code. This is useful if the - bootblock must load microcode or copy data from ROM before - searching for the bootblock. - # ROM image layout. # # 0x0000: vendor-provided BL1 (8k). diff --git a/src/cpu/samsung/exynos5250/Makefile.inc b/src/cpu/samsung/exynos5250/Makefile.inc index 762b940626..1660dbd5f2 100644 --- a/src/cpu/samsung/exynos5250/Makefile.inc +++ b/src/cpu/samsung/exynos5250/Makefile.inc @@ -1,4 +1,5 @@ bootblock-y += spi.c alternate_cbfs.c +bootblock-y += bootblock.c bootblock-y += pinmux.c mct.c power.c # Clock is required for UART bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += clock_init.c diff --git a/src/cpu/samsung/exynos5250/bootblock.c b/src/cpu/samsung/exynos5250/bootblock.c index d3d737e035..f524399e91 100644 --- a/src/cpu/samsung/exynos5250/bootblock.c +++ b/src/cpu/samsung/exynos5250/bootblock.c @@ -17,10 +17,11 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#include <bootblock_common.h> + #include "clk.h" #include "wakeup.h" -void bootblock_cpu_init(void); void bootblock_cpu_init(void) { /* kick off the multi-core timer. diff --git a/src/cpu/samsung/exynos5420/Kconfig b/src/cpu/samsung/exynos5420/Kconfig index 460b1771a7..a0d6c9882c 100644 --- a/src/cpu/samsung/exynos5420/Kconfig +++ b/src/cpu/samsung/exynos5420/Kconfig @@ -2,6 +2,7 @@ config CPU_SAMSUNG_EXYNOS5420 select ARCH_BOOTBLOCK_ARMV7 select ARCH_ROMSTAGE_ARMV7 select ARCH_RAMSTAGE_ARMV7 + select CPU_HAS_BOOTBLOCK_INIT select HAVE_MONOTONIC_TIMER select HAVE_UART_SPECIAL select RELOCATABLE_MODULES @@ -11,14 +12,6 @@ config CPU_SAMSUNG_EXYNOS5420 if CPU_SAMSUNG_EXYNOS5420 -config BOOTBLOCK_CPU_INIT - string - default "cpu/samsung/exynos5420/bootblock.c" - help - CPU/SoC-specific bootblock code. This is useful if the - bootblock must load microcode or copy data from ROM before - searching for the bootblock. - # ROM image layout. # # 0x0000: vendor-provided BL1 (8k). diff --git a/src/cpu/samsung/exynos5420/Makefile.inc b/src/cpu/samsung/exynos5420/Makefile.inc index cbf9882448..fd9d3797d6 100644 --- a/src/cpu/samsung/exynos5420/Makefile.inc +++ b/src/cpu/samsung/exynos5420/Makefile.inc @@ -1,4 +1,5 @@ bootblock-y += spi.c alternate_cbfs.c +bootblock-y += bootblock.c bootblock-y += pinmux.c mct.c power.c # Clock is required for UART bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += clock_init.c diff --git a/src/cpu/samsung/exynos5420/bootblock.c b/src/cpu/samsung/exynos5420/bootblock.c index 97e85f1fd6..5d2d2b73ca 100644 --- a/src/cpu/samsung/exynos5420/bootblock.c +++ b/src/cpu/samsung/exynos5420/bootblock.c @@ -17,6 +17,7 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#include <bootblock_common.h> #include <arch/cache.h> #include "clk.h" @@ -28,7 +29,6 @@ #define SRAM_SIZE 1 #define SRAM_END (SRAM_START + SRAM_SIZE) /* plus one... */ -void bootblock_cpu_init(void); void bootblock_cpu_init(void) { /* kick off the multi-core timer. |