spl: Rework Kconfig to be more menu driven
[platform/kernel/u-boot.git] / common / spl / Kconfig.nxp
1 menu "PowerPC and LayerScape SPL Boot options"
2         depends on (PPC && SUPPORT_SPL && !SPL_FRAMEWORK) || \
3                    ((ARCH_LS1021A || ARCH_LS1043A || ARCH_LS1046A) && SUPPORT_SPL)
4
5 config SPL_NAND_BOOT
6         bool "Load SPL from NAND flash"
7         depends on PPC && (SUPPORT_SPL && !SPL_FRAMEWORK)
8
9 config SPL_MMC_BOOT
10         bool "Load SPL from SD Card / eMMC"
11         depends on PPC && (SUPPORT_SPL && !SPL_FRAMEWORK)
12
13 config SPL_SPI_BOOT
14         bool "Load SPL from SPI flash"
15         depends on PPC && (SUPPORT_SPL && !SPL_FRAMEWORK)
16
17 config SPL_FSL_PBL
18         bool "Create SPL in Freescale PBI format"
19         depends on (PPC || ARCH_LS1021A || ARCH_LS1043A || ARCH_LS1046A) && \
20                     SUPPORT_SPL
21         help
22           Create boot binary having SPL binary in PBI format concatenated with
23           u-boot binary.
24
25 config SPL_SYS_CCSR_DO_NOT_RELOCATE
26         bool "Ensures that CCSR is not relocated"
27         depends on PPC
28         help
29           If this is defined, then CONFIG_SYS_CCSRBAR_PHYS will be forced to a
30           value that ensures that CCSR is not relocated.
31
32 config TPL_SYS_CCSR_DO_NOT_RELOCATE
33         def_bool y
34         depends on SPL_SYS_CCSR_DO_NOT_RELOCATE
35
36 menu "PowerPC SPL / TPL specific options"
37         depends on PPC && (SPL && !SPL_FRAMEWORK)
38
39 config SPL_INIT_MINIMAL
40         bool "Arch init code will be built for a very small image"
41
42 config SPL_FLUSH_IMAGE
43         bool "Clean dcache and invalidate icache after loading the image"
44
45 config SPL_SKIP_RELOCATE
46         bool "Skip relocating SPL"
47
48 config SPL_GD_ADDR
49         hex "Address to use for global data (gd) in SPL"
50         depends on !SPL_INIT_MINIMAL
51
52 config SPL_RELOC_TEXT_BASE
53         hex "Address to relocate SPL to"
54         default SPL_TEXT_BASE
55         help
56           If unspecified, this is equal to CONFIG_SPL_TEXT_BASE (i.e. no
57           relocation is done).
58
59 config SPL_RELOC_STACK
60         hex "Address of the start of the stack SPL will use after relocation."
61         help
62           If unspecified, this is equal to CONFIG_SYS_SPL_MALLOC_START.  Starting
63           address of the malloc pool used in SPL.  When this option is set the full
64           malloc is used in SPL and it is set up by spl_init() and before that, the
65           simple malloc() can be used if CONFIG_SYS_MALLOC_F is defined.
66
67 config SPL_RELOC_MALLOC
68         bool "SPL has malloc pool after relocation"
69
70 config SPL_RELOC_MALLOC_ADDR
71         hex "Address of malloc pool in SPL"
72         depends on SPL_RELOC_MALLOC
73
74 config SPL_RELOC_MALLOC_SIZE
75         hex "Size of malloc pool in SPL"
76         depends on SPL_RELOC_MALLOC
77
78 config TPL_GD_ADDR
79         hex "Address to use for global data (gd) in TPL"
80         depends on TPL
81
82 config TPL_RELOC_TEXT_BASE
83         hex "Address to relocate TPL to"
84         depends on TPL
85         default TPL_TEXT_BASE
86         help
87           If unspecified, this is equal to CONFIG_TPL_TEXT_BASE (i.e. no
88           relocation is done).
89
90 config TPL_RELOC_STACK
91         hex "Address of the start of the stack TPL will use after relocation."
92         depends on TPL
93         help
94           If unspecified, this is equal to CONFIG_SYS_TPL_MALLOC_START.  Starting
95           address of the malloc pool used in TPL.  When this option is set the full
96           malloc is used in TPL and it is set up by spl_init() and before that, the
97           simple malloc() can be used if CONFIG_SYS_MALLOC_F is defined.
98
99 config TPL_RELOC_MALLOC
100         bool "TPL has malloc pool after relocation"
101         depends on TPL
102
103 config TPL_RELOC_MALLOC_ADDR
104         hex "Address of malloc pool in TPL"
105         depends on TPL_RELOC_MALLOC
106
107 config TPL_RELOC_MALLOC_SIZE
108         hex "Size of malloc pool in TPL"
109         depends on TPL_RELOC_MALLOC
110
111 config TPL_PAD_TO
112         hex "Offset to which the TPL should be padded before appending the TPL payload"
113         depends on TPL && !TPL_FRAMEWORK
114         default TPL_MAX_SIZE
115         help
116           Image offset to which the TPL should be padded before appending the
117           TPL payload. By default, this is defined as CONFIG_TPL_MAX_SIZE, or 0 if
118           CONFIG_TPL_MAX_SIZE is undefined.  CONFIG_TPL_PAD_TO must be either
119           0, meaning to append the TPL payload without any padding, or >=
120           CONFIG_TPL_MAX_SIZE.
121 endmenu
122
123 endmenu
124