blob: 14e3c13072c6abb1eb0263c5e3dff2fa7e30134b [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 Glassc5edefb2019-05-02 10:52:20 -06009#ifdef CONFIG_CHROMEOS
Simon Glassb215fbd2016-11-25 20:16:02 -070010/ {
11 binman {
Simon Glassc5edefb2019-05-02 10:52:20 -060012 multiple-images;
13 rom: rom {
14 };
15 };
16};
17#else
18/ {
19 rom: binman {
20 };
21};
22#endif
23
24#ifdef CONFIG_ROM_SIZE
25&rom {
Simon Glasse766d9f2019-05-02 10:52:21 -060026 filename = "u-boot.rom";
27 end-at-4gb;
28 sort-by-offset;
29 pad-byte = <0xff>;
30 size = <CONFIG_ROM_SIZE>;
Simon Glassb215fbd2016-11-25 20:16:02 -070031#ifdef CONFIG_HAVE_INTEL_ME
Simon Glasse766d9f2019-05-02 10:52:21 -060032 intel-descriptor {
33 filename = CONFIG_FLASH_DESCRIPTOR_FILE;
34 };
35 intel-me {
36 filename = CONFIG_INTEL_ME_FILE;
37 };
Simon Glassb215fbd2016-11-25 20:16:02 -070038#endif
Simon Glass93c76072019-05-02 10:52:19 -060039#ifdef CONFIG_TPL
Simon Glass86a8fb32019-12-06 21:42:26 -070040#ifdef CONFIG_HAVE_MICROCODE
Simon Glasse766d9f2019-05-02 10:52:21 -060041 u-boot-tpl-with-ucode-ptr {
42 offset = <CONFIG_TPL_TEXT_BASE>;
43 };
44 u-boot-tpl-dtb {
45 };
Simon Glass86a8fb32019-12-06 21:42:26 -070046#endif
Simon Glasse766d9f2019-05-02 10:52:21 -060047 u-boot-spl {
48 offset = <CONFIG_SPL_TEXT_BASE>;
49 };
50 u-boot-spl-dtb {
51 };
52 u-boot {
53 offset = <CONFIG_SYS_TEXT_BASE>;
54 };
Simon Glass93c76072019-05-02 10:52:19 -060055#elif defined(CONFIG_SPL)
Simon Glasse766d9f2019-05-02 10:52:21 -060056 u-boot-spl-with-ucode-ptr {
57 offset = <CONFIG_SPL_TEXT_BASE>;
58 };
59 u-boot-dtb-with-ucode2 {
60 type = "u-boot-dtb-with-ucode";
61 };
62 u-boot {
Simon Glass93c76072019-05-02 10:52:19 -060063 /*
64 * TODO(sjg@chromium.org):
65 * Normally we use CONFIG_SYS_TEXT_BASE as the flash offset. But
66 * for boards with textbase in SDRAM we cannot do this. Just use
67 * an assumed-valid value (1MB before the end of flash) here so
68 * that we can actually build an image for coreboot, etc.
69 * We need a better solution, perhaps a separate Kconfig.
70 */
71#if CONFIG_SYS_TEXT_BASE == 0x1110000
Simon Glasse766d9f2019-05-02 10:52:21 -060072 offset = <0xfff00000>;
Simon Glass93c76072019-05-02 10:52:19 -060073#else
Simon Glasse766d9f2019-05-02 10:52:21 -060074 offset = <CONFIG_SYS_TEXT_BASE>;
Simon Glass93c76072019-05-02 10:52:19 -060075#endif
Simon Glasse766d9f2019-05-02 10:52:21 -060076 };
Simon Glass164f0412017-01-16 07:04:23 -070077#else
Simon Glasse766d9f2019-05-02 10:52:21 -060078 u-boot-with-ucode-ptr {
79 offset = <CONFIG_SYS_TEXT_BASE>;
80 };
Simon Glass164f0412017-01-16 07:04:23 -070081#endif
Simon Glass86a8fb32019-12-06 21:42:26 -070082#ifdef CONFIG_HAVE_MICROCODE
Simon Glasse766d9f2019-05-02 10:52:21 -060083 u-boot-dtb-with-ucode {
84 };
85 u-boot-ucode {
86 align = <16>;
87 };
Simon Glass86a8fb32019-12-06 21:42:26 -070088#else
89 u-boot-dtb {
90 };
91#endif
Simon Glass2e2a0032019-12-06 21:42:24 -070092#ifdef CONFIG_HAVE_X86_FIT
93 intel-fit {
94 };
95 intel-fit-ptr {
96 };
97#endif
Simon Glassb215fbd2016-11-25 20:16:02 -070098#ifdef CONFIG_HAVE_MRC
Simon Glasse766d9f2019-05-02 10:52:21 -060099 intel-mrc {
100 offset = <CONFIG_X86_MRC_ADDR>;
101 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700102#endif
Simon Glassdda8e3e2019-12-06 21:42:28 -0700103#ifdef CONFIG_FSP_VERSION1
Simon Glasse766d9f2019-05-02 10:52:21 -0600104 intel-fsp {
105 filename = CONFIG_FSP_FILE;
106 offset = <CONFIG_FSP_ADDR>;
107 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700108#endif
Simon Glassdda8e3e2019-12-06 21:42:28 -0700109#ifdef CONFIG_FSP_VERSION2
110 intel-descriptor {
111 filename = CONFIG_FLASH_DESCRIPTOR_FILE;
112 };
113 intel-ifwi {
114 filename = CONFIG_IFWI_INPUT_FILE;
115 convert-fit;
116
117 section {
118 size = <0x8000>;
119 ifwi-replace;
120 ifwi-subpart = "IBBP";
121 ifwi-entry = "IBBL";
122 u-boot-tpl {
123 };
124 x86-start16-tpl {
125 offset = <0x7800>;
126 };
127 x86-reset16-tpl {
128 offset = <0x7ff0>;
129 };
130 };
131 };
132 intel-fsp-m {
133 filename = CONFIG_FSP_FILE_M;
134 };
135 intel-fsp-s {
136 filename = CONFIG_FSP_FILE_S;
137 };
138#endif
Simon Glassb215fbd2016-11-25 20:16:02 -0700139#ifdef CONFIG_HAVE_CMC
Simon Glasse766d9f2019-05-02 10:52:21 -0600140 intel-cmc {
141 filename = CONFIG_CMC_FILE;
142 offset = <CONFIG_CMC_ADDR>;
143 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700144#endif
145#ifdef CONFIG_HAVE_VGA_BIOS
Simon Glasse766d9f2019-05-02 10:52:21 -0600146 intel-vga {
147 filename = CONFIG_VGA_BIOS_FILE;
148 offset = <CONFIG_VGA_BIOS_ADDR>;
149 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700150#endif
Bin Meng6c223792017-08-15 22:41:55 -0700151#ifdef CONFIG_HAVE_VBT
Simon Glasse766d9f2019-05-02 10:52:21 -0600152 intel-vbt {
153 filename = CONFIG_VBT_FILE;
154 offset = <CONFIG_VBT_ADDR>;
155 };
Bin Meng6c223792017-08-15 22:41:55 -0700156#endif
Simon Glassb215fbd2016-11-25 20:16:02 -0700157#ifdef CONFIG_HAVE_REFCODE
Simon Glasse766d9f2019-05-02 10:52:21 -0600158 intel-refcode {
159 offset = <CONFIG_X86_REFCODE_ADDR>;
160 };
Simon Glassb215fbd2016-11-25 20:16:02 -0700161#endif
Simon Glass93c76072019-05-02 10:52:19 -0600162#ifdef CONFIG_TPL
Simon Glasse766d9f2019-05-02 10:52:21 -0600163 x86-start16-tpl {
164 offset = <CONFIG_SYS_X86_START16>;
165 };
Simon Glass5e239182019-08-24 07:22:49 -0600166 x86-reset16-tpl {
167 offset = <CONFIG_RESET_VEC_LOC>;
168 };
Simon Glass93c76072019-05-02 10:52:19 -0600169#elif defined(CONFIG_SPL)
Simon Glasse766d9f2019-05-02 10:52:21 -0600170 x86-start16-spl {
171 offset = <CONFIG_SYS_X86_START16>;
172 };
Simon Glass5e239182019-08-24 07:22:49 -0600173 x86-reset16-spl {
174 offset = <CONFIG_RESET_VEC_LOC>;
175 };
Simon Glass164f0412017-01-16 07:04:23 -0700176#else
Simon Glasse766d9f2019-05-02 10:52:21 -0600177 x86-start16 {
178 offset = <CONFIG_SYS_X86_START16>;
179 };
Simon Glass5e239182019-08-24 07:22:49 -0600180 x86-reset16 {
181 offset = <CONFIG_RESET_VEC_LOC>;
182 };
Simon Glass164f0412017-01-16 07:04:23 -0700183#endif
Simon Glassb215fbd2016-11-25 20:16:02 -0700184};
185#endif