summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorPrabhakar Kushwaha <prabhakar.kushwaha@nxp.com>2017-08-29 10:38:47 (GMT)
committerPrabhakar Kushwaha <prabhakar.kushwaha@nxp.com>2017-08-29 10:38:47 (GMT)
commit2a489de86a909064e56f0bb6347ac3308306cf73 (patch)
treec78c0096da82672d55acfbe52d8755787dea46b9 /board
parent46526a05629ff2eda4c11d565296d5cffbe0b2ab (diff)
downloadu-boot-2a489de86a909064e56f0bb6347ac3308306cf73.tar.xz
armv8: ls1088a: SPL size reduction
Using changes in this patch we were able to reduce approx 8k size of u-boot-spl.bin image. Following is breif description of changes to reduce SPL size: 1. Changes in board/freescale/ls1088a/Makefile to remove compilation of eth.c and cpld.c in case of SPL build. 2. Changes in board/freescale/ls1088a/ls1088a.c to keep board_early_init_f funcations in case of SPL build. 3. Changes in ls1088a_common.h & ls1088ardb.h to remove driver specific macros due to which static data was being compiled in case of SPL build. 4. Enable CONFIG_SYS_DCACHE_OFF in case of SPL build as DCACHE is not being enabled in case of SPL image but was compiled in to add redundant code. Signed-off-by: Sumit Garg <sumit.garg@nxp.com
Diffstat (limited to 'board')
-rw-r--r--board/freescale/ls1088a/Makefile4
-rw-r--r--board/freescale/ls1088a/ls1088a.c14
2 files changed, 11 insertions, 7 deletions
diff --git a/board/freescale/ls1088a/Makefile b/board/freescale/ls1088a/Makefile
index bdcce9e..0e15031 100644
--- a/board/freescale/ls1088a/Makefile
+++ b/board/freescale/ls1088a/Makefile
@@ -5,6 +5,8 @@
#
obj-y += ls1088a.o
+obj-y += ddr.o
+ifndef CONFIG_SPL_BUILD
obj-$(CONFIG_TARGET_LS1088ARDB) += eth_ls1088ardb.o
obj-$(CONFIG_TARGET_LS1088AQDS) += eth_ls1088aqds.o
-obj-y += ddr.o
+endif
diff --git a/board/freescale/ls1088a/ls1088a.c b/board/freescale/ls1088a/ls1088a.c
index 96d9ae7..ccf4694 100644
--- a/board/freescale/ls1088a/ls1088a.c
+++ b/board/freescale/ls1088a/ls1088a.c
@@ -24,6 +24,13 @@
DECLARE_GLOBAL_DATA_PTR;
+int board_early_init_f(void)
+{
+ fsl_lsch3_early_init_f();
+ return 0;
+}
+
+#if !defined(CONFIG_SPL_BUILD)
unsigned long long get_qixis_addr(void)
{
unsigned long long addr;
@@ -321,12 +328,6 @@ int board_init(void)
return 0;
}
-int board_early_init_f(void)
-{
- fsl_lsch3_early_init_f();
- return 0;
-}
-
void detail_board_ddr_info(void)
{
puts("\nDDR ");
@@ -404,3 +405,4 @@ int ft_board_setup(void *blob, bd_t *bd)
return 0;
}
#endif
+#endif /* defined(CONFIG_SPL_BUILD) */