CrOS calls this “daisy-snow”, model number on the case is XE303C12.

There is some coreboot support that apparently hasn’t been tested in a very long time, and the Exynos5250 BL1 firmware in the coreboot blobs repo is a placeholder. Actual BL1 firmware can be found here (link to Google CrOS distfiles, bzip2’d tarball). Attempting to use the default libreboot configs (since removed, commit) with inserted BL1 doesn’t get far…

Using upstream U-Boot

Upstream U-Boot has snow_defconfig which does compile cleanly from a v2023.10 checkout, and gives us an SPL + U-Boot binary.

Creating an image for the onboard SPI flash is a bit of a hassle - but it does work! The BL1 blob has to be at the start of the image, followed by the Exynos-specific SPL (spl/smdk5250-spl.bin after building), and then the U-Boot image (u-boot-dtb.bin).

I also threw together a CrOS flashmap layout for it - though I don’t think that’s really necessary.

flashmap layout for U-Boot
fmap_signature="0x5f5f464d41505f5f" fmap_ver_major="1" fmap_ver_minor="0" fmap_base="0x0000000000000000" fmap_size="0x400000" fmap_name="FMAP" fmap_nareas="5"
area_offset="0x00000000" area_size="0x00200000" area_name="RO_SECTION" area_flags_raw="0x01" area_flags="static"
area_offset="0x00000000" area_size="0x00002000" area_name="BL1" area_flags_raw="0x01" area_flags="static"
area_offset="0x00002000" area_size="0x00004000" area_name="SPL" area_flags_raw="0x01" area_flags="static"
area_offset="0x00006000" area_size="0x001fa000" area_name="U_BOOT" area_flags_raw="0x01" area_flags="static"
area_offset="0x00200000" area_size="0x00001000" area_name="FMAP" area_flags_raw="0x01" area_flags="static"

I flashed this externally (CH341A + a clip), though flashing internally from CrOS (with the WP screw removed) should also work.

Here is a link to a pre-built image, ready to flash. No guarantees, etc.

Photos of the guts

Photos stolen from the CrOS developer wiki

Here’s the source page for these.