Merge https://gitlab.denx.de/u-boot/custodians/u-boot-x86
- Fix parsing of "mtrr list" command
- Introduce USE_EARLY_BOARD_INIT option and remove dead codes for most
x86 boards
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index a34b108..76276c6 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -203,6 +203,9 @@
help
This is enabled when 32-bit init is in SPL
+config USE_EARLY_BOARD_INIT
+ bool
+
config RESET_SEG_START
hex
depends on X86_RESET_VECTOR
diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S
index 4ad515c..3b6ed37 100644
--- a/arch/x86/cpu/start.S
+++ b/arch/x86/cpu/start.S
@@ -88,6 +88,7 @@
/* Clear the interrupt vectors */
lidt blank_idt_ptr
+#ifdef CONFIG_USE_EARLY_BOARD_INIT
/*
* Critical early platform init - generally not used, we prefer init
* to happen later when we have a console, in case something goes
@@ -96,6 +97,8 @@
jmp early_board_init
.globl early_board_init_ret
early_board_init_ret:
+#endif
+
post_code(POST_START)
/* Initialise Cache-As-RAM */
diff --git a/arch/x86/include/asm/acpi_nhlt.h b/arch/x86/include/asm/acpi_nhlt.h
index 4720321..2c44196 100644
--- a/arch/x86/include/asm/acpi_nhlt.h
+++ b/arch/x86/include/asm/acpi_nhlt.h
@@ -139,14 +139,6 @@
/*
* Serialize NHLT object to ACPI table. Take in the beginning address of where
- * the table will reside and return the address of the next ACPI table. On
- * error 0 will be returned. The NHLT object is no longer valid after this
- * function is called.
- */
-uintptr_t nhlt_serialise(struct nhlt *nhlt, uintptr_t acpi_addr);
-
-/*
- * Serialize NHLT object to ACPI table. Take in the beginning address of where
* the table will reside oem_id and oem_table_id and return the address of the
* next ACPI table. On error 0 will be returned. The NHLT object is no longer
* valid after this function is called.
diff --git a/board/advantech/som-db5800-som-6867/Makefile b/board/advantech/som-db5800-som-6867/Makefile
index 0524766..7975547 100644
--- a/board/advantech/som-db5800-som-6867/Makefile
+++ b/board/advantech/som-db5800-som-6867/Makefile
@@ -2,5 +2,5 @@
#
# Copyright (C) 2015, Google, Inc
-obj-y += som-db5800-som-6867.o start.o
+obj-y += som-db5800-som-6867.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/advantech/som-db5800-som-6867/start.S b/board/advantech/som-db5800-som-6867/start.S
deleted file mode 100644
index 65d1f7e..0000000
--- a/board/advantech/som-db5800-som-6867/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Google, Inc
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/congatec/conga-qeval20-qa3-e3845/Makefile b/board/congatec/conga-qeval20-qa3-e3845/Makefile
index 2f04828..451a4fc 100644
--- a/board/congatec/conga-qeval20-qa3-e3845/Makefile
+++ b/board/congatec/conga-qeval20-qa3-e3845/Makefile
@@ -2,5 +2,5 @@
#
# Copyright (C) 2015, Google, Inc
-obj-y += conga-qeval20-qa3.o start.o
+obj-y += conga-qeval20-qa3.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/congatec/conga-qeval20-qa3-e3845/start.S b/board/congatec/conga-qeval20-qa3-e3845/start.S
deleted file mode 100644
index 65d1f7e..0000000
--- a/board/congatec/conga-qeval20-qa3-e3845/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Google, Inc
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/coreboot/coreboot/Makefile b/board/coreboot/coreboot/Makefile
index 8db7cc6..d292b70 100644
--- a/board/coreboot/coreboot/Makefile
+++ b/board/coreboot/coreboot/Makefile
@@ -10,4 +10,4 @@
# (C) Copyright 2002
# Daniel Engström, Omicron Ceti AB, daniel@omicron.se.
-obj-y += start.o coreboot.o
+obj-y += coreboot.o
diff --git a/board/coreboot/coreboot/start.S b/board/coreboot/coreboot/start.S
deleted file mode 100644
index aa702622..0000000
--- a/board/coreboot/coreboot/start.S
+++ /dev/null
@@ -1,12 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (c) 2011 The Chromium OS Authors.
- * (C) Copyright 2008
- * Graeme Russ, graeme.russ@gmail.com.
- */
-
-/* board early intialization */
-.globl early_board_init
-early_board_init:
- /* No 32-bit board specific initialisation */
- jmp early_board_init_ret
diff --git a/board/dfi/dfi-bt700/Makefile b/board/dfi/dfi-bt700/Makefile
index 99cf357..50d88f2 100644
--- a/board/dfi/dfi-bt700/Makefile
+++ b/board/dfi/dfi-bt700/Makefile
@@ -2,5 +2,5 @@
#
# Copyright (C) 2015, Google, Inc
-obj-y += dfi-bt700.o start.o
+obj-y += dfi-bt700.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/dfi/dfi-bt700/start.S b/board/dfi/dfi-bt700/start.S
deleted file mode 100644
index 65d1f7e..0000000
--- a/board/dfi/dfi-bt700/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Google, Inc
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/efi/efi-x86_payload/Makefile b/board/efi/efi-x86_payload/Makefile
index 00ef695..a4ebc85 100644
--- a/board/efi/efi-x86_payload/Makefile
+++ b/board/efi/efi-x86_payload/Makefile
@@ -2,4 +2,4 @@
#
# Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
-obj-y += start.o payload.o
+obj-y += payload.o
diff --git a/board/efi/efi-x86_payload/start.S b/board/efi/efi-x86_payload/start.S
deleted file mode 100644
index f7eaa7c..0000000
--- a/board/efi/efi-x86_payload/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/emulation/qemu-x86/Makefile b/board/emulation/qemu-x86/Makefile
index 782e298..ff4aaa5 100644
--- a/board/emulation/qemu-x86/Makefile
+++ b/board/emulation/qemu-x86/Makefile
@@ -2,4 +2,4 @@
#
# Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
-obj-y += start.o
+obj-y += qemu-x86.o
diff --git a/board/emulation/qemu-x86/qemu-x86.c b/board/emulation/qemu-x86/qemu-x86.c
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/board/emulation/qemu-x86/qemu-x86.c
diff --git a/board/emulation/qemu-x86/start.S b/board/emulation/qemu-x86/start.S
deleted file mode 100644
index e4bde56..0000000
--- a/board/emulation/qemu-x86/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/google/chromebook_coral/Kconfig b/board/google/chromebook_coral/Kconfig
index 940bee8..2767195 100644
--- a/board/google/chromebook_coral/Kconfig
+++ b/board/google/chromebook_coral/Kconfig
@@ -18,6 +18,7 @@
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
select X86_RESET_VECTOR
+ select USE_EARLY_BOARD_INIT
select INTEL_APOLLOLAKE
select BOARD_ROMSIZE_KB_16384
diff --git a/board/google/chromebook_link/Kconfig b/board/google/chromebook_link/Kconfig
index 944716d..dd29ddf 100644
--- a/board/google/chromebook_link/Kconfig
+++ b/board/google/chromebook_link/Kconfig
@@ -19,6 +19,7 @@
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
select X86_RESET_VECTOR
+ select USE_EARLY_BOARD_INIT
select NORTHBRIDGE_INTEL_IVYBRIDGE
select HAVE_INTEL_ME
select BOARD_ROMSIZE_KB_8192
diff --git a/board/google/chromebook_samus/Kconfig b/board/google/chromebook_samus/Kconfig
index 90c23cb..9f66d79 100644
--- a/board/google/chromebook_samus/Kconfig
+++ b/board/google/chromebook_samus/Kconfig
@@ -19,6 +19,7 @@
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
select X86_RESET_VECTOR
+ select USE_EARLY_BOARD_INIT
select INTEL_BROADWELL
select HAVE_INTEL_ME
select BOARD_ROMSIZE_KB_8192
diff --git a/board/intel/bayleybay/Makefile b/board/intel/bayleybay/Makefile
index e0553f1..d194471 100644
--- a/board/intel/bayleybay/Makefile
+++ b/board/intel/bayleybay/Makefile
@@ -2,5 +2,5 @@
#
# Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
-obj-y += bayleybay.o start.o
+obj-y += bayleybay.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/intel/bayleybay/start.S b/board/intel/bayleybay/start.S
deleted file mode 100644
index e4bde56..0000000
--- a/board/intel/bayleybay/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/intel/cherryhill/Makefile b/board/intel/cherryhill/Makefile
index b09581a..ff6e148 100644
--- a/board/intel/cherryhill/Makefile
+++ b/board/intel/cherryhill/Makefile
@@ -2,4 +2,4 @@
#
# Copyright (C) 2017, Bin Meng <bmeng.cn@gmail.com>
-obj-y += cherryhill.o start.o
+obj-y += cherryhill.o
diff --git a/board/intel/cherryhill/start.S b/board/intel/cherryhill/start.S
deleted file mode 100644
index 2e3e7f8..0000000
--- a/board/intel/cherryhill/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2017, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/intel/cougarcanyon2/Makefile b/board/intel/cougarcanyon2/Makefile
index 75cc508..13b19ae 100644
--- a/board/intel/cougarcanyon2/Makefile
+++ b/board/intel/cougarcanyon2/Makefile
@@ -2,4 +2,4 @@
#
# Copyright (C) 2016, Bin Meng <bmeng.cn@gmail.com>
-obj-y += cougarcanyon2.o start.o
+obj-y += cougarcanyon2.o
diff --git a/board/intel/cougarcanyon2/start.S b/board/intel/cougarcanyon2/start.S
deleted file mode 100644
index 8521800..0000000
--- a/board/intel/cougarcanyon2/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2016, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/intel/crownbay/Makefile b/board/intel/crownbay/Makefile
index b52c69a..6abd3ee 100644
--- a/board/intel/crownbay/Makefile
+++ b/board/intel/crownbay/Makefile
@@ -2,4 +2,4 @@
#
# Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com>
-obj-y += crownbay.o start.o
+obj-y += crownbay.o
diff --git a/board/intel/crownbay/start.S b/board/intel/crownbay/start.S
deleted file mode 100644
index 7faa7d0..0000000
--- a/board/intel/crownbay/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/intel/edison/Makefile b/board/intel/edison/Makefile
index eed8d65..1eaf7ca 100644
--- a/board/intel/edison/Makefile
+++ b/board/intel/edison/Makefile
@@ -4,5 +4,5 @@
# SPDX-License-Identifier: GPL-2.0+
#
-obj-y += start.o edison.o
+obj-y += edison.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/intel/edison/start.S b/board/intel/edison/start.S
deleted file mode 100644
index aa702622..0000000
--- a/board/intel/edison/start.S
+++ /dev/null
@@ -1,12 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (c) 2011 The Chromium OS Authors.
- * (C) Copyright 2008
- * Graeme Russ, graeme.russ@gmail.com.
- */
-
-/* board early intialization */
-.globl early_board_init
-early_board_init:
- /* No 32-bit board specific initialisation */
- jmp early_board_init_ret
diff --git a/board/intel/galileo/Makefile b/board/intel/galileo/Makefile
index e8f58bf..4130bb0 100644
--- a/board/intel/galileo/Makefile
+++ b/board/intel/galileo/Makefile
@@ -2,5 +2,5 @@
#
# Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
-obj-y += galileo.o start.o
+obj-y += galileo.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/intel/galileo/start.S b/board/intel/galileo/start.S
deleted file mode 100644
index e4bde56..0000000
--- a/board/intel/galileo/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/intel/minnowmax/Makefile b/board/intel/minnowmax/Makefile
index 989344d..d339b5a 100644
--- a/board/intel/minnowmax/Makefile
+++ b/board/intel/minnowmax/Makefile
@@ -2,5 +2,5 @@
#
# Copyright (C) 2015, Google, Inc
-obj-y += minnowmax.o start.o
+obj-y += minnowmax.o
obj-$(CONFIG_GENERATE_ACPI_TABLE) += dsdt.o
diff --git a/board/intel/minnowmax/start.S b/board/intel/minnowmax/start.S
deleted file mode 100644
index 65d1f7e..0000000
--- a/board/intel/minnowmax/start.S
+++ /dev/null
@@ -1,8 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2015, Google, Inc
- */
-
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/board/intel/slimbootloader/Makefile b/board/intel/slimbootloader/Makefile
index fd8fa98..50330cc6 100644
--- a/board/intel/slimbootloader/Makefile
+++ b/board/intel/slimbootloader/Makefile
@@ -2,4 +2,4 @@
#
# Copyright (C) 2019 Intel Corporation <www.intel.com>
-obj-y += start.o slimbootloader.o
+obj-y += slimbootloader.o
diff --git a/board/intel/slimbootloader/start.S b/board/intel/slimbootloader/start.S
deleted file mode 100644
index 5c3f3df..0000000
--- a/board/intel/slimbootloader/start.S
+++ /dev/null
@@ -1,9 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2019 Intel Corporation <www.intel.com>
- */
-
-/* board early initialization */
-.globl early_board_init
-early_board_init:
- jmp early_board_init_ret
diff --git a/cmd/x86/mtrr.c b/cmd/x86/mtrr.c
index e118bba..99efecb 100644
--- a/cmd/x86/mtrr.c
+++ b/cmd/x86/mtrr.c
@@ -121,7 +121,8 @@
if (argc < 1 || !cmd) {
cmd = 'l';
reg = 0;
- } else {
+ }
+ if (cmd != 'l') {
if (argc < 2)
return CMD_RET_USAGE;
reg = simple_strtoul(argv[1], NULL, 16);
diff --git a/drivers/pinctrl/intel/Kconfig b/drivers/pinctrl/intel/Kconfig
index 1acc5da..316a8fe 100644
--- a/drivers/pinctrl/intel/Kconfig
+++ b/drivers/pinctrl/intel/Kconfig
@@ -22,7 +22,7 @@
Enable this if the pinctrl devices are modelled as multiple,
separate ACPI devices in the ACPI tables. If enabled, the ACPI
devices match the U-Boot pinctrl devices and the pin 'offset' is
- relatove to a particular pinctrl device. If disabled, there is a
+ relative to a particular pinctrl device. If disabled, there is a
single ACPI pinctrl device which includes all U-Boot pinctrl devices
and the pin 'offset' is in effect a global pin number.