All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/7] x86: Improve support for chain-loading U-Boot
@ 2020-03-07 23:22 Simon Glass
  2020-03-07 23:22 ` [PATCH v3 1/7] x86: fsp: Allow skipping init code when chain loading Simon Glass
                   ` (8 more replies)
  0 siblings, 9 replies; 19+ messages in thread
From: Simon Glass @ 2020-03-07 23:22 UTC (permalink / raw)
  To: u-boot

This little series adds a few checks into the code to allow better
operation when booting a build from a previous-state loader such as
coreboot.

At present we have a 'coreboot' target but this runs very different code
from the bare-metal targets, such as coral. There is very little in common
between them.

It is useful to be able to boot the same U-Boot on a device, with or
without a first-stage bootloader. For example, with chromebook_coral, it
is helpful for testing to be able to boot the same U-Boot (complete with
FSP) on bare metal and from coreboot. It allows checking of things like
CPU speed, comparing registers, ACPI tables and the like.

This series allows U-Boot to detect that it ran from coreboot and
automatically do the right thing.

This series makes the most important changes to allow the same u-boot.bin
for coral to boot after coreboot (by itself) or bare metal (via TPL->SPL).

Changes in v3:
- Add a new patch with a gd flag for chain loading
- Add new patch to detect running from coreboot

Changes in v2:
- Drop the other check in interrupt_init() which is not needed now
- Drop patch 'dm: Avoid initing built-in devices when chain loading'

Simon Glass (7):
  x86: fsp: Allow skipping init code when chain loading
  x86: apl: Skip init code when chain loading
  x86: cpu: Skip init code when chain loading
  pci: Avoid auto-config when chain loading
  board: Add a gd flag for chain loading
  x86: Add a way to detect running from coreboot
  x86: Use the existing stack when chain-loading

 arch/x86/cpu/apollolake/fsp_s.c   |  2 ++
 arch/x86/cpu/cpu.c                |  4 +++-
 arch/x86/cpu/i386/cpu.c           | 15 +++++++++++++++
 arch/x86/cpu/i386/interrupt.c     |  6 ++++--
 arch/x86/cpu/start_from_spl.S     | 16 ++++++++++++++--
 arch/x86/include/asm/u-boot-x86.h |  7 +++++++
 arch/x86/lib/fsp/fsp_dram.c       |  8 ++++++++
 arch/x86/lib/fsp/fsp_graphics.c   |  3 +++
 arch/x86/lib/fsp2/fsp_dram.c      | 10 ++++++++++
 arch/x86/lib/fsp2/fsp_init.c      |  2 +-
 arch/x86/lib/init_helpers.c       |  3 +++
 drivers/pci/pci-uclass.c          |  4 ++--
 include/asm-generic/global_data.h |  1 +
 include/init.h                    |  2 +-
 14 files changed, 74 insertions(+), 9 deletions(-)

-- 
2.25.1.481.gfbce0eb801-goog

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2020-03-29  2:13 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-07 23:22 [PATCH v3 0/7] x86: Improve support for chain-loading U-Boot Simon Glass
2020-03-07 23:22 ` [PATCH v3 1/7] x86: fsp: Allow skipping init code when chain loading Simon Glass
2020-03-07 23:22 ` [PATCH v3 2/7] x86: apl: Skip " Simon Glass
2020-03-07 23:22 ` [PATCH v3 3/7] x86: cpu: " Simon Glass
2020-03-07 23:22 ` [PATCH v3 4/7] pci: Avoid auto-config " Simon Glass
2020-03-07 23:22 ` [PATCH v3 5/7] board: Add a gd flag for " Simon Glass
2020-03-07 23:22 ` [PATCH v3 6/7] x86: Add a way to detect running from coreboot Simon Glass
2020-03-07 23:22 ` [PATCH v3 7/7] x86: Use the existing stack when chain-loading Simon Glass
2020-03-10 14:51 ` [PATCH v3 0/7] x86: Improve support for chain-loading U-Boot Andy Shevchenko
2020-03-11  2:28   ` Simon Glass
2020-03-11 12:09     ` Andy Shevchenko
2020-03-11 12:24       ` Simon Glass
2020-03-11 13:04         ` Andy Shevchenko
2020-03-11 14:53           ` Igor Opaniuk
2020-03-11 15:22             ` Andy Shevchenko
2020-03-11 16:03               ` Wolfgang Denk
2020-03-12  3:22           ` Simon Glass
2020-03-12 15:38             ` Andy Shevchenko
2020-03-29  2:13 ` Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.