diff options
author | Bin Meng <bmeng.cn@gmail.com> | 2018-08-10 02:39:33 -0700 |
---|---|---|
committer | Bin Meng <bmeng.cn@gmail.com> | 2018-08-20 13:52:06 +0800 |
commit | ceeee8f7b5f10d7736840b169249e891da0f6a47 (patch) | |
tree | 0d4e059b4cf53c67d1fca1d7fd1404c6bc347759 /arch/x86/dts | |
parent | 6ace36e19a8cfdd16ce7c02625edf36864897bf5 (diff) | |
download | u-boot-ceeee8f7b5f10d7736840b169249e891da0f6a47.zip u-boot-ceeee8f7b5f10d7736840b169249e891da0f6a47.tar.gz u-boot-ceeee8f7b5f10d7736840b169249e891da0f6a47.tar.bz2 |
x86: coreboot: Add generic coreboot payload support
Currently building U-Boot as the coreboot payload requires user
to change the build configuration for a specific board during
menuconfig process. This uses the board's native device tree
to configure the hardware. For example, the device tree provides
PCI address range for the PCI host controller and U-Boot will
re-program all PCI devices' BAR to be within this range. In order
to make sure we don't mess up the hardware, we should guarantee
the range matches what coreboot programs the chipset.
But we really should make the coreboot payload support easier.
Just like EFI payload, we can create a generic coreboot payload
for all x86 boards as well. The payload is configured to include
as many generic drivers as possible. All stuff that touches low
level initialization are not allowed as such is the coreboot's
responsibility. Platform specific drivers (like gpio, spi, etc)
are not included.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Diffstat (limited to 'arch/x86/dts')
-rw-r--r-- | arch/x86/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/x86/dts/coreboot.dts | 41 |
2 files changed, 42 insertions, 0 deletions
diff --git a/arch/x86/dts/Makefile b/arch/x86/dts/Makefile index 37e4fdc7..c62540f 100644 --- a/arch/x86/dts/Makefile +++ b/arch/x86/dts/Makefile @@ -6,6 +6,7 @@ dtb-y += bayleybay.dtb \ chromebox_panther.dtb \ chromebook_samus.dtb \ conga-qeval20-qa3-e3845.dtb \ + coreboot.dtb \ cougarcanyon2.dtb \ crownbay.dtb \ dfi-bt700-q7x-151.dtb \ diff --git a/arch/x86/dts/coreboot.dts b/arch/x86/dts/coreboot.dts new file mode 100644 index 0000000..a94f781 --- /dev/null +++ b/arch/x86/dts/coreboot.dts @@ -0,0 +1,41 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com> + * + * Generic coreboot payload device tree for x86 targets + */ + +/dts-v1/; + +/include/ "skeleton.dtsi" +/include/ "serial.dtsi" +/include/ "keyboard.dtsi" +/include/ "reset.dtsi" +/include/ "rtc.dtsi" +/include/ "tsc_timer.dtsi" + +/ { + model = "coreboot x86 payload"; + compatible = "coreboot,x86-payload"; + + aliases { + serial0 = &serial; + }; + + config { + silent_console = <0>; + }; + + chosen { + stdout-path = "/serial"; + }; + + pci { + compatible = "pci-x86"; + u-boot,dm-pre-reloc; + }; + + coreboot-fb { + compatible = "coreboot-fb"; + }; +}; |