blob: bf92f45f2d3b313996e0998d5a03bbd4f31b2b45 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0+
Simon Glassdc926ed2016-11-25 20:16:02 -07002/*
3 * Copyright (C) 2016 Google, Inc
4 * Written by Simon Glass <sjg@chromium.org>
Simon Glassdc926ed2016-11-25 20:16:02 -07005 */
6
7#include <config.h>
8
Simon Glassdc926ed2016-11-25 20:16:02 -07009/ {
10 binman {
Simon Glassff23e682019-05-02 10:52:20 -060011 multiple-images;
12 rom: rom {
13 };
14 };
15};
Simon Glassff23e682019-05-02 10:52:20 -060016
17#ifdef CONFIG_ROM_SIZE
18&rom {
Simon Glass771f02f2019-05-02 10:52:21 -060019 filename = "u-boot.rom";
20 end-at-4gb;
21 sort-by-offset;
22 pad-byte = <0xff>;
23 size = <CONFIG_ROM_SIZE>;
Simon Glassdc926ed2016-11-25 20:16:02 -070024#ifdef CONFIG_HAVE_INTEL_ME
Simon Glass771f02f2019-05-02 10:52:21 -060025 intel-descriptor {
26 filename = CONFIG_FLASH_DESCRIPTOR_FILE;
27 };
28 intel-me {
29 filename = CONFIG_INTEL_ME_FILE;
30 };
Simon Glassdc926ed2016-11-25 20:16:02 -070031#endif
Simon Glassf03c70d2019-05-02 10:52:19 -060032#ifdef CONFIG_TPL
Simon Glass3c4b98f2019-12-06 21:42:26 -070033#ifdef CONFIG_HAVE_MICROCODE
Simon Glass771f02f2019-05-02 10:52:21 -060034 u-boot-tpl-with-ucode-ptr {
35 offset = <CONFIG_TPL_TEXT_BASE>;
36 };
37 u-boot-tpl-dtb {
38 };
Simon Glass3c4b98f2019-12-06 21:42:26 -070039#endif
Simon Glass79c87322019-12-06 21:42:33 -070040 spl {
41 type = "section";
Simon Glass4d7a9232019-12-06 21:42:30 -070042 offset = <CONFIG_X86_OFFSET_SPL>;
Simon Glass79c87322019-12-06 21:42:33 -070043 u-boot-spl {
44 };
45 u-boot-spl-dtb {
46 };
Simon Glass771f02f2019-05-02 10:52:21 -060047 };
48 u-boot {
Simon Glass79c87322019-12-06 21:42:33 -070049 type = "section";
Simon Glass20af0ff2019-12-06 21:42:29 -070050 offset = <CONFIG_X86_OFFSET_U_BOOT>;
Simon Glass79c87322019-12-06 21:42:33 -070051 u-boot-nodtb {
52 };
53 u-boot-dtb {
54 };
Simon Glass771f02f2019-05-02 10:52:21 -060055 };
Simon Glassf03c70d2019-05-02 10:52:19 -060056#elif defined(CONFIG_SPL)
Simon Glass771f02f2019-05-02 10:52:21 -060057 u-boot-spl-with-ucode-ptr {
Simon Glass4d7a9232019-12-06 21:42:30 -070058 offset = <CONFIG_X86_OFFSET_SPL>;
Simon Glass771f02f2019-05-02 10:52:21 -060059 };
60 u-boot-dtb-with-ucode2 {
61 type = "u-boot-dtb-with-ucode";
62 };
63 u-boot {
Simon Glass20af0ff2019-12-06 21:42:29 -070064 offset = <CONFIG_X86_OFFSET_U_BOOT>;
Simon Glass771f02f2019-05-02 10:52:21 -060065 };
Simon Glass46be3c62017-01-16 07:04:23 -070066#else
Simon Glass014c66f2019-12-06 21:42:32 -070067# ifdef CONFIG_SPL
68 u-boot {
69 offset = <CONFIG_SYS_TEXT_BASE>;
70 };
Simon Glass0bd972a2020-07-19 13:56:17 -060071# elif defined(CONFIG_HAVE_MICROCODE)
Simon Glass014c66f2019-12-06 21:42:32 -070072 /* If there is no SPL then we need to put microcode in U-Boot */
Simon Glass771f02f2019-05-02 10:52:21 -060073 u-boot-with-ucode-ptr {
Simon Glass20af0ff2019-12-06 21:42:29 -070074 offset = <CONFIG_X86_OFFSET_U_BOOT>;
Simon Glass771f02f2019-05-02 10:52:21 -060075 };
Simon Glass0bd972a2020-07-19 13:56:17 -060076# else
77 u-boot-nodtb {
78 offset = <CONFIG_X86_OFFSET_U_BOOT>;
79 };
Simon Glass014c66f2019-12-06 21:42:32 -070080# endif
Simon Glass46be3c62017-01-16 07:04:23 -070081#endif
Simon Glass3c4b98f2019-12-06 21:42:26 -070082#ifdef CONFIG_HAVE_MICROCODE
Simon Glass771f02f2019-05-02 10:52:21 -060083 u-boot-dtb-with-ucode {
84 };
85 u-boot-ucode {
86 align = <16>;
87 };
Simon Glass3c4b98f2019-12-06 21:42:26 -070088#else
89 u-boot-dtb {
90 };
91#endif
Simon Glass15425952020-07-19 13:56:15 -060092 fdtmap {
93 };
Simon Glass7dbabbb2019-12-06 21:42:24 -070094#ifdef CONFIG_HAVE_X86_FIT
95 intel-fit {
96 };
97 intel-fit-ptr {
98 };
99#endif
Simon Glassdc926ed2016-11-25 20:16:02 -0700100#ifdef CONFIG_HAVE_MRC
Simon Glass771f02f2019-05-02 10:52:21 -0600101 intel-mrc {
102 offset = <CONFIG_X86_MRC_ADDR>;
103 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700104#endif
Simon Glassf8dc7f42019-12-06 21:42:28 -0700105#ifdef CONFIG_FSP_VERSION1
Simon Glass771f02f2019-05-02 10:52:21 -0600106 intel-fsp {
107 filename = CONFIG_FSP_FILE;
108 offset = <CONFIG_FSP_ADDR>;
109 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700110#endif
Simon Glassf8dc7f42019-12-06 21:42:28 -0700111#ifdef CONFIG_FSP_VERSION2
112 intel-descriptor {
113 filename = CONFIG_FLASH_DESCRIPTOR_FILE;
114 };
115 intel-ifwi {
116 filename = CONFIG_IFWI_INPUT_FILE;
117 convert-fit;
118
119 section {
120 size = <0x8000>;
121 ifwi-replace;
122 ifwi-subpart = "IBBP";
123 ifwi-entry = "IBBL";
124 u-boot-tpl {
125 };
126 x86-start16-tpl {
127 offset = <0x7800>;
128 };
129 x86-reset16-tpl {
130 offset = <0x7ff0>;
131 };
132 };
133 };
134 intel-fsp-m {
135 filename = CONFIG_FSP_FILE_M;
136 };
137 intel-fsp-s {
138 filename = CONFIG_FSP_FILE_S;
139 };
140#endif
Simon Glass28e750f2020-11-04 09:57:17 -0700141 private_files: private-files {
142 type = "files";
143 pattern = "*.dat";
144 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700145#ifdef CONFIG_HAVE_CMC
Simon Glass771f02f2019-05-02 10:52:21 -0600146 intel-cmc {
147 filename = CONFIG_CMC_FILE;
148 offset = <CONFIG_CMC_ADDR>;
149 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700150#endif
151#ifdef CONFIG_HAVE_VGA_BIOS
Simon Glass771f02f2019-05-02 10:52:21 -0600152 intel-vga {
153 filename = CONFIG_VGA_BIOS_FILE;
154 offset = <CONFIG_VGA_BIOS_ADDR>;
155 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700156#endif
Bin Menga3dd11a2017-08-15 22:41:55 -0700157#ifdef CONFIG_HAVE_VBT
Simon Glass771f02f2019-05-02 10:52:21 -0600158 intel-vbt {
159 filename = CONFIG_VBT_FILE;
160 offset = <CONFIG_VBT_ADDR>;
161 };
Bin Menga3dd11a2017-08-15 22:41:55 -0700162#endif
Simon Glassdc926ed2016-11-25 20:16:02 -0700163#ifdef CONFIG_HAVE_REFCODE
Simon Glass771f02f2019-05-02 10:52:21 -0600164 intel-refcode {
165 offset = <CONFIG_X86_REFCODE_ADDR>;
166 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700167#endif
Simon Glassf03c70d2019-05-02 10:52:19 -0600168#ifdef CONFIG_TPL
Simon Glass771f02f2019-05-02 10:52:21 -0600169 x86-start16-tpl {
170 offset = <CONFIG_SYS_X86_START16>;
171 };
Simon Glassabab18c2019-08-24 07:22:49 -0600172 x86-reset16-tpl {
173 offset = <CONFIG_RESET_VEC_LOC>;
174 };
Simon Glassf03c70d2019-05-02 10:52:19 -0600175#elif defined(CONFIG_SPL)
Simon Glass771f02f2019-05-02 10:52:21 -0600176 x86-start16-spl {
177 offset = <CONFIG_SYS_X86_START16>;
178 };
Simon Glassabab18c2019-08-24 07:22:49 -0600179 x86-reset16-spl {
180 offset = <CONFIG_RESET_VEC_LOC>;
181 };
Simon Glass46be3c62017-01-16 07:04:23 -0700182#else
Simon Glass771f02f2019-05-02 10:52:21 -0600183 x86-start16 {
184 offset = <CONFIG_SYS_X86_START16>;
185 };
Simon Glassabab18c2019-08-24 07:22:49 -0600186 x86-reset16 {
187 offset = <CONFIG_RESET_VEC_LOC>;
188 };
Simon Glass46be3c62017-01-16 07:04:23 -0700189#endif
Simon Glass8d543882019-12-06 21:42:31 -0700190 image-header {
191 location = "end";
192 };
Simon Glassdc926ed2016-11-25 20:16:02 -0700193};
194#endif