the intended use-case scenario was one in which vga rom initialisation
would be used, on desktop configurations, but without coreboot itself
handling vga rom initialisation, instead leaving that task to seabios
it was assumed that grub, when running on the bare metal with
build option "--with-platform=coreboot" would be able to display
like this, but it is not so when tested
in such setups (add-on gpu with grub payload), it is necessary to
extract the video bios and insert it into the coreboot rom, having
coreboot handle such execution. this is beyond the scope of lbmk,
in context of automated building, because we cannot reliably predict
things such as PCI IDs
do away with this build option entirely, for it does not serve the
intended purpose. it will be necessary to run PC GRUB instead (build
option --with-platform=i386-pc). PC GRUB can still read from CBFS,
and you could provide it as a floppy image file inside CBFS for
SeaBIOS to execute. in this setup, GRUB would function as originally
intended by the seabios_withgrub option; such a configuration is
referred to as "SeaGRUB" by the libreboot project, and experimentation
was done with it in the past, to no avail
it's better to keep things simple, in the libreboot project. simpler
for users, that is
buggy, buggy, buggy, buggy, buggy, buggy, buggy
full of bugs, these boards never worked properly. i got ripped
off with these.
now i'm ripping off the band aid
use dasharo if you want d16 stuff. i'm done with it.
python2 is eol and the only thing that needed it was build scripts
inside tianocore, back in osbmk days when tianocore was supported
in the (osboot) build system. nothing else requires it, so chuck it
This adds U-Boot configuration for the Samsung Chromebook 2 13", also
known as "peach-pi" in the U-Boot upstream defconfigs. It uses the
shared tree for the "peach" baseboard. The config is almost the same as
upstream defconfig, but with REMAKE_ELF and POSITION_INDEPENDENT
enabled.
Untested since I don't have the peach pi chromebook. Note the there
doesn't seem to be any coreboot support for this chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the Samsung Chromebook 2 11", which
is based on the "google/peach_pit" mainboard in upstream coreboot. Also
adds a shared "peach" board directory to share with others having the
same baseboard.
The config is based on the following defconfig:
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x00400000
CONFIG_UART_FOR_CONSOLE=3
CONFIG_BOARD_GOOGLE_PEACH_PIT=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the peach pit chromebook. This also fails
without a non-free 3rdparty/blobs/cpu/samsung/exynos5420/bl1.bin blob.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the Samsung Chromebook 2 11", also
known as "peach-pit" in the U-Boot upstream defconfigs. Also adds a
shared "peach" board directory to share with others having the same
baseboard. The config is almost the same as upstream defconfig, but with
REMAKE_ELF and POSITION_INDEPENDENT enabled.
Untested since I don't have the peach pit chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the HP Chromebook 11 G1, which is
part of the "google/daisy" mainboard in upstream coreboot. It uses the
shared tree for the "daisy" baseboard.
The config is based on the following defconfig:
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x00400000
CONFIG_UART_FOR_CONSOLE=3
CONFIG_BOARD_GOOGLE_DAISY=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_EC_GOOGLE_CHROMEEC_I2C_BUS=0x4
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the spring chromebook. This also fails
without a non-free 3rdparty/blobs/cpu/samsung/exynos5250/bl1.bin blob.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the HP Chromebook 11 G1, also known
as "spring" in the U-Boot upstream defconfigs. It uses the shared tree
for the "daisy" baseboard. The config is almost the same as upstream
defconfig, but with REMAKE_ELF and POSITION_INDEPENDENT enabled.
Untested since I don't have the spring chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the Samsung Chromebook - XE303,
which is based on the "google/daisy" mainboard in upstream coreboot.
Also adds a shared "daisy" board directory to share with others having
the same baseboard.
The config is based on the following defconfig:
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x00400000
CONFIG_UART_FOR_CONSOLE=3
CONFIG_BOARD_GOOGLE_DAISY=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_EC_GOOGLE_CHROMEEC_I2C_BUS=0x4
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the snow chromebook. This also fails without
a non-free 3rdparty/blobs/cpu/samsung/exynos5250/bl1.bin blob.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the Samsung Chromebook - XE303, also
known as "snow" in the U-Boot upstream defconfigs. Also adds a shared
"daisy" board directory to share with others having the same baseboard.
The config is almost the same as upstream defconfig, but with REMAKE_ELF
and POSITION_INDEPENDENT enabled.
Untested since I don't have the snow chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the HP Chromebook 14 G3, which is
based on the "google/nyan_blaze" mainboard in upstream coreboot. It uses
the shared tree for the "nyan" baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOOT_DEVICE_SPI_FLASH_BUS=4
CONFIG_BOARD_GOOGLE_NYAN_BLAZE=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_DRIVERS_AS3722_RTC_BUS=4
CONFIG_DRIVERS_AS3722_RTC_ADDR=0x40
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the nyan blaze chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the HP Chromebook 14 G3, also known
as "nyan-blaze" but not in the U-Boot upstream defconfigs. Apparently
the "nyan-big" defconfig can also work for this version. It uses the
shared tree for the "nyan" baseboard. The config is almost the same as
upstream defconfig, but with REMAKE_ELF and POSITION_INDEPENDENT
enabled.
Untested since I don't have the nyan blaze chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the Acer Chromebook 13 (CB5-311,
C810), which is based on the "google/nyan_big" mainboard in upstream
coreboot. Also adds a shared "nyan" board directory to share with
others having the same baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOOT_DEVICE_SPI_FLASH_BUS=4
CONFIG_BOARD_GOOGLE_NYAN_BIG=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_DRIVERS_AS3722_RTC_BUS=4
CONFIG_DRIVERS_AS3722_RTC_ADDR=0x40
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the nyan big chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the Acer Chromebook 13 (CB5-311,
C810), also known as "nyan_big" in the U-Boot upstream defconfigs. Also
adds a shared "nyan" board directory to share with others having the
same baseboard. The config is almost the same as upstream defconfig, but
with REMAKE_ELF and POSITION_INDEPENDENT enabled.
Untested since I don't have the nyan big chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the ASUS Chromebit CS10, which is
based on the "google/veyron_mickey" mainboard in upstream coreboot. It
uses the shared tree for the "veyron" baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOARD_GOOGLE_VEYRON_MICKEY=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the veyron mickey chromebit.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the ASUS Chromebit CS10, also known
as "chromebit_mickey" in the U-Boot upstream defconfigs. It uses the
shared tree for the "veyron" baseboard. The config is almost the same as
upstream defconfig, but with REMAKE_ELF and POSITION_INDEPENDENT
enabled.
Untested since I don't have the veyron mickey chromebit.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for a few white-label chromebooks which
are based on the "google/veyron" mainboard in upstream coreboot. It uses
the shared tree for the "veyron" baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOARD_GOOGLE_VEYRON_JERRY=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have any of the veyron jerry chromebooks.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for a few white-label chromebooks, known
as "chromebook_jerry" in the U-Boot upstream defconfigs. It uses the
shared tree for the "veyron" baseboard. The config is almost the same as
upstream defconfig, but with REMAKE_ELF and POSITION_INDEPENDENT
enabled.
Untested since I don't have any of the veyron jerry chromebooks.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the ASUS Chromebook Flip C100PA,
which is based on the "google/veyron" mainboard in upstream coreboot. It
uses the shared tree for the "veyron" baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOARD_GOOGLE_VEYRON_MINNIE=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the veyron minnie chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the ASUS Chromebook Flip C100PA, also
known as "chromebook_minnie" in the U-Boot upstream defconfigs. It uses
the shared tree for the "veyron" baseboard. The config is almost the
same as upstream defconfig, but with REMAKE_ELF and POSITION_INDEPENDENT
enabled.
Untested since I don't have the veyron minnie chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the ASUS Chromebook C201PA, which
is based on the "google/veyron" mainboard in upstream coreboot. Also
adds a shared "veyron" board directory to share with others having the
same baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOARD_GOOGLE_VEYRON_SPEEDY=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
Untested since I don't have the veyron speedy chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the ASUS Chromebook C201PA, also
known as "chromebook_speedy" in the U-Boot upstream defconfigs. Also
adds a shared "veyron" board directory to share with others having the
same baseboard. The config is almost the same as upstream defconfig, but
with REMAKE_ELF and POSITION_INDEPENDENT enabled.
Untested since I don't have the veyron speedy chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the ASUS Chromebook Flip C101,
which is based on the "google/gru" mainboard in upstream coreboot. It
uses the shared tree for the "gru" baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x00800000
CONFIG_BOARD_GOOGLE_BOB=y
CONFIG_DRIVER_TPM_SPI_BUS=0x0
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
CONFIG_PAYLOAD_FIT_SUPPORT=y
Untested since I don't have the bob chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the ASUS Chromebook Flip C101,
also known as "chromebook_bob" in the U-Boot upstream defconfigs. It
uses the shared tree for the "gru" baseboard.
The config has the following diffconfig from kevin:
# chromebook_bob instead of chromebook_kevin
DEFAULT_DEVICE_TREE "rk3399-gru-kevin" -> "rk3399-gru-bob"
DEFAULT_FDT_FILE "rockchip/rk3399-gru-kevin.dtb" -> "rockchip/rk3399-gru-bob.dtb"
OF_LIST "rk3399-gru-kevin" -> "rk3399-gru-bob"
SPL_OF_LIST "rk3399-gru-kevin" -> "rk3399-gru-bob"
TARGET_CHROMEBOOK_BOB n -> y
TARGET_CHROMEBOOK_KEVIN y -> n
# Display resolution is 1280x800, and no need for the big font
VIDEO_FONT_8X16 n -> y
VIDEO_FONT_TER16X32 y -> n
VIDEO_ROCKCHIP_MAX_XRES 2400 -> 1280
VIDEO_ROCKCHIP_MAX_YRES 1600 -> 800
Untested since I don't have the bob chromebook.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds coreboot configuration for the Samsung Chromebook Plus (v1),
which is based on the "google/gru" mainboard in upstream coreboot. Also
adds a shared "gru" board directory to share with others having the same
baseboard.
The config is based on the following defconfig:
# CONFIG_USE_BLOBS is not set
CONFIG_VENDOR_GOOGLE=y
CONFIG_CBFS_SIZE=0x00800000
CONFIG_BOARD_GOOGLE_KEVIN=y
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000
CONFIG_UART_PCI_ADDR=0x0
CONFIG_I2C_TRANSFER_TIMEOUT_US=500000
CONFIG_PAYLOAD_FIT_SUPPORT=y
Most things work, but one significant problem is that the board can't power
off properly. It also happens with my manual U-Boot-only builds, but not
when I manually build coreboot with a U-Boot payload. Not sure why it is
happening here as well.
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This adds U-Boot configuration for the Samsung Chromebook Plus (v1),
also known as "chromebook_kevin" in the U-Boot upstream defconfigs. Also
adds a shared "gru" board directory to share with others having the same
baseboard.
It uses v2022.07 with some quality-of-life patches. The first one is a
clock adjustment to match coreboot clocks for the video output, the
second one is a series about text cursor support and larger fonts. These
are because the display has a high resolution of 2400x1600 at 12.3".
The config has the following diffconfig from the upstream defconfig for
this board:
# For chainloading from depthcharge like a payload (RW_LEGACY).
# Not everything might be necessary, but didn't test without these.
INIT_SP_RELATIVE n -> y
LNX_KRNL_IMG_TEXT_OFFSET_BASE 0x00200000 -> 0x18000000
POSITION_INDEPENDENT n -> y
SYS_TEXT_BASE 0x00200000 -> 0x18000000
+SYS_INIT_SP_BSS_OFFSET 524288
# Higher speeds for eMMC
MMC_HS200_SUPPORT n -> y
MMC_HS400_ES_SUPPORT n -> y
MMC_HS400_SUPPORT n -> y
MMC_IO_VOLTAGE n -> y
MMC_SDHCI_SDMA n -> y
MMC_SPEED_MODE_SET n -> y
+MMC_UHS_SUPPORT y
# Build the u-boot.elf to use as a payload
REMAKE_ELF n -> y
# Slightly faster video output
VIDEO_COPY n -> y
# Larger fonts per the applied series
VIDEO_FONT_8X16 y -> n
VIDEO_FONT_TER16X32 n -> y
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>