blob: e0de331809105f09e233a6829b07358a4a52fa08 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0+
Simon Glassb215fbd2016-11-25 20:16:02 -07002/*
3 * Copyright (C) 2016 Google, Inc
4 * Written by Simon Glass <sjg@chromium.org>
Simon Glassb215fbd2016-11-25 20:16:02 -07005 */
6
7#include <config.h>
8
Simon Glassb215fbd2016-11-25 20:16:02 -07009/ {
10 binman {
Simon Glassc5edefb2019-05-02 10:52:20 -060011 multiple-images;
12 rom: rom {
13 };
14 };
15};
Simon Glassc5edefb2019-05-02 10:52:20 -060016
17#ifdef CONFIG_ROM_SIZE
18&rom {
Simon Glasse766d9f2019-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 Glassb215fbd2016-11-25 20:16:02 -070024#ifdef CONFIG_HAVE_INTEL_ME
Simon Glasse766d9f2019-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 Glassb215fbd2016-11-25 20:16:02 -070031#endif
Simon Glass93c76072019-05-02 10:52:19 -060032#ifdef CONFIG_TPL
Simon Glass86a8fb32019-12-06 21:42:26 -070033#ifdef CONFIG_HAVE_MICROCODE
Simon Glasse766d9f2019-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 Glass86a8fb32019-12-06 21:42:26 -070039#endif
Simon Glass00959d82022-02-08 11:49:47 -070040 u-boot-spl {
Simon Glasscb88ec72021-03-18 20:25:09 +130041 type = "u-boot-spl";
Simon Glass28d7d762019-12-06 21:42:30 -070042 offset = <CONFIG_X86_OFFSET_SPL>;
Simon Glasse766d9f2019-05-02 10:52:21 -060043 };
44 u-boot {
Simon Glassb3112952019-12-06 21:42:29 -070045 offset = <CONFIG_X86_OFFSET_U_BOOT>;
Simon Glasse766d9f2019-05-02 10:52:21 -060046 };
Simon Glass93c76072019-05-02 10:52:19 -060047#elif defined(CONFIG_SPL)
Simon Glasse766d9f2019-05-02 10:52:21 -060048 u-boot-spl-with-ucode-ptr {
Simon Glass28d7d762019-12-06 21:42:30 -070049 offset = <CONFIG_X86_OFFSET_SPL>;
Simon Glasse766d9f2019-05-02 10:52:21 -060050 };
51 u-boot-dtb-with-ucode2 {
52 type = "u-boot-dtb-with-ucode";
53 };
54 u-boot {
Simon Glassb3112952019-12-06 21:42:29 -070055 offset = <CONFIG_X86_OFFSET_U_BOOT>;
Simon Glasse766d9f2019-05-02 10:52:21 -060056 };
Simon Glass164f0412017-01-16 07:04:23 -070057#else
Simon Glasscad7b6b2021-03-18 20:25:10 +130058# ifdef CONFIG_HAVE_MICROCODE
Simon Glass4f1f5072019-12-06 21:42:32 -070059 /* If there is no SPL then we need to put microcode in U-Boot */
Simon Glasse766d9f2019-05-02 10:52:21 -060060 u-boot-with-ucode-ptr {
Simon Glassb3112952019-12-06 21:42:29 -070061 offset = <CONFIG_X86_OFFSET_U_BOOT>;
Simon Glasse766d9f2019-05-02 10:52:21 -060062 };
Simon Glass9589c442020-07-19 13:56:17 -060063# else
64 u-boot-nodtb {
65 offset = <CONFIG_X86_OFFSET_U_BOOT>;
66 };
Simon Glass4f1f5072019-12-06 21:42:32 -070067# endif
Simon Glass164f0412017-01-16 07:04:23 -070068#endif
Simon Glass86a8fb32019-12-06 21:42:26 -070069#ifdef CONFIG_HAVE_MICROCODE
Simon Glasse766d9f2019-05-02 10:52:21 -060070 u-boot-dtb-with-ucode {
71 };
72 u-boot-ucode {
73 align = <16>;
74 };
Simon Glass86a8fb32019-12-06 21:42:26 -070075#else
76 u-boot-dtb {
77 };
78#endif
Simon Glassa78466a2020-07-19 13:56:15 -060079 fdtmap {
80 };
Simon Glass2e2a0032019-12-06 21:42:24 -070081#ifdef CONFIG_HAVE_X86_FIT
82 intel-fit {
83 };
84 intel-fit-ptr {
85 };
86#endif
Simon Glassb215fbd2016-11-25 20:16:02 -070087#ifdef CONFIG_HAVE_MRC
Simon Glasse766d9f2019-05-02 10:52:21 -060088 intel-mrc {
Tom Rinifa2fd532022-12-04 10:14:07 -050089 offset = <CFG_X86_MRC_ADDR>;
Simon Glasse766d9f2019-05-02 10:52:21 -060090 };
Simon Glassb215fbd2016-11-25 20:16:02 -070091#endif
Simon Glassdda8e3e2019-12-06 21:42:28 -070092#ifdef CONFIG_FSP_VERSION1
Simon Glasse766d9f2019-05-02 10:52:21 -060093 intel-fsp {
94 filename = CONFIG_FSP_FILE;
95 offset = <CONFIG_FSP_ADDR>;
96 };
Simon Glassb215fbd2016-11-25 20:16:02 -070097#endif
Simon Glassdda8e3e2019-12-06 21:42:28 -070098#ifdef CONFIG_FSP_VERSION2
99 intel-descriptor {
100 filename = CONFIG_FLASH_DESCRIPTOR_FILE;
101 };
102 intel-ifwi {
103 filename = CONFIG_IFWI_INPUT_FILE;
104 convert-fit;
105
106 section {
107 size = <0x8000>;
108 ifwi-replace;
109 ifwi-subpart = "IBBP";
110 ifwi-entry = "IBBL";
111 u-boot-tpl {
112 };
113 x86-start16-tpl {
114 offset = <0x7800>;
115 };
116 x86-reset16-tpl {
117 offset = <0x7ff0>;
118 };
119 };
120 };
121 intel-fsp-m {
122 filename = CONFIG_FSP_FILE_M;
123 };
124 intel-fsp-s {
125 filename = CONFIG_FSP_FILE_S;
126 };
127#endif
Simon Glass653554b2020-11-04 09:57:17 -0700128 private_files: private-files {
129 type = "files";
130 pattern = "*.dat";
131 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700132#ifdef CONFIG_HAVE_CMC
Simon Glasse766d9f2019-05-02 10:52:21 -0600133 intel-cmc {
134 filename = CONFIG_CMC_FILE;
135 offset = <CONFIG_CMC_ADDR>;
136 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700137#endif
138#ifdef CONFIG_HAVE_VGA_BIOS
Simon Glasse766d9f2019-05-02 10:52:21 -0600139 intel-vga {
140 filename = CONFIG_VGA_BIOS_FILE;
141 offset = <CONFIG_VGA_BIOS_ADDR>;
142 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700143#endif
Bin Meng6c223792017-08-15 22:41:55 -0700144#ifdef CONFIG_HAVE_VBT
Simon Glasse766d9f2019-05-02 10:52:21 -0600145 intel-vbt {
146 filename = CONFIG_VBT_FILE;
147 offset = <CONFIG_VBT_ADDR>;
148 };
Bin Meng6c223792017-08-15 22:41:55 -0700149#endif
Simon Glassb215fbd2016-11-25 20:16:02 -0700150#ifdef CONFIG_HAVE_REFCODE
Simon Glasse766d9f2019-05-02 10:52:21 -0600151 intel-refcode {
Tom Rinid4143372022-12-04 10:14:08 -0500152 offset = <CFG_X86_REFCODE_ADDR>;
Simon Glasse766d9f2019-05-02 10:52:21 -0600153 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700154#endif
Simon Glass93c76072019-05-02 10:52:19 -0600155#ifdef CONFIG_TPL
Simon Glasse766d9f2019-05-02 10:52:21 -0600156 x86-start16-tpl {
157 offset = <CONFIG_SYS_X86_START16>;
158 };
Simon Glass5e239182019-08-24 07:22:49 -0600159 x86-reset16-tpl {
160 offset = <CONFIG_RESET_VEC_LOC>;
161 };
Simon Glass93c76072019-05-02 10:52:19 -0600162#elif defined(CONFIG_SPL)
Simon Glasse766d9f2019-05-02 10:52:21 -0600163 x86-start16-spl {
164 offset = <CONFIG_SYS_X86_START16>;
165 };
Simon Glass5e239182019-08-24 07:22:49 -0600166 x86-reset16-spl {
167 offset = <CONFIG_RESET_VEC_LOC>;
168 };
Simon Glass164f0412017-01-16 07:04:23 -0700169#else
Simon Glasse766d9f2019-05-02 10:52:21 -0600170 x86-start16 {
171 offset = <CONFIG_SYS_X86_START16>;
172 };
Simon Glass5e239182019-08-24 07:22:49 -0600173 x86-reset16 {
174 offset = <CONFIG_RESET_VEC_LOC>;
175 };
Simon Glass164f0412017-01-16 07:04:23 -0700176#endif
Simon Glass624c70b2019-12-06 21:42:31 -0700177 image-header {
178 location = "end";
179 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700180};
181#endif