diff mbox series

[v6,051/102] x86: Add an option to include a FIT

Message ID 20191206213936.v6.51.I8927290f40075722d16217b170ef701463930bfd@changeid
State Accepted
Commit 2e2a0035d4ab520615fd13dc7c89a60a44eb6bc0
Delegated to: Bin Meng
Headers show
Series x86: Add initial support for apollolake | expand

Commit Message

Simon Glass Dec. 7, 2019, 4:42 a.m. UTC
Many Intel SoCs require a FIT in order to boot properly. Add an option to
include this and enable it by default.

This term can be confused with FIT (Flat Image Tree) in U-Boot so the
CONFIG option has to include 'X86'.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
---

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3:
- Add help to CONFIG_FIT and don't make it 'default y'
- Rename X86_HAS_FIT to HAVE_X86_FIT
- Update commit message to explain why HAVE_FIT woudl be confusing

Changes in v2: None

 arch/x86/Kconfig         | 8 ++++++++
 arch/x86/dts/u-boot.dtsi | 6 ++++++
 2 files changed, 14 insertions(+)

Comments

Bin Meng Dec. 8, 2019, 3:30 a.m. UTC | #1
On Sat, Dec 7, 2019 at 12:49 PM Simon Glass <sjg@chromium.org> wrote:
>
> Many Intel SoCs require a FIT in order to boot properly. Add an option to
> include this and enable it by default.
>
> This term can be confused with FIT (Flat Image Tree) in U-Boot so the
> CONFIG option has to include 'X86'.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
> ---
>
> Changes in v6: None
> Changes in v5: None
> Changes in v4: None
> Changes in v3:
> - Add help to CONFIG_FIT and don't make it 'default y'
> - Rename X86_HAS_FIT to HAVE_X86_FIT
> - Update commit message to explain why HAVE_FIT woudl be confusing
>
> Changes in v2: None
>
>  arch/x86/Kconfig         | 8 ++++++++
>  arch/x86/dts/u-boot.dtsi | 6 ++++++
>  2 files changed, 14 insertions(+)
>

applied to u-boot-x86/next, thanks!
diff mbox series

Patch

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index e2e0f20f21..bcce1114ce 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -217,6 +217,14 @@  config SYS_X86_START16
 	depends on X86_RESET_VECTOR
 	default 0xfffff800
 
+config HAVE_X86_FIT
+	bool
+	help
+	  Enable inclusion of an Intel Firmware Interface Table (FIT) into the
+	  image. This table is supposed to point to microcode and the like. So
+	  far it is just a fixed table with the minimum set of headers, so that
+	  it is actually present.
+
 config X86_LOAD_FROM_32_BIT
 	bool "Boot from a 32-bit program"
 	help
diff --git a/arch/x86/dts/u-boot.dtsi b/arch/x86/dts/u-boot.dtsi
index 0e87b88e10..33441c7c80 100644
--- a/arch/x86/dts/u-boot.dtsi
+++ b/arch/x86/dts/u-boot.dtsi
@@ -82,6 +82,12 @@ 
 	u-boot-ucode {
 		align = <16>;
 	};
+#ifdef CONFIG_HAVE_X86_FIT
+	intel-fit {
+	};
+	intel-fit-ptr {
+	};
+#endif
 #ifdef CONFIG_HAVE_MRC
 	intel-mrc {
 		offset = <CONFIG_X86_MRC_ADDR>;