[PATCH v1 01/15] x86: Introduce USE_EARLY_BOARD_INIT option

Introduce USE_EARLY_BOARD_INIT option and select it by the actual users.
Cc: Aiden Park aiden.park@intel.com Cc: Stefan Roese sr@denx.de Cc: George McCollister george.mccollister@gmail.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- arch/x86/Kconfig | 3 +++ arch/x86/cpu/start.S | 3 +++ board/google/chromebook_coral/Kconfig | 1 + board/google/chromebook_link/Kconfig | 1 + board/google/chromebook_samus/Kconfig | 1 + 5 files changed, 9 insertions(+)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index ff4f06ed79cc..167cc96205c5 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -203,6 +203,9 @@ config SPL_X86_32BIT_INIT 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 4ad515ce0856..8d00c97db42c 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -88,6 +88,7 @@ _start: /* Clear the interrupt vectors */ lidt blank_idt_ptr
+#ifdef 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 @@ _start: 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/board/google/chromebook_coral/Kconfig b/board/google/chromebook_coral/Kconfig index 940bee89b0b6..27671958e146 100644 --- a/board/google/chromebook_coral/Kconfig +++ b/board/google/chromebook_coral/Kconfig @@ -18,6 +18,7 @@ config SYS_TEXT_BASE 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 944716d002c9..dd29ddf694be 100644 --- a/board/google/chromebook_link/Kconfig +++ b/board/google/chromebook_link/Kconfig @@ -19,6 +19,7 @@ config SYS_TEXT_BASE 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 90c23cba1bed..9f66d7998870 100644 --- a/board/google/chromebook_samus/Kconfig +++ b/board/google/chromebook_samus/Kconfig @@ -19,6 +19,7 @@ config SYS_TEXT_BASE 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

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: George McCollister george.mccollister@gmail.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/advantech/som-db5800-som-6867/Makefile | 2 +- board/advantech/som-db5800-som-6867/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/advantech/som-db5800-som-6867/start.S
diff --git a/board/advantech/som-db5800-som-6867/Makefile b/board/advantech/som-db5800-som-6867/Makefile index 0524766bb718..7975547f4109 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 65d1f7e96150..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: George McCollister george.mccollister@gmail.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/advantech/som-db5800-som-6867/Makefile | 2 +- board/advantech/som-db5800-som-6867/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/advantech/som-db5800-som-6867/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Stefan Roese sr@denx.de Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/congatec/conga-qeval20-qa3-e3845/Makefile | 2 +- board/congatec/conga-qeval20-qa3-e3845/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/congatec/conga-qeval20-qa3-e3845/start.S
diff --git a/board/congatec/conga-qeval20-qa3-e3845/Makefile b/board/congatec/conga-qeval20-qa3-e3845/Makefile index 2f04828a27f2..451a4fcd6c4d 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 65d1f7e96150..000000000000 --- 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

On 06.08.20 16:54, Andy Shevchenko wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Stefan Roese sr@denx.de Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
Reviewed-by: Stefan Roese sr@denx.de
Thanks, Stefan
board/congatec/conga-qeval20-qa3-e3845/Makefile | 2 +- board/congatec/conga-qeval20-qa3-e3845/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/congatec/conga-qeval20-qa3-e3845/start.S
diff --git a/board/congatec/conga-qeval20-qa3-e3845/Makefile b/board/congatec/conga-qeval20-qa3-e3845/Makefile index 2f04828a27f2..451a4fcd6c4d 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 65d1f7e96150..000000000000 --- 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
Viele Grüße, Stefan

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/coreboot/coreboot/Makefile | 2 +- board/coreboot/coreboot/start.S | 12 ------------ 2 files changed, 1 insertion(+), 13 deletions(-) delete mode 100644 board/coreboot/coreboot/start.S
diff --git a/board/coreboot/coreboot/Makefile b/board/coreboot/coreboot/Makefile index 8db7cc62f309..d292b7032c23 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 aa702622d48c..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/coreboot/coreboot/Makefile | 2 +- board/coreboot/coreboot/start.S | 12 ------------ 2 files changed, 1 insertion(+), 13 deletions(-) delete mode 100644 board/coreboot/coreboot/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Stefan Roese sr@denx.de Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/dfi/dfi-bt700/Makefile | 2 +- board/dfi/dfi-bt700/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/dfi/dfi-bt700/start.S
diff --git a/board/dfi/dfi-bt700/Makefile b/board/dfi/dfi-bt700/Makefile index 99cf357b701f..50d88f295458 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 65d1f7e96150..000000000000 --- 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

On 06.08.20 16:54, Andy Shevchenko wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Stefan Roese sr@denx.de Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
Reviewed-by: Stefan Roese sr@denx.de
Thanks, Stefan
board/dfi/dfi-bt700/Makefile | 2 +- board/dfi/dfi-bt700/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/dfi/dfi-bt700/start.S
diff --git a/board/dfi/dfi-bt700/Makefile b/board/dfi/dfi-bt700/Makefile index 99cf357b701f..50d88f295458 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 65d1f7e96150..000000000000 --- 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
Viele Grüße, Stefan

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/efi/efi-x86_payload/Makefile | 2 +- board/efi/efi-x86_payload/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/efi/efi-x86_payload/start.S
diff --git a/board/efi/efi-x86_payload/Makefile b/board/efi/efi-x86_payload/Makefile index 00ef69534d00..a4ebc85aa5b3 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 f7eaa7cb12a9..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/efi/efi-x86_payload/Makefile | 2 +- board/efi/efi-x86_payload/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/efi/efi-x86_payload/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/bayleybay/Makefile | 2 +- board/intel/bayleybay/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/bayleybay/start.S
diff --git a/board/intel/bayleybay/Makefile b/board/intel/bayleybay/Makefile index e0553f146248..d19447184a6e 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 e4bde561b20d..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/bayleybay/Makefile | 2 +- board/intel/bayleybay/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/bayleybay/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/cherryhill/Makefile | 2 +- board/intel/cherryhill/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/cherryhill/start.S
diff --git a/board/intel/cherryhill/Makefile b/board/intel/cherryhill/Makefile index b09581a9195e..ff6e14836a11 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 2e3e7f840944..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/cherryhill/Makefile | 2 +- board/intel/cherryhill/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/cherryhill/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/cougarcanyon2/Makefile | 2 +- board/intel/cougarcanyon2/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/cougarcanyon2/start.S
diff --git a/board/intel/cougarcanyon2/Makefile b/board/intel/cougarcanyon2/Makefile index 75cc508f4ec0..13b19ae65389 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 8521800921e4..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/cougarcanyon2/Makefile | 2 +- board/intel/cougarcanyon2/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/cougarcanyon2/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/crownbay/Makefile | 2 +- board/intel/crownbay/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/crownbay/start.S
diff --git a/board/intel/crownbay/Makefile b/board/intel/crownbay/Makefile index b52c69aeaa1b..6abd3eeb5540 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 7faa7d05fae4..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/crownbay/Makefile | 2 +- board/intel/crownbay/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/crownbay/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/edison/Makefile | 2 +- board/intel/edison/start.S | 12 ------------ 2 files changed, 1 insertion(+), 13 deletions(-) delete mode 100644 board/intel/edison/start.S
diff --git a/board/intel/edison/Makefile b/board/intel/edison/Makefile index eed8d65eb661..1eaf7ca7f8e2 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 aa702622d48c..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/edison/Makefile | 2 +- board/intel/edison/start.S | 12 ------------ 2 files changed, 1 insertion(+), 13 deletions(-) delete mode 100644 board/intel/edison/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/galileo/Makefile | 2 +- board/intel/galileo/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/galileo/start.S
diff --git a/board/intel/galileo/Makefile b/board/intel/galileo/Makefile index e8f58bff9aca..4130bb023656 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 e4bde561b20d..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/galileo/Makefile | 2 +- board/intel/galileo/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/galileo/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/minnowmax/Makefile | 2 +- board/intel/minnowmax/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/minnowmax/start.S
diff --git a/board/intel/minnowmax/Makefile b/board/intel/minnowmax/Makefile index 989344df1c91..d339b5ad0a54 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 65d1f7e96150..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/minnowmax/Makefile | 2 +- board/intel/minnowmax/start.S | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 board/intel/minnowmax/start.S
Reviewed-by: Simon Glass sjg@chromium.org

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Aiden Park aiden.park@intel.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/intel/slimbootloader/Makefile | 2 +- board/intel/slimbootloader/start.S | 9 --------- 2 files changed, 1 insertion(+), 10 deletions(-) delete mode 100644 board/intel/slimbootloader/start.S
diff --git a/board/intel/slimbootloader/Makefile b/board/intel/slimbootloader/Makefile index fd8fa98a8d39..50330cc6e5db 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 5c3f3df09eb0..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Aiden Park aiden.park@intel.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/slimbootloader/Makefile | 2 +- board/intel/slimbootloader/start.S | 9 --------- 2 files changed, 1 insertion(+), 10 deletions(-) delete mode 100644 board/intel/slimbootloader/start.S
Reviewed-by: Simon Glass sjg@chromium.org

-----Original Message----- From: Andy Shevchenko andriy.shevchenko@linux.intel.com Sent: Thursday, August 6, 2020 7:55 AM To: Simon Glass sjg@chromium.org; Bin Meng bmeng.cn@gmail.com; u- boot@lists.denx.de Cc: Andy Shevchenko andriy.shevchenko@linux.intel.com; Park, Aiden aiden.park@intel.com Subject: [PATCH v1 14/15] x86: intel: slimbootloader: Remove dead code
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Cc: Aiden Park aiden.park@intel.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/intel/slimbootloader/Makefile | 2 +- board/intel/slimbootloader/start.S | 9 --------- 2 files changed, 1 insertion(+), 10 deletions(-) delete mode 100644 board/intel/slimbootloader/start.S
diff --git a/board/intel/slimbootloader/Makefile b/board/intel/slimbootloader/Makefile index fd8fa98a8d39..50330cc6e5db 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 5c3f3df09eb0..000000000000 --- 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
-- 2.27.0
Reviewed-by: Aiden Park aiden.park@intel.com

start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com --- board/emulation/qemu-x86/Makefile | 2 -- board/emulation/qemu-x86/start.S | 8 -------- 2 files changed, 10 deletions(-) delete mode 100644 board/emulation/qemu-x86/start.S
diff --git a/board/emulation/qemu-x86/Makefile b/board/emulation/qemu-x86/Makefile index 782e298b74ce..5af8d31d5840 100644 --- a/board/emulation/qemu-x86/Makefile +++ b/board/emulation/qemu-x86/Makefile @@ -1,5 +1,3 @@ # SPDX-License-Identifier: GPL-2.0+ # # Copyright (C) 2015, Bin Meng bmeng.cn@gmail.com - -obj-y += start.o diff --git a/board/emulation/qemu-x86/start.S b/board/emulation/qemu-x86/start.S deleted file mode 100644 index e4bde561b20d..000000000000 --- 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

On Thu, 6 Aug 2020 at 08:54, Andy Shevchenko andriy.shevchenko@linux.intel.com wrote:
start.S does nothing and can be safely removed. Makefile is still being used by the build system, so simply drop the rule from it.
Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
board/emulation/qemu-x86/Makefile | 2 -- board/emulation/qemu-x86/start.S | 8 -------- 2 files changed, 10 deletions(-) delete mode 100644 board/emulation/qemu-x86/start.S
Reviewed-by: Simon Glass sjg@chromium.org

On 06.08.20 16:54, Andy Shevchenko wrote:
Introduce USE_EARLY_BOARD_INIT option and select it by the actual users.
Cc: Aiden Park aiden.park@intel.com Cc: Stefan Roese sr@denx.de Cc: George McCollister george.mccollister@gmail.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
Reviewed-by: Stefan Roese sr@denx.de
Thanks, Stefan
arch/x86/Kconfig | 3 +++ arch/x86/cpu/start.S | 3 +++ board/google/chromebook_coral/Kconfig | 1 + board/google/chromebook_link/Kconfig | 1 + board/google/chromebook_samus/Kconfig | 1 + 5 files changed, 9 insertions(+)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index ff4f06ed79cc..167cc96205c5 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -203,6 +203,9 @@ config SPL_X86_32BIT_INIT 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 4ad515ce0856..8d00c97db42c 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -88,6 +88,7 @@ _start: /* Clear the interrupt vectors */ lidt blank_idt_ptr
+#ifdef 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 @@ _start: 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/board/google/chromebook_coral/Kconfig b/board/google/chromebook_coral/Kconfig index 940bee89b0b6..27671958e146 100644 --- a/board/google/chromebook_coral/Kconfig +++ b/board/google/chromebook_coral/Kconfig @@ -18,6 +18,7 @@ config SYS_TEXT_BASE 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 944716d002c9..dd29ddf694be 100644 --- a/board/google/chromebook_link/Kconfig +++ b/board/google/chromebook_link/Kconfig @@ -19,6 +19,7 @@ config SYS_TEXT_BASE 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 90c23cba1bed..9f66d7998870 100644 --- a/board/google/chromebook_samus/Kconfig +++ b/board/google/chromebook_samus/Kconfig @@ -19,6 +19,7 @@ config SYS_TEXT_BASE 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
Viele Grüße, Stefan

-----Original Message----- From: Andy Shevchenko andriy.shevchenko@linux.intel.com Sent: Thursday, August 6, 2020 7:54 AM To: Simon Glass sjg@chromium.org; Bin Meng bmeng.cn@gmail.com; u- boot@lists.denx.de Cc: Andy Shevchenko andriy.shevchenko@linux.intel.com; Park, Aiden aiden.park@intel.com; Stefan Roese sr@denx.de; George McCollister george.mccollister@gmail.com Subject: [PATCH v1 01/15] x86: Introduce USE_EARLY_BOARD_INIT option
Introduce USE_EARLY_BOARD_INIT option and select it by the actual users.
Cc: Aiden Park aiden.park@intel.com Cc: Stefan Roese sr@denx.de Cc: George McCollister george.mccollister@gmail.com Signed-off-by: Andy Shevchenko andriy.shevchenko@linux.intel.com
arch/x86/Kconfig | 3 +++ arch/x86/cpu/start.S | 3 +++ board/google/chromebook_coral/Kconfig | 1 + board/google/chromebook_link/Kconfig | 1 + board/google/chromebook_samus/Kconfig | 1 + 5 files changed, 9 insertions(+)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index ff4f06ed79cc..167cc96205c5 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -203,6 +203,9 @@ config SPL_X86_32BIT_INIT 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 4ad515ce0856..8d00c97db42c 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -88,6 +88,7 @@ _start: /* Clear the interrupt vectors */ lidt blank_idt_ptr
+#ifdef 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 @@ _start: 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/board/google/chromebook_coral/Kconfig b/board/google/chromebook_coral/Kconfig index 940bee89b0b6..27671958e146 100644 --- a/board/google/chromebook_coral/Kconfig +++ b/board/google/chromebook_coral/Kconfig @@ -18,6 +18,7 @@ config SYS_TEXT_BASE 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 944716d002c9..dd29ddf694be 100644 --- a/board/google/chromebook_link/Kconfig +++ b/board/google/chromebook_link/Kconfig @@ -19,6 +19,7 @@ config SYS_TEXT_BASE 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 90c23cba1bed..9f66d7998870 100644 --- a/board/google/chromebook_samus/Kconfig +++ b/board/google/chromebook_samus/Kconfig @@ -19,6 +19,7 @@ config SYS_TEXT_BASE 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
-- 2.27.0
Reviewed-by: Aiden Park aiden.park@intel.com

On Thu, Aug 06, 2020 at 05:54:24PM +0300, Andy Shevchenko wrote:
Introduce USE_EARLY_BOARD_INIT option and select it by the actual users.
...
+#ifdef USE_EARLY_BOARD_INIT
And here I missed CONFIG_ prefix...
I'll fix this in v2.
/* * 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 @@ _start: jmp early_board_init .globl early_board_init_ret early_board_init_ret: +#endif
participants (4)
-
Andy Shevchenko
-
Park, Aiden
-
Simon Glass
-
Stefan Roese