1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (c) 2019, Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
4  *
5  * This tool helps to return the size available for SPL image during build
6  */
7 
8 #include <generated/autoconf.h>
9 #include <generated/generic-asm-offsets.h>
10 
main(int argc,char * argv[])11 int main(int argc, char *argv[])
12 {
13 	int spl_size_limit = 0;
14 
15 #ifdef CONFIG_SPL_SIZE_LIMIT
16 	spl_size_limit = CONFIG_SPL_SIZE_LIMIT;
17 #if defined(CONFIG_IMX_HAB) && defined(CONFIG_CSF_SIZE)
18 	spl_size_limit -= CONFIG_CSF_SIZE;
19 #endif
20 #ifdef CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD
21 	spl_size_limit -= GENERATED_GBL_DATA_SIZE;
22 #endif
23 #ifdef CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC
24 	spl_size_limit -= CONFIG_SPL_SYS_MALLOC_F_LEN;
25 #endif
26 #ifdef CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK
27 	spl_size_limit -= CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK;
28 #endif
29 #endif
30 
31 	printf("%d", spl_size_limit);
32 	return 0;
33 }
34